public class BasicCassandraPersistentProperty extends AnnotationBasedPersistentProperty<CassandraPersistentProperty> implements CassandraPersistentProperty, ApplicationContextAware
AnnotationBasedPersistentProperty
implementation.Constructor and Description |
---|
BasicCassandraPersistentProperty(Property property,
CassandraPersistentEntity<?> owner,
SimpleTypeHolder simpleTypeHolder)
Create a new
BasicCassandraPersistentProperty . |
Modifier and Type | Method and Description |
---|---|
protected Association<CassandraPersistentProperty> |
createAssociation() |
AnnotatedType |
findAnnotatedType(Class<? extends Annotation> annotationType)
Find an
AnnotatedType by annotationType derived from the property type. |
Association<CassandraPersistentProperty> |
getAssociation() |
com.datastax.oss.driver.api.core.CqlIdentifier |
getColumnName()
The name of the single column to which the property is persisted.
|
Integer |
getOrdinal()
The name of the element ordinal to which the property is persisted when the owning type is a mapped tuple.
|
CassandraPersistentEntity<?> |
getOwner() |
Ordering |
getPrimaryKeyOrdering()
The ordering (ascending or descending) for the column.
|
boolean |
isClusterKeyColumn()
Whether the property is a cluster key column.
|
boolean |
isCompositePrimaryKey()
Whether the property is a composite primary key.
|
boolean |
isMapLike()
Returns whether the property is a
Map . |
boolean |
isPartitionKeyColumn()
Whether the property is a partition key column.
|
boolean |
isPrimaryKeyColumn()
Whether the property is a partition key column or a cluster key column
|
boolean |
isStaticColumn()
Whether the property maps to a static column.
|
void |
setApplicationContext(ApplicationContext context) |
void |
setColumnName(com.datastax.oss.driver.api.core.CqlIdentifier columnName)
If this property is mapped with a single column, set the column name to the given
CqlIdentifier . |
void |
setForceQuote(boolean forceQuote)
Whether to force-quote the column names of this property.
|
void |
setNamingStrategy(NamingStrategy namingStrategy)
Set the
NamingStrategy to use. |
findAnnotation, findPropertyOrOwnerAnnotation, getAssociationTargetType, getSpelExpression, isAnnotationPresent, isAssociation, isIdProperty, isTransient, isVersionProperty, isWritable, toString, usePropertyAccess
equals, getActualType, getComponentType, getField, getGetter, getMapValueType, getName, getPersistentEntityTypes, getProperty, getRawType, getSetter, getType, getTypeInformation, getWither, hashCode, isArray, isCollectionLike, isEntity, isImmutable, isMap
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
getRequiredColumnName, getRequiredOrdinal, isEmbedded, setColumnName
findAnnotation, findPropertyOrOwnerAnnotation, getAccessorForOwner, getActualType, getAssociationTargetType, getComponentType, getField, getGetter, getMapValueType, getName, getPersistentEntityTypes, getRawType, getRequiredAnnotation, getRequiredAssociation, getRequiredField, getRequiredGetter, getRequiredSetter, getRequiredWither, getSetter, getSpelExpression, getType, getTypeInformation, getWither, hasActualTypeAnnotation, isAnnotationPresent, isArray, isAssociation, isCollectionLike, isEntity, isIdProperty, isImmutable, isMap, isTransient, isVersionProperty, isWritable, usePropertyAccess
public BasicCassandraPersistentProperty(Property property, CassandraPersistentEntity<?> owner, SimpleTypeHolder simpleTypeHolder)
BasicCassandraPersistentProperty
.property
- the actual Property
in the domain entity corresponding to this persistent entity.owner
- the containing object or CassandraPersistentEntity
of this persistent property.simpleTypeHolder
- mapping of Java [simple|wrapper] types to Cassandra data types.public void setApplicationContext(ApplicationContext context)
setApplicationContext
in interface ApplicationContextAware
public CassandraPersistentEntity<?> getOwner()
getOwner
in interface PersistentProperty<CassandraPersistentProperty>
getOwner
in class AbstractPersistentProperty<CassandraPersistentProperty>
public com.datastax.oss.driver.api.core.CqlIdentifier getColumnName()
CassandraPersistentProperty
getColumnName
in interface CassandraPersistentProperty
@Nullable public Integer getOrdinal()
CassandraPersistentProperty
getOrdinal
in interface CassandraPersistentProperty
@Nullable public Ordering getPrimaryKeyOrdering()
CassandraPersistentProperty
getPrimaryKeyOrdering
in interface CassandraPersistentProperty
public boolean isCompositePrimaryKey()
CassandraPersistentProperty
isCompositePrimaryKey
in interface CassandraPersistentProperty
public boolean isClusterKeyColumn()
CassandraPersistentProperty
isClusterKeyColumn
in interface CassandraPersistentProperty
public boolean isPartitionKeyColumn()
CassandraPersistentProperty
isPartitionKeyColumn
in interface CassandraPersistentProperty
public boolean isPrimaryKeyColumn()
CassandraPersistentProperty
isPrimaryKeyColumn
in interface CassandraPersistentProperty
CassandraPersistentProperty.isPartitionKeyColumn()
,
CassandraPersistentProperty.isClusterKeyColumn()
public boolean isStaticColumn()
CassandraPersistentProperty
isStaticColumn
in interface CassandraPersistentProperty
public void setColumnName(com.datastax.oss.driver.api.core.CqlIdentifier columnName)
CassandraPersistentProperty
CqlIdentifier
. If this
property is not mapped by a single column, throws IllegalStateException
. If the given column name is null,
IllegalArgumentException
is thrown.setColumnName
in interface CassandraPersistentProperty
columnName
- must not be null.public void setNamingStrategy(NamingStrategy namingStrategy)
NamingStrategy
to use.namingStrategy
- must not be null.public void setForceQuote(boolean forceQuote)
CassandraPersistentProperty
setForceQuote
in interface CassandraPersistentProperty
forceQuote
- true to enforce quoting.CassandraPersistentProperty.getColumnName()
,
CqlIdentifier.fromInternal(String)
public Association<CassandraPersistentProperty> getAssociation()
getAssociation
in interface PersistentProperty<CassandraPersistentProperty>
getAssociation
in class AbstractPersistentProperty<CassandraPersistentProperty>
protected Association<CassandraPersistentProperty> createAssociation()
createAssociation
in class AbstractPersistentProperty<CassandraPersistentProperty>
public boolean isMapLike()
CassandraPersistentProperty
Map
.isMapLike
in interface CassandraPersistentProperty
Map
.public AnnotatedType findAnnotatedType(Class<? extends Annotation> annotationType)
CassandraPersistentProperty
AnnotatedType
by annotationType
derived from the property type. Annotated type is looked up
by introspecting property field/accessors. Collection/Map-like types are introspected for type annotations within
type arguments.findAnnotatedType
in interface CassandraPersistentProperty
annotationType
- must not be null.Copyright © 2011–2021 Pivotal Software, Inc.. All rights reserved.