public class GemfirePersistentEntity<T> extends BasicPersistentEntity<T,GemfirePersistentProperty>
PersistentEntity
implementation adding custom GemFire persistent entity related metadata, such as the
Region
to which the entity is mapped, etc.GemfirePersistentProperty
,
BasicPersistentEntity
Constructor and Description |
---|
GemfirePersistentEntity(TypeInformation<T> information)
Constructs a new instance of
GemfirePersistentEntity initialized with the given TypeInformation
describing the domain object (entity) Class type. |
Modifier and Type | Method and Description |
---|---|
protected static String |
getAnnotationAttributeStringValue(Annotation annotation,
String attributeName) |
<T extends Annotation> |
getRegionAnnotation()
Returns the
Region Annotation used to annotate this PersistentEntity or null
if this PersistentEntity was not annotated with a Region Annotation . |
Class<? extends Annotation> |
getRegionAnnotationType()
Returns the
Class type of the Region Annotation used to annotate this entity
or null if this entity was not annotated with a Region Annotation . |
String |
getRegionName()
|
protected static Annotation |
resolveRegionAnnotation(Class<?> persistentEntityType) |
protected static String |
resolveRegionName(Class<?> persistentEntityType,
Annotation regionAnnotation) |
protected GemfirePersistentProperty |
returnPropertyIfBetterIdPropertyCandidateOrNull(GemfirePersistentProperty property) |
addAssociation, addPersistentProperty, doWithAssociations, doWithAssociations, doWithProperties, doWithProperties, findAnnotation, getEvaluationContext, getEvaluationContext, getFallbackIsNewStrategy, getIdentifierAccessor, getIdProperty, getName, getPersistenceConstructor, getPersistentProperties, getPersistentProperty, getPropertyAccessor, getPropertyPathAccessor, getType, getTypeAlias, getTypeInformation, getVersionProperty, hasIdProperty, hasVersionProperty, isAnnotationPresent, isConstructorArgument, isIdProperty, isImmutable, isNew, isVersionProperty, iterator, requiresPropertyPopulation, setEvaluationContextProvider, setPersistentPropertyAccessorFactory, verify
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
doWithAll, getPersistentProperty, getRequiredAnnotation, getRequiredIdProperty, getRequiredPersistentProperty, getRequiredVersionProperty
forEach, spliterator
public GemfirePersistentEntity(TypeInformation<T> information)
GemfirePersistentEntity
initialized with the given TypeInformation
describing the domain object (entity) Class
type.information
- TypeInformation
meta-data describing the domain object (entity) Class
type.IllegalArgumentException
- if the given TypeInformation
is null.TypeInformation
protected static Annotation resolveRegionAnnotation(Class<?> persistentEntityType)
protected static String resolveRegionName(Class<?> persistentEntityType, Annotation regionAnnotation)
protected static String getAnnotationAttributeStringValue(Annotation annotation, String attributeName)
public <T extends Annotation> T getRegionAnnotation()
Region
Annotation
used to annotate this PersistentEntity
or null
if this PersistentEntity
was not annotated with a Region
Annotation
.T
- concrete Class
type of the Region
Annotation
.Region
Annotation
used to annotate this PersistentEntity
or null
if this PersistentEntity
was not annotated with a Region
Annotation
.ClientRegion
,
LocalRegion
,
PartitionRegion
,
ReplicateRegion
,
Region
,
Annotation
public Class<? extends Annotation> getRegionAnnotationType()
Class
type of the Region
Annotation
used to annotate this entity
or null if this entity was not annotated with a Region
Annotation
.Class
type of the Region
Annotation
used to annotate this entity
or null if this entity was not annotated with a Region
Annotation
.Annotation.annotationType()
,
getRegionAnnotation()
@NonNull public String getRegionName()
name
of the Region
in which this PersistentEntity
will be stored.Region.getName()
protected GemfirePersistentProperty returnPropertyIfBetterIdPropertyCandidateOrNull(GemfirePersistentProperty property)
Copyright © 2011–2021 Pivotal Software, Inc.. All rights reserved.