public interface IModelMetaData
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
modelFileName
Constant name of the model meta-data file, enRoleModel.xml.
|
static java.lang.String |
NAME |
| Modifier and Type | Method and Description |
|---|---|
void |
defineClass(java.lang.Class cl)
Defines a new class in the data model.
|
void |
defineEntity(java.lang.String cl,
java.lang.String auxClassName,
java.lang.String category)
Defines a relationship for a given class.
|
void |
defineRelationship(java.lang.Class cl,
java.lang.String relationshipName,
java.lang.Class rel)
Defines a relationship for a given class.
|
void |
defineRelationship(java.lang.String cl,
java.lang.String relationshipName,
java.lang.Class rel)
Defines a relationship for a given class.
|
java.util.Collection<java.lang.String> |
getClasses()
Returns the names of all classes defined for the data model.
|
java.lang.Class |
getEntity(java.util.Collection<java.lang.String> objClasses)
Retrieves the entity class with the given set of LDAP auxiliary class
names.
|
java.lang.String |
getEntityCategory(java.util.Collection<java.lang.String> objClasses)
Retrieves the entity category with the given set of LDAP auxiliary class
names.
|
java.lang.Class |
getRelationship(java.lang.Class cl,
java.lang.String relationshipName)
Retrieves the relationship with the given name for a given class.
|
java.util.Set<java.lang.String> |
getSubjectCategories(java.lang.String relationshipName)
Returns a set of category names, whose implementation classes support the
given relationship.
|
java.util.Collection<java.lang.String> |
getSupportedRelationships(java.lang.Class cl)
Returns the names of the supported relationships for the given class.
|
void |
loadTable()
Loads the table from the enRoleModel.xml file.
|
static final java.lang.String NAME
static final java.lang.String modelFileName
java.util.Collection<java.lang.String> getClasses()
throws ModelIntegrityException
ModelIntegrityExceptionjava.lang.Class getRelationship(java.lang.Class cl,
java.lang.String relationshipName)
throws ObjectNotFoundException,
ModelIntegrityException
cl - Subject class of the relationship.relationshipName - Name of the relationship to retrieve.ObjectNotFoundException - Thrown if unable to find a matching Relationship
implementation.ModelIntegrityExceptionjava.util.Collection<java.lang.String> getSupportedRelationships(java.lang.Class cl)
throws ObjectNotFoundException,
ModelIntegrityException
cl - Class for which relationships are queried.ObjectNotFoundException - Thrown if unable to find the given class in the data model
meta-data.ModelIntegrityExceptionjava.lang.Class getEntity(java.util.Collection<java.lang.String> objClasses)
throws ObjectNotFoundException,
ModelIntegrityException
objClasses - Collection of the LDAP auxiliary class.ObjectNotFoundException - Thrown if unable to find a matching Entity implementation.ModelIntegrityExceptionjava.lang.String getEntityCategory(java.util.Collection<java.lang.String> objClasses)
throws ModelIntegrityException
objClasses - Collection of the LDAP auxiliary class.ModelIntegrityExceptionObjectNotFoundException - Thrown if unable to find a matching Entity implementation.void defineClass(java.lang.Class cl)
throws ModelIntegrityException
cl - Class to add to the data model.ModelIntegrityExceptionvoid defineRelationship(java.lang.Class cl,
java.lang.String relationshipName,
java.lang.Class rel)
throws ModelIntegrityException
cl - Subject Class of the relationship.relationshipName - Name of the relationship being defined.rel - Implementation class implementing the Relationship interface.ModelIntegrityExceptionvoid defineRelationship(java.lang.String cl,
java.lang.String relationshipName,
java.lang.Class rel)
throws ModelIntegrityException
cl - Name of the Subject Class of the relationship.relationshipName - Name of the relationship being defined.rel - Implementation class implementing the Relationship interface.ModelIntegrityExceptionvoid defineEntity(java.lang.String cl,
java.lang.String auxClassName,
java.lang.String category)
throws java.lang.ClassNotFoundException,
ModelIntegrityException
cl - Name of the Subject Class of the relationship.auxClassName - Name of the relationship being defined.category - Implementation class implementing the Relationship interface.
The category can be found at ObjectProfileCategory class.java.lang.ClassNotFoundException - Name of the Subject class of the relationship cannot be
found.ModelIntegrityExceptionObjectProfileCategoryjava.util.Set<java.lang.String> getSubjectCategories(java.lang.String relationshipName)
throws ModelIntegrityException
relationshipName - Name of the relationshipModelIntegrityExceptionvoid loadTable()
throws java.io.IOException,
java.io.FileNotFoundException,
ModelIntegrityException
java.io.IOExceptionjava.io.FileNotFoundExceptionModelIntegrityException