TEntity - The type of the entity.public class EntitySchema<TEntity> extends Object
TrackingArchive via the IEntityArchiveDescriptor interface on
 an EntityDescriptor.| Constructor and Description | 
|---|
EntitySchema(Class<?> entityIdentifierType)
Initializes a new instance. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
<T> void | 
addProperty(TypeLiteral<T> typeLiteralT,
           String name,
           EntityTransactedPropertyGetter<TEntity,T> transactedPropertyGetter)
Adds a  
TransactedProperty to the schema. | 
Class<?> | 
getEntityIdentifierType()
Gets the type of the  
EntityIdentifier (get) of this entity type. | 
List<EntitySchemaProperty<TEntity>> | 
getProperties()
Gets the collection of properties in this schema. 
 | 
int | 
getPropertyCount()
Gets the number of properties in this schema. 
 | 
public EntitySchema(@Nonnull Class<?> entityIdentifierType)
entityIdentifierType - The type of the EntityIdentifier (get) of this entity type.ArgumentNullException - Thrown when entityIdentifierType is null.public final <T> void addProperty(TypeLiteral<T> typeLiteralT, @Nonnull String name, @Nonnull EntityTransactedPropertyGetter<TEntity,T> transactedPropertyGetter)
TransactedProperty to the schema.T - The type of the property.typeLiteralT - A TypeLiteral object representing the generic type T.name - The name of the property.transactedPropertyGetter - A callback to use to obtain the TransactedProperty.ArgumentNullException - Thrown when name or transactedPropertyGetter is null.ArgumentException - Thrown when name is an empty string, or if a property with the same name already exists in the schema.@Nonnull public final Class<?> getEntityIdentifierType()
EntityIdentifier (get) of this entity type.@Nonnull public final List<EntitySchemaProperty<TEntity>> getProperties()
public final int getPropertyCount()