-
- All Superinterfaces:
ModelElement
- All Known Implementing Classes:
IndexImpl
public interface Index extends ModelElement
Describes a database index.- Author:
- harald
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description StringcreateDatabaseIndexName(Entity entity)Creates the database index name for given entity.List<IndexAttribute>getAttributes()Gets the index attributes.StringgetComment()Gets the comment.EntitygetEntity()Gets the entity this index belongs to.StringgetFilterCondition()Gets the optional filter condition.booleanisUnique()Returns whether the index is unique.StringsqlCreateIndex(Backend backend, Entity entity)Creates the index creation sql code.voidvalidate()Validates the index.-
Methods inherited from interface org.tentackle.model.ModelElement
getName, getOrdinal, getParent, getSourceInfo
-
-
-
-
Method Detail
-
getEntity
Entity getEntity()
Gets the entity this index belongs to.- Returns:
- the entity
-
createDatabaseIndexName
String createDatabaseIndexName(Entity entity)
Creates the database index name for given entity.- Parameters:
entity- the entity- Returns:
- the effective sql name
-
getComment
String getComment()
Gets the comment.- Returns:
- the comment
-
isUnique
boolean isUnique()
Returns whether the index is unique.- Returns:
- true if unique, else non-unique
-
getFilterCondition
String getFilterCondition()
Gets the optional filter condition.- Returns:
- the condition, null if none
-
getAttributes
List<IndexAttribute> getAttributes()
Gets the index attributes.- Returns:
- the attributes
-
validate
void validate() throws ModelExceptionValidates the index.- Throws:
ModelException- if validation failed
-
-