@Override public void inject(final Targets targets) { targets.forEachTarget(target -> { final Class targetType = target.resolveType(); final String baseName = baseNameOf(targetType); final ParamManager madvocPetiteParamManager = madpc.paramManager(); final String[] params = madvocPetiteParamManager.filterParametersForBeanName(baseName, true); for (final String param : params) { final Object value = madvocPetiteParamManager.get(param); final String propertyName = param.substring(baseName.length() + 1); target.writeValue(propertyName, value, false); } }); }
/** * Defines new parameter. Parameters with same name will be replaced. */ public void defineParameter(final String name, final Object value) { paramManager.put(name, value); }
/** * Injects all parameters. */ public void injectParams(final ParamManager paramManager, final boolean implicitParamInjection) { if (beanDefinition.name == null) { return; } if (implicitParamInjection) { // implicit final int len = beanDefinition.name.length() + 1; for (final String param : beanDefinition.params) { final Object value = paramManager.get(param); final String destination = param.substring(len); try { BeanUtil.declared.setProperty(bean, destination, value); } catch (Exception ex) { throw new PetiteException("Unable to set parameter: '" + param + "' to bean: " + beanDefinition.name, ex); } } } // explicit for (final ValueInjectionPoint pip : beanDefinition.values) { final String value = paramManager.parseKeyTemplate(pip.valueTemplate); try { BeanUtil.declared.setProperty(bean, pip.property, value); } catch (Exception ex) { throw new PetiteException("Unable to set value for: '" + pip.valueTemplate + "' to bean: " + beanDefinition.name, ex); } } }
def.values = paramManager.resolveParamInjectionPoints(def.type); def.params = paramManager.filterParametersForBeanName(def.name, petiteConfig.getResolveReferenceParameters());
/** * Returns defined parameter. */ public Object getParameter(final String name) { return paramManager.get(name); }
protected PetiteBeans(final PetiteConfig petiteConfig) { this.petiteConfig = petiteConfig; this.referencesResolver = new ReferencesResolver(petiteConfig); this.petiteResolvers = new PetiteResolvers(referencesResolver); this.paramManager = new ParamManager(); this.annotationResolver = new AnnotationResolver(); }
/** * Injects all parameters. */ public void injectParams(final ParamManager paramManager, final boolean implicitParamInjection) { if (beanDefinition.name == null) { return; } if (implicitParamInjection) { // implicit final int len = beanDefinition.name.length() + 1; for (final String param : beanDefinition.params) { final Object value = paramManager.get(param); final String destination = param.substring(len); try { BeanUtil.declared.setProperty(bean, destination, value); } catch (Exception ex) { throw new PetiteException("Unable to set parameter: '" + param + "' to bean: " + beanDefinition.name, ex); } } } // explicit for (final ValueInjectionPoint pip : beanDefinition.values) { final String value = paramManager.parseKeyTemplate(pip.valueTemplate); try { BeanUtil.declared.setProperty(bean, pip.property, value); } catch (Exception ex) { throw new PetiteException("Unable to set value for: '" + pip.valueTemplate + "' to bean: " + beanDefinition.name, ex); } } }
def.values = paramManager.resolveParamInjectionPoints(def.type); def.params = paramManager.filterParametersForBeanName(def.name, petiteConfig.getResolveReferenceParameters());
/** * Returns defined parameter. */ public Object getParameter(final String name) { return paramManager.get(name); }
protected PetiteBeans(final PetiteConfig petiteConfig) { this.petiteConfig = petiteConfig; this.referencesResolver = new ReferencesResolver(petiteConfig); this.petiteResolvers = new PetiteResolvers(referencesResolver); this.paramManager = new ParamManager(); this.annotationResolver = new AnnotationResolver(); }
/** * Defines new parameter. Parameters with same name will be replaced. */ public void defineParameter(final String name, final Object value) { paramManager.put(name, value); }