|
Copyright © 2006 BEA Systems, Inc. All Rights Reserved | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
ITypeManager
public interface ObjectClassOps
This interface represents a service for ObjectClass CRUD operations. It is used to manage ObjectClasses as well as their PropertyDefinitions and PropertyChoices. Each ObjectClass may contain 0 to many PropertyDefinitions and each PropertyDefinition may contain 0 to many PropertyChoices.
Each repository has specific validation rules that the manager will delegate to. If a repository considers an attempted operation invalid, it will throw a RepositoryException. The rules for the manager are defined below.
All ObjectClasses, PropertyDefinitions and PropertyChoices are uniquely identified through their ID. The ID must contain both the repositoryName and the uid, unless the operation is a create then the uid should be null.
This interface does not support inheritance, or nested ObjectClasses. If the underlying repository does, then all super PropertyDefinitions will be retrieved with the specified ObjectClass.
Each operation may only occur against one repository at a time. Therefore, all IDs in a single operation must all have the same repository name.
For additional rules see com.bea.content.PropertyDefinition.
Method Detail |
---|
ObjectClass createObjectClass(ObjectClass objectClass) throws AuthenticationException, AuthorizationException, ObjectClassExistsException, RepositoryException
ITypeManager.addType(com.bea.content.ContentContext, com.bea.content.ObjectClass)
objectClass
- - the ObjectClass to create, along with any
PropertyDefinitions to create also. The ObjectClass ID must contain
the repositoryName.
AuthenticationException
- - if the user attempting
the operation isn't authenticated against the repository.
AuthorizationException
- - if the user attempting the
operation is not authorized to perform it.
ObjectClassExistsException
- - if the name of the ObjectClass is already in use.
RepositoryException
- - if a validation error occurs.ObjectClass renameObjectClass(ID objectClassId, String newName) throws ObjectClassExistsException, NoSuchObjectClassException, RepositoryException
ObjectClass.setName(String)
followed by
ITypeManager.save(com.bea.content.ContentContext, com.bea.content.ObjectClass)
objectClassId
- - the ID of the objectClass to rename. The ID must
contain the repositoryName and the uid.newName
- - the new name of the ObjectClass
ObjectClassExistsException
- - if the name of the ObjectClass is already in use.
NoSuchObjectClassException
- - if the objectClass to rename doesn't exist.
RepositoryException
- - if a validation error occurs.ObjectClass getObjectClass(ID objectClassId) throws AuthenticationException, AuthorizationException, NoSuchObjectClassException
ITypeManager.getType(com.bea.content.ContentContext, com.bea.content.ID)
objectClassId
- - the ID of the ObjectClass to get. The ID
must contain the repositoryName and the uid.
AuthenticationException
- - if the user attempting
the operation isn't authenticated against the repository.
AuthorizationException
- - if the user attempting the
operation is not authorized to perform it.
NoSuchObjectClassException
- - if the ObjectClass to get does not exist.void deleteObjectClass(ID objectClassId) throws AuthenticationException, AuthorizationException, NoSuchObjectClassException, ObjectClassInUseException, RepositoryException
ITypeManager.remove(com.bea.content.ContentContext, com.bea.content.ID)
If the ObjectClass to delete has Nodes associated with it, either in the Repository or Virtual Repository it can't be removed.
objectClassId
- - the ID of the ObjectClass to delete. The ID
must contain the repositoryName and the uid.
AuthenticationException
- - if the user attempting
the operation isn't authenticated against the repository.
AuthorizationException
- - if the user attempting the
operation is not authorized to perform it.
NoSuchObjectClassException
- - if the ObjectClass to delete does not exist.
ObjectClassInUseException
- if the type is in use.
RepositoryException
- - if a validation error occurred.ObjectClass[] getObjectClasses() throws AuthenticationException, AuthorizationException, RepositoryException
ITypeManager.getViewableTypes(com.bea.content.ContentContext, String)
AuthenticationException
- - if the user attempting
the operation isn't authenticated against the repository.
AuthorizationException
- - if the user attempting the
operation is not authorized to perform it.
RepositoryException
- - if a validation error occurred.ObjectClass[] getObjectClasses(String repositoryName) throws AuthenticationException, AuthorizationException
ITypeManager.getViewableTypes(com.bea.content.ContentContext, String)
AuthenticationException
- - if the user attempting
the operation isn't authenticated against the repository.
AuthorizationException
- - if the user attempting the
operation is not authorized to perform it.PropertyDefinition[] getPropertyDefinitions(ID objectClassId) throws AuthenticationException, AuthorizationException, NoSuchObjectClassException
ITypeManager.getType(com.bea.content.ContentContext, com.bea.content.ID)
followed by ObjectClass.getPropertyDefinitions()
objectClassId
- - the ID for the ObjectClass to get its PropertyDefinitions.
The ID must contain the repositoryName and the uid.
AuthenticationException
- - if the user attempting
the operation isn't authenticated against the repository.
AuthorizationException
- - if the user attempting the
operation is not authorized to perform it.
NoSuchObjectClassException
- - if the ObjectClass does not exist.PropertyDefinition getPropertyDefinition(ID propertyDefinitionId) throws AuthenticationException, AuthorizationException, NoSuchPropertyDefinitionException
ITypeManager.getType(com.bea.content.ContentContext, com.bea.content.ID)
followed by ObjectClass.getPropertyDefinition(String)
propertyDefinitionId
- - the ID the PropertyDefinition to get. Must contain
the repositoryName and the uid.
AuthenticationException
- - if the user attempting
the operation isn't authenticated against the repository.
AuthorizationException
- - if the user attempting the
operation is not authorized to perform it.
NoSuchPropertyDefinitionException
- - if the PropertyDefinition does not exist.PropertyDefinition createPropertyDefinition(ID objectClassId, PropertyDefinition propertyDefinition) throws AuthenticationException, AuthorizationException, NoSuchObjectClassException, ObjectClassInUseException, RepositoryException
ObjectClass.addPropertyDefinition(com.bea.content.PropertyDefinition)
followed by ITypeManager.save(com.bea.content.ContentContext, com.bea.content.ObjectClass)
objectClassId
- - the id of the ObjectClass to add the PropertyDefinition to.
The ID must contain the repositoryName and the uid.propertyDefinition
- - the propertyDefinition to create and add to the ObjectClass.
The ID must contain the repositoryName and the uid.
There can only be one primary PropertyDefinition that defines the primary content
Property for a Node.
AuthenticationException
- - if the user attempting
the operation isn't authenticated against the repository.
AuthorizationException
- - if the user attempting the
operation is not authorized to perform it.
NoSuchObjectClassException
- - if the objectClass does not exist.
ObjectClassInUseException
- if the type is in use and the update to be performed is illegal.
RepositoryException
- - if a validation error occurs.PropertyDefinition updatePropertyDefinition(PropertyDefinition propertyDefinition) throws AuthenticationException, AuthorizationException, NoSuchPropertyException, ObjectClassInUseException, RepositoryException
ITypeManager.save(com.bea.content.ContentContext, com.bea.content.ObjectClass)
The PropertyDefinition IDs and all of its PropertyChoices Ids should remain intact when updated. If PropertyChoices are no longer present on the PropertyDefinition, they should be deleted. If new PropertyChoices are present on the PropertyDefinition they should be added.
If isPrimary is true then this PropertyDefinition will be set to the primary PropertyDefinition for the ObjectClass. If there is already a primary PropertyDefinition, then it will be unset.
propertyDefinition
- - the propertyDefinition to update. The PropertyDefinition ID
must contain the repositoryName and the uid.
There can only be one primary PropertyDefinition that defines the primary content
Property for a Node.
AuthenticationException
- - if the user attempting
the operation isn't authenticated against the repository.
AuthorizationException
- - if the user attempting the
operation is not authorized to perform it.
NoSuchPropertyDefinitionException
- - if the PropertyDefinition does not exist.
ObjectClassInUseException
- if the type is in use and the update to be performed is illegal.
RepositoryException
- - if a validation error occurs.
NoSuchPropertyException
void deletePropertyDefinition(ID propertyDefinitionId) throws AuthenticationException, AuthorizationException, NoSuchPropertyException, ObjectClassInUseException, RepositoryException
ObjectClass.removePropertyDefinition(String)
followed by ITypeManager.save(com.bea.content.ContentContext, com.bea.content.ObjectClass)
propertyDefinitionId
- - the ID of the propertyDefinition to delete. The
PropertyDefinition ID must contain the repositoryName and the uid.
AuthenticationException
- - if the user attempting
the operation isn't authenticated against the repository.
AuthorizationException
- - if the user attempting the
operation is not authorized to perform it.
NoSuchPropertyDefinitionException
- - if the PropertyDefinition does not exist.
ObjectClassInUseException
- if the type is in use and the update to be performed is illegal.
RepositoryException
- - if a validation error occurs.
NoSuchPropertyException
InputStream getPropertyChoiceBytes(ID propertyChoiceId) throws AuthenticationException, AuthorizationException, NoSuchPropertyChoiceException
ITypeManager.getStream(com.bea.content.ContentContext, com.bea.content.ID, com.bea.content.ID)
WARNING: If using this interface to retrieve binary content from
a BEA Repository, please read the javadoc for
RepositoryConfig
.
After calling this method and retrieving the InputStream, you must close the InputStream when finished reading it.
propertyChoiceId
- - the ID of the propertyChoice to get the BinaryValue for.
Must contain the repositoryName and the uid.
AuthenticationException
- - if the user attempting
the operation isn't authenticated against the repository.
AuthorizationException
- - if the user attempting the
operation is not authorized to perform it.
NoSuchPropertyChoiceException
- - if the PropertyChoice does not exist.
|
Copyright © 2006 BEA Systems, Inc. All Rights Reserved | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |