public class BasicCassandraPersistentProperty extends AnnotationBasedPersistentProperty<CassandraPersistentProperty> implements CassandraPersistentProperty, ApplicationContextAware
AnnotationBasedPersistentProperty
implementation.isIdProperty, isVersionProperty
isIdProperty, isVersionProperty
CassandraPersistentProperty.PropertyToFieldNameConverter
Modifier and Type | Field and Description |
---|---|
protected List<CqlIdentifier> |
columnNames
An unmodifiable list of this property's column names.
|
protected ApplicationContext |
context |
protected List<CqlIdentifier> |
explicitColumnNames
An unmodifiable list of this property's explicitly set column names.
|
protected Boolean |
forceQuote
Whether this property has been explicitly instructed to force quote column names.
|
protected StandardEvaluationContext |
spelContext |
association, field, information, name, owner, propertyDescriptor, rawType
Constructor and Description |
---|
BasicCassandraPersistentProperty(Field field,
PropertyDescriptor propertyDescriptor,
CassandraPersistentEntity<?> owner,
CassandraSimpleTypeHolder simpleTypeHolder)
Creates a new
BasicCassandraPersistentProperty . |
BasicCassandraPersistentProperty(Field field,
PropertyDescriptor propertyDescriptor,
CassandraPersistentEntity<?> owner,
CassandraSimpleTypeHolder simpleTypeHolder,
UserTypeResolver userTypeResolver)
Creates a new
BasicCassandraPersistentProperty . |
Modifier and Type | Method and Description |
---|---|
protected void |
addCompositePrimaryKeyColumnNames(CassandraPersistentEntity<?> compositePrimaryKeyEntity,
List<CqlIdentifier> columnNames) |
protected Association<CassandraPersistentProperty> |
createAssociation() |
protected CqlIdentifier |
createColumnName(String defaultName,
String overriddenName,
boolean forceQuote) |
protected List<CqlIdentifier> |
determineColumnNames() |
protected void |
ensureTypeArguments(int args,
int expected) |
Association<CassandraPersistentProperty> |
getAssociation() |
CqlIdentifier |
getColumnName()
The name of the single column to which the property is persisted.
|
List<CqlIdentifier> |
getColumnNames()
The names of the columns to which the property is persisted if this is a composite primary key property.
|
CassandraPersistentEntity<?> |
getCompositePrimaryKeyEntity()
Returns a
CassandraPersistentEntity representing the composite primary key class of this entity, or null if
this class does not use a composite primary key. |
List<CassandraPersistentProperty> |
getCompositePrimaryKeyProperties()
Gets the list of composite primary key properties that this composite primary key field is a placeholder for.
|
Class<?> |
getCompositePrimaryKeyType() |
TypeInformation<?> |
getCompositePrimaryKeyTypeInformation()
Returns a
TypeInformation representing the type of the composite primary key class of this entity, or null
if this class does not use a composite primary key. |
com.datastax.driver.core.DataType |
getDataType()
The column's data type.
|
protected com.datastax.driver.core.DataType |
getDataTypeFor(Class<?> javaType) |
protected com.datastax.driver.core.DataType |
getDataTypeFor(com.datastax.driver.core.DataType.Name dataTypeName) |
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 |
isIndexed()
Whether the property has a secondary index on this column.
|
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
|
void |
setApplicationContext(ApplicationContext context) |
void |
setColumnName(CqlIdentifier columnName)
If this property is mapped with a single column, set the column name to the given
CqlIdentifier . |
void |
setColumnNames(List<CqlIdentifier> columnNames)
Sets this property's column names to the collection given.
|
void |
setForceQuote(boolean forceQuote)
Whether to force-quote the column names of this property.
|
findAnnotation, findPropertyOrOwnerAnnotation, getSpelExpression, isAnnotationPresent, isAssociation, isIdProperty, isTransient, isVersionProperty, isWritable, toString, usePropertyAccess
equals, getActualType, getComponentType, getField, getGetter, getMapValueType, getName, getPersistentEntityType, getRawType, getSetter, getType, getTypeInformation, hashCode, isArray, isCollectionLike, isEntity, isMap
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
findAnnotation, findPropertyOrOwnerAnnotation, getActualType, getComponentType, getField, getGetter, getMapValueType, getName, getPersistentEntityType, getRawType, getSetter, getSpelExpression, getType, getTypeInformation, isAnnotationPresent, isArray, isAssociation, isCollectionLike, isEntity, isIdProperty, isMap, isTransient, isVersionProperty, isWritable, usePropertyAccess
protected ApplicationContext context
protected Boolean forceQuote
protected List<CqlIdentifier> columnNames
protected List<CqlIdentifier> explicitColumnNames
protected StandardEvaluationContext spelContext
public BasicCassandraPersistentProperty(Field field, PropertyDescriptor propertyDescriptor, CassandraPersistentEntity<?> owner, CassandraSimpleTypeHolder simpleTypeHolder)
BasicCassandraPersistentProperty
.field
- the actual Field
in the domain entity corresponding to this persistent entity.propertyDescriptor
- a PropertyDescriptor
for the corresponding property in the domain entity.owner
- the containing object or CassandraPersistentEntity
of this persistent property.simpleTypeHolder
- mapping of Java [simple|wrapper] types to Cassandra data types.public BasicCassandraPersistentProperty(Field field, PropertyDescriptor propertyDescriptor, CassandraPersistentEntity<?> owner, CassandraSimpleTypeHolder simpleTypeHolder, UserTypeResolver userTypeResolver)
BasicCassandraPersistentProperty
.field
- the actual Field
in the domain entity corresponding to this persistent entity.propertyDescriptor
- a PropertyDescriptor
for the corresponding property in the domain entity.owner
- the containing object or CassandraPersistentEntity
of this persistent property.simpleTypeHolder
- mapping of Java [simple|wrapper] types to Cassandra data types.userTypeResolver
- resolver for user-defined types.public void setApplicationContext(ApplicationContext context)
setApplicationContext
in interface ApplicationContextAware
public CassandraPersistentEntity<?> getOwner()
getOwner
in interface CassandraPersistentProperty
getOwner
in interface PersistentProperty<CassandraPersistentProperty>
getOwner
in class AbstractPersistentProperty<CassandraPersistentProperty>
public boolean isCompositePrimaryKey()
CassandraPersistentProperty
isCompositePrimaryKey
in interface CassandraPersistentProperty
public Class<?> getCompositePrimaryKeyType()
public TypeInformation<?> getCompositePrimaryKeyTypeInformation()
CassandraPersistentProperty
TypeInformation
representing the type of the composite primary key class of this entity, or null
if this class does not use a composite primary key.getCompositePrimaryKeyTypeInformation
in interface CassandraPersistentProperty
public CqlIdentifier getColumnName()
CassandraPersistentProperty
IllegalStateException
if this property is
mapped to multiple columns.getColumnName
in interface CassandraPersistentProperty
public Ordering getPrimaryKeyOrdering()
CassandraPersistentProperty
getPrimaryKeyOrdering
in interface CassandraPersistentProperty
public com.datastax.driver.core.DataType getDataType()
CassandraPersistentProperty
getDataType
in interface CassandraPersistentProperty
DataType
CassandraType
public boolean isIndexed()
CassandraPersistentProperty
isIndexed
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()
protected com.datastax.driver.core.DataType getDataTypeFor(com.datastax.driver.core.DataType.Name dataTypeName)
protected com.datastax.driver.core.DataType getDataTypeFor(Class<?> javaType)
protected void ensureTypeArguments(int args, int expected)
public List<CqlIdentifier> getColumnNames()
CassandraPersistentProperty
getColumnNames
in interface CassandraPersistentProperty
protected List<CqlIdentifier> determineColumnNames()
protected CqlIdentifier createColumnName(String defaultName, String overriddenName, boolean forceQuote)
protected void addCompositePrimaryKeyColumnNames(CassandraPersistentEntity<?> compositePrimaryKeyEntity, List<CqlIdentifier> columnNames)
public void setColumnName(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
public void setColumnNames(List<CqlIdentifier> columnNames)
CassandraPersistentProperty
null
elements.setColumnNames
in interface CassandraPersistentProperty
public void setForceQuote(boolean forceQuote)
CassandraPersistentProperty
setForceQuote
in interface CassandraPersistentProperty
CassandraPersistentProperty.getColumnNames()
public List<CassandraPersistentProperty> getCompositePrimaryKeyProperties()
CassandraPersistentProperty
getCompositePrimaryKeyProperties
in interface CassandraPersistentProperty
public CassandraPersistentEntity<?> getCompositePrimaryKeyEntity()
CassandraPersistentProperty
CassandraPersistentEntity
representing the composite primary key class of this entity, or null if
this class does not use a composite primary key.getCompositePrimaryKeyEntity
in interface CassandraPersistentProperty
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
.Copyright © 2011–2018 Pivotal Software, Inc.. All rights reserved.