T - The generic type@Internal public abstract class AbstractBeanIntrospection<T> extends java.lang.Object implements BeanIntrospection<T>
BeanIntrospection interface. This class is subclasses at compilation time by generated byte code and should not be used directly.| Modifier and Type | Field and Description | 
|---|---|
| protected AnnotationMetadata | annotationMetadata | 
| protected java.util.Map<java.lang.String,BeanProperty<T,java.lang.Object>> | beanProperties | 
| protected java.lang.Class<T> | beanType | 
CLASS_NAME_SUFFIX, EMPTY_METADATA, VALUE_MEMBEREMPTY| Modifier | Constructor and Description | 
|---|---|
| protected  | AbstractBeanIntrospection(java.lang.Class<T> beanType,
                         AnnotationMetadata annotationMetadata,
                         int propertyCount)Base class for bean instrospections. | 
| Modifier and Type | Method and Description | 
|---|---|
| protected void | addProperty(BeanProperty<T,java.lang.Object> property)Adds a property at a particular index of the internal array passed to the constructor. | 
| boolean | equals(java.lang.Object o) | 
| AnnotationMetadata | getAnnotationMetadata()Supplies the metadata. | 
| java.util.Collection<BeanProperty<T,java.lang.Object>> | getBeanProperties() | 
| java.lang.Class<T> | getBeanType()The bean type. | 
| java.util.Collection<BeanProperty<T,java.lang.Object>> | getIndexedProperties(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)Get all the bean properties annotated for the given annotation type. | 
| java.util.Optional<BeanProperty<T,java.lang.Object>> | getIndexedProperty(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType,
                  java.lang.String annotationValue)Get all the bean properties annotated for the given type. | 
| java.util.Optional<BeanProperty<T,java.lang.Object>> | getProperty(java.lang.String name)Obtain a property by name. | 
| int | hashCode() | 
| protected void | indexProperty(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType,
             java.lang.String propertyName)Used to produce an index for particular annotation type. | 
| protected void | indexProperty(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType,
             java.lang.String propertyName,
             java.lang.String annotationValue)Used to produce an index for particular annotation type. | 
| T | instantiate(boolean strictNullable,
           java.lang.Object... arguments)Instantiates an instance of the bean, throwing an exception is instantiation is not possible. | 
| protected abstract T | instantiateInternal(java.lang.Object[] arguments)Reflection free bean instantiation implementation for the given arguments. | 
| java.lang.String | toString() | 
clone, finalize, getClass, notify, notifyAll, wait, wait, waitgetConstructorArguments, getIndexedProperty, getIntrospection, getProperty, getPropertyNames, getRequiredProperty, instantiate, instantiatebooleanValue, booleanValue, booleanValue, booleanValue, classValue, classValue, classValue, classValue, classValues, classValues, classValues, classValues, doubleValue, doubleValue, doubleValue, enumValue, enumValue, enumValue, enumValue, enumValues, enumValues, enumValues, enumValues, findAnnotation, findAnnotation, findDeclaredAnnotation, findDeclaredAnnotation, getAnnotation, getAnnotation, getAnnotationNameByStereotype, getAnnotationNameByStereotype, getAnnotationNames, getAnnotationNamesByStereotype, getAnnotationNamesByStereotype, getAnnotationType, getAnnotationTypeByStereotype, getAnnotationTypeByStereotype, getAnnotationTypesByStereotype, getAnnotationValuesByType, getDeclaredAnnotation, getDeclaredAnnotation, getDeclaredAnnotationNameByStereotype, getDeclaredAnnotationNames, getDeclaredAnnotationNamesByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationValuesByType, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValues, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValues, getValues, hasAnnotation, hasAnnotation, hasDeclaredAnnotation, hasDeclaredAnnotation, hasDeclaredStereotype, hasDeclaredStereotype, hasDeclaredStereotype, hasSimpleAnnotation, hasSimpleDeclaredAnnotation, hasStereotype, hasStereotype, hasStereotype, hasStereotype, intValue, intValue, intValue, isAnnotationPresent, isDeclaredAnnotationPresent, isEmpty, isFalse, isFalse, isPresent, isPresent, isTrue, isTrue, longValue, longValue, stringValue, stringValue, stringValue, stringValue, stringValues, stringValues, synthesize, synthesizeAll, synthesizeAnnotationsByType, synthesizeDeclared, synthesizeDeclared, synthesizeDeclaredAnnotationsByTypeprotected final AnnotationMetadata annotationMetadata
protected final java.lang.Class<T> beanType
protected final java.util.Map<java.lang.String,BeanProperty<T,java.lang.Object>> beanProperties
protected AbstractBeanIntrospection(@NonNull
                                    java.lang.Class<T> beanType,
                                    @Nullable
                                    AnnotationMetadata annotationMetadata,
                                    int propertyCount)
beanType - The bean typeannotationMetadata - The annotation metadatapropertyCount - The property count@NonNull public java.util.Optional<BeanProperty<T,java.lang.Object>> getIndexedProperty(@NonNull java.lang.Class<? extends java.lang.annotation.Annotation> annotationType, @NonNull java.lang.String annotationValue)
BeanIntrospectiongetIndexedProperty in interface BeanIntrospection<T>annotationType - The annotation typeannotationValue - The annotation valueIntrospected.indexed()@NonNull public T instantiate(boolean strictNullable, java.lang.Object... arguments) throws InstantiationException
BeanIntrospectioninstantiate in interface BeanIntrospection<T>strictNullable - If true, require null parameters to be annotated with a nullable annotationarguments - The arguments required to instantiate bean. Should match the types returned by BeanIntrospection.getConstructorArguments()InstantiationException - If the bean cannot be instantiated.@NonNull public java.util.Optional<BeanProperty<T,java.lang.Object>> getProperty(@NonNull java.lang.String name)
BeanIntrospectiongetProperty in interface BeanIntrospection<T>name - The name of the property@NonNull public java.util.Collection<BeanProperty<T,java.lang.Object>> getIndexedProperties(@NonNull java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
BeanIntrospectionIntrospected.indexed() by the given annotation,
 then it will be included in the resulting list.getIndexedProperties in interface BeanIntrospection<T>annotationType - The annotation typeIntrospected.indexed()public AnnotationMetadata getAnnotationMetadata()
AnnotationMetadataProviderAnnotationMetadata.EMPTY_METADATA.getAnnotationMetadata in interface AnnotationMetadataProviderAnnotationMetadata@NonNull public java.util.Collection<BeanProperty<T,java.lang.Object>> getBeanProperties()
getBeanProperties in interface BeanIntrospection<T>@NonNull public java.lang.Class<T> getBeanType()
BeanIntrospectiongetBeanType in interface BeanIntrospection<T>@Internal protected abstract T instantiateInternal(java.lang.Object[] arguments)
arguments - The arguments@Internal protected final void addProperty(@NonNull BeanProperty<T,java.lang.Object> property)
property - The property.@Internal protected final void indexProperty(@NonNull java.lang.Class<? extends java.lang.annotation.Annotation> annotationType, @NonNull java.lang.String propertyName)
addProperty(BeanProperty) if required.annotationType - The annotation typepropertyName - The property name@Internal protected final void indexProperty(@NonNull java.lang.Class<? extends java.lang.annotation.Annotation> annotationType, @NonNull java.lang.String propertyName, @NonNull java.lang.String annotationValue)
addProperty(BeanProperty) if required.annotationType - The annotation typepropertyName - The property nameannotationValue - The annotation valuepublic boolean equals(java.lang.Object o)
equals in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Objectpublic java.lang.String toString()
toString in class java.lang.Object