BeanReferences[] references = referencesResolver.readAllReferencesFromAnnotation(method);
BeanReferences reference = referencesResolver.readReferenceFromAnnotation(propertyDescriptor); continue; } else { reference = referencesResolver.buildDefaultReference(propertyDescriptor);
@Test void testResolveReferenceFromValues_invalidNumberOfRefs() { Arrays.asList( method(Revolver.class, "someArguments"), ctor(Revolver.SomeArguments.class) ).forEach(methodOrCtor -> { assertThrows(PetiteException.class, () -> { referencesResolver.resolveReferenceFromValues(methodOrCtor, "i1"); }); }); }
/** * Takes given parameters references and returns reference set for given method or constructor. */ public BeanReferences[] resolveReferenceFromValues(final Executable methodOrCtor, final String... parameterReferences) { BeanReferences[] references = convertRefToReferences(parameterReferences); if (references == null || references.length == 0) { references = buildDefaultReferences(methodOrCtor); } if (methodOrCtor.getParameterTypes().length != references.length) { throw new PetiteException("Different number of method parameters and references for: " + methodOrCtor.getDeclaringClass().getName() + '#' + methodOrCtor.getName()); } removeAllDuplicateNames(references); return references; }
private BeanReferences[] updateReferencesWithDefaultsIfNeeded(final Executable methodOrCtor, BeanReferences[] references) { BeanReferences[] defaultReferences = buildDefaultReferences(methodOrCtor); if (references == null || references.length == 0) { references = defaultReferences; } if (methodOrCtor.getParameterTypes().length != references.length) { throw new PetiteException( "Different number of parameters and references for: " + methodOrCtor.getName()); } // apply default parameters for (int i = 0; i < references.length; i++) { BeanReferences parameterReferences = references[i]; if (parameterReferenceIsNotSet(parameterReferences)) { references[i] = defaultReferences[i]; } } return references; }
references = convertAnnValueToReferences(petiteInject.value()); String annotationValue = readAnnotationValue(petiteInject); references = updateReferencesWithDefaultsIfNeeded(methodOrCtor, references); removeAllDuplicateNames(references);
@Test void testFieldAnnotation_nothing() { BeanReferences refs = referencesResolver.readReferenceFromAnnotation(field(Revolver.class, "nothing")); assertEquals(null, refs); }
private BeanReferences updateReferencesWithDefaultsIfNeeded(final PropertyDescriptor propertyDescriptor, BeanReferences references) { if (references == null || references.isEmpty()) { references = buildDefaultReference(propertyDescriptor); } return references; }
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(); }
references = convertAnnValueToReferences(petiteInject.value()); String annotationValue = readAnnotationValue(petiteInject); references = updateReferencesWithDefaultsIfNeeded(methodOrCtor, references); removeAllDuplicateNames(references);
/** * Takes given parameters references and returns reference set for given method or constructor. */ public BeanReferences[] resolveReferenceFromValues(final Executable methodOrCtor, final String... parameterReferences) { BeanReferences[] references = convertRefToReferences(parameterReferences); if (references == null || references.length == 0) { references = buildDefaultReferences(methodOrCtor); } if (methodOrCtor.getParameterTypes().length != references.length) { throw new PetiteException("Different number of method parameters and references for: " + methodOrCtor.getDeclaringClass().getName() + '#' + methodOrCtor.getName()); } removeAllDuplicateNames(references); return references; }
private BeanReferences[] updateReferencesWithDefaultsIfNeeded(final Executable methodOrCtor, BeanReferences[] references) { BeanReferences[] defaultReferences = buildDefaultReferences(methodOrCtor); if (references == null || references.length == 0) { references = defaultReferences; } if (methodOrCtor.getParameterTypes().length != references.length) { throw new PetiteException( "Different number of parameters and references for: " + methodOrCtor.getName()); } // apply default parameters for (int i = 0; i < references.length; i++) { BeanReferences parameterReferences = references[i]; if (parameterReferenceIsNotSet(parameterReferences)) { references[i] = defaultReferences[i]; } } return references; }
@Test void testFieldAnnotation_withValue() { BeanReferences refs = referencesResolver.readReferenceFromAnnotation(field(Revolver.class, "valued")); assertEquals(1, refs.size()); assertEquals("inn", refs.name(0)); } @Test
/** * Resolves reference from given values. Returns bean reference of given value or defaults * if given name is blank. */ public BeanReferences resolveReferenceFromValue(final PropertyDescriptor propertyDescriptor, final String refName) { BeanReferences references; if (refName == null || refName.isEmpty()) { references = buildDefaultReference(propertyDescriptor); } else { references = BeanReferences.of(refName); } references = references.removeDuplicateNames(); return references; }
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(); }
BeanReferences[] ctorReferences = referencesResolver.readAllReferencesFromAnnotation(ctor); references = referencesResolver.readAllReferencesFromAnnotation(foundedCtor);
BeanReferences[] ref = referencesResolver.resolveReferenceFromValues(constructor, references);
BeanReferences reference = referencesResolver.readReferenceFromAnnotation(propertyDescriptor); continue; } else { reference = referencesResolver.buildDefaultReference(propertyDescriptor);
@Test void testFieldAnnotation_annotation() { BeanReferences refs = referencesResolver.readReferenceFromAnnotation(field(Revolver.class, "onlyAnnotation")); assertEquals(3, refs.size()); assertEquals("onlyAnnotation", refs.name(0)); assertEquals("string", refs.name(1)); assertEquals("java.lang.String", refs.name(2)); } @Test
private BeanReferences updateReferencesWithDefaultsIfNeeded(final PropertyDescriptor propertyDescriptor, BeanReferences references) { if (references == null || references.isEmpty()) { references = buildDefaultReference(propertyDescriptor); } return references; }