Class SourcePersistentProperty
java.lang.Object
io.micronaut.data.processor.model.SourcePersistentProperty
- All Implemented Interfaces:
io.micronaut.core.annotation.AnnotatedElement
,io.micronaut.core.annotation.AnnotationMetadata
,io.micronaut.core.annotation.AnnotationMetadataDelegate
,io.micronaut.core.annotation.AnnotationMetadataProvider
,io.micronaut.core.annotation.AnnotationSource
,io.micronaut.core.naming.Described
,io.micronaut.core.naming.Named
,PersistentElement
,PersistentProperty
,io.micronaut.inject.ast.annotation.MutableAnnotationMetadataDelegate<io.micronaut.inject.ast.Element>
,io.micronaut.inject.ast.Element
,io.micronaut.inject.ast.TypedElement
- Direct Known Subclasses:
SourceAssociation
@Internal
public class SourcePersistentProperty
extends Object
implements PersistentProperty, io.micronaut.inject.ast.TypedElement
Source code level implementation of
PersistentProperty
.- Since:
- 1.0.0
- Author:
- graemerocher
-
Field Summary
Fields inherited from interface io.micronaut.core.annotation.AnnotationMetadata
CLASS_NAME_SUFFIX, EMPTY_METADATA, VALUE_MEMBER
Fields inherited from interface io.micronaut.core.annotation.AnnotationSource
EMPTY
Fields inherited from interface io.micronaut.inject.ast.Element
EMPTY_ELEMENT_ARRAY
Fields inherited from interface io.micronaut.inject.ast.annotation.MutableAnnotationMetadataDelegate
EMPTY
-
Method Summary
Modifier and TypeMethodDescriptionboolean
getAlias()
The alias of the property if used in a query.io.micronaut.core.annotation.AnnotationMetadata
@Nullable String
Returns converter class name if present.@NonNull String
getName()
The name of the property.@NonNull PersistentEntity
getOwner()
Obtains the owner of this persistent property.@NonNull String
The persisted name is the fully qualified name including potential schema definitions.@NonNull io.micronaut.inject.ast.PropertyElement
@NonNull io.micronaut.inject.ast.ClassElement
getType()
@NonNull String
The type of the property.int
hashCode()
boolean
isAssignable
(@NonNull String type) Is the property assignable to the given type name.boolean
isEnum()
boolean
Whether the property can be set to null.boolean
boolean
isPublic()
toString()
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface io.micronaut.core.annotation.AnnotatedElement
isDeclaredNonNull, isDeclaredNullable, isNonNull, isNullable
Methods inherited from interface io.micronaut.core.annotation.AnnotationMetadata
enumValuesSet, enumValuesSet, getValues, hasDeclaredStereotype, hasEvaluatedExpressions, hasStereotypeNonRepeating, isAnnotationPresent, isDeclaredAnnotationPresent
Methods inherited from interface io.micronaut.core.annotation.AnnotationMetadataDelegate
booleanValue, booleanValue, booleanValue, booleanValue, classValue, classValue, classValue, classValue, classValues, classValues, classValues, classValues, copyAnnotationMetadata, doubleValue, doubleValue, doubleValue, enumValue, enumValue, enumValue, enumValue, enumValues, enumValues, enumValues, enumValues, findAnnotation, findAnnotation, findDeclaredAnnotation, findDeclaredAnnotation, findRepeatableAnnotation, findRepeatableAnnotation, getAnnotation, getAnnotation, getAnnotationNameByStereotype, getAnnotationNameByStereotype, getAnnotationNames, getAnnotationNamesByStereotype, getAnnotationNamesByStereotype, getAnnotationType, getAnnotationType, getAnnotationTypeByStereotype, getAnnotationTypeByStereotype, getAnnotationTypesByStereotype, getAnnotationTypesByStereotype, getAnnotationTypesByStereotype, getAnnotationValuesByName, getAnnotationValuesByStereotype, getAnnotationValuesByType, getDeclaredAnnotation, getDeclaredAnnotation, getDeclaredAnnotationNameByStereotype, getDeclaredAnnotationNames, getDeclaredAnnotationNamesByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationValuesByName, getDeclaredAnnotationValuesByType, getDeclaredMetadata, getDeclaredStereotypeAnnotationNames, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValues, getStereotypeAnnotationNames, getTargetAnnotationMetadata, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValues, getValues, hasAnnotation, hasAnnotation, hasDeclaredAnnotation, hasDeclaredAnnotation, hasDeclaredStereotype, hasDeclaredStereotype, hasDeclaredStereotype, hasPropertyExpressions, hasSimpleAnnotation, hasSimpleDeclaredAnnotation, hasStereotype, hasStereotype, hasStereotype, hasStereotype, intValue, intValue, intValue, isAnnotationPresent, isDeclaredAnnotationPresent, isEmpty, isFalse, isFalse, isPresent, isPresent, isRepeatableAnnotation, isRepeatableAnnotation, isTrue, isTrue, longValue, longValue, stringValue, stringValue, stringValue, stringValue, stringValues, stringValues, stringValues, stringValues, synthesize, synthesize, synthesizeAll, synthesizeAnnotationsByType, synthesizeDeclared, synthesizeDeclared, synthesizeDeclared, synthesizeDeclaredAnnotationsByType
Methods inherited from interface io.micronaut.inject.ast.Element
annotate, annotate, annotate, annotate, annotate, getDescription, getDescription, getDocumentation, getModifiers, getSimpleName, isAbstract, isFinal, isPackagePrivate, isPrivate, isStatic, isSynthetic, removeAnnotation, removeAnnotation, removeAnnotationIf, removeStereotype, removeStereotype, withAnnotationMetadata
Methods inherited from interface io.micronaut.data.model.PersistentProperty
getCapitalizedName, getCapitilizedName, getConverter, getJsonDataType, isAssignable, isAutoPopulated, isConstructorArgument, isGenerated, isReadOnly, isRequired
Methods inherited from interface io.micronaut.inject.ast.TypedElement
getArrayDimensions, getGenericType, isArray, isPrimitive, isVoid
-
Method Details
-
getAlias
Description copied from interface:PersistentProperty
The alias of the property if used in a query.- Specified by:
getAlias
in interfacePersistentProperty
- Returns:
- The alias.
-
isOptional
public boolean isOptional()Description copied from interface:PersistentProperty
Whether the property can be set to null.- Specified by:
isOptional
in interfacePersistentProperty
- Returns:
- True if it can
-
isEnum
public boolean isEnum()- Specified by:
isEnum
in interfacePersistentProperty
- Returns:
- Returns whether the property is an enum.
-
equals
-
getDataType
- Specified by:
getDataType
in interfacePersistentProperty
- Returns:
- The data type
-
hashCode
public int hashCode() -
getAnnotationMetadata
public io.micronaut.core.annotation.AnnotationMetadata getAnnotationMetadata()- Specified by:
getAnnotationMetadata
in interfaceio.micronaut.core.annotation.AnnotationMetadataProvider
-
getName
Description copied from interface:PersistentProperty
The name of the property.- Specified by:
getName
in interfaceio.micronaut.inject.ast.Element
- Specified by:
getName
in interfaceio.micronaut.core.naming.Named
- Specified by:
getName
in interfacePersistentProperty
- Returns:
- The property name
-
isProtected
public boolean isProtected()- Specified by:
isProtected
in interfaceio.micronaut.inject.ast.Element
-
isPublic
public boolean isPublic()- Specified by:
isPublic
in interfaceio.micronaut.inject.ast.Element
-
getNativeType
- Specified by:
getNativeType
in interfaceio.micronaut.inject.ast.Element
-
getTypeName
Description copied from interface:PersistentProperty
The type of the property.- Specified by:
getTypeName
in interfacePersistentProperty
- Returns:
- The property type
-
getOwner
Description copied from interface:PersistentProperty
Obtains the owner of this persistent property.- Specified by:
getOwner
in interfacePersistentProperty
- Returns:
- The owner
-
isAssignable
Description copied from interface:PersistentProperty
Is the property assignable to the given type name.- Specified by:
isAssignable
in interfacePersistentProperty
- Parameters:
type
- The type name- Returns:
- True if it is
-
getPropertyElement
@NonNull public @NonNull io.micronaut.inject.ast.PropertyElement getPropertyElement()- Returns:
- The property element.
-
getType
@NonNull public @NonNull io.micronaut.inject.ast.ClassElement getType()- Specified by:
getType
in interfaceio.micronaut.inject.ast.TypedElement
-
getPersistedName
Description copied from interface:PersistentElement
The persisted name is the fully qualified name including potential schema definitions.- Specified by:
getPersistedName
in interfacePersistentElement
- Returns:
- The persisted name.
-
getConverterClassName
Returns converter class name if present.- Returns:
- the converter's class name
-
toString
-