com.bea.content.spi
Interface ExtendedObjectClassOps

All Superinterfaces
ObjectClassOps, Serializable

public interface ExtendedObjectClassOps
extends ObjectClassOps, Serializable

This ObjectsOps interface was added so that if customers choose, they can implement it to get new functionality from the CM system.


Method Summary
 QueryResult<ObjectClass> getChildObjectClasses(ID objectClassId, QueryCriteria queryCriteria)
          Retreives the first level of types which extend the given type in some way.
 Set<String> getNativeFilterableProperties(String repositoryName)
          Returns a set of property names which the repository can filter natively (within the repository instead of the federated API) for paging purposes.
 Set<String> getNativeSortableProperties(String repositoryName)
          Returns a set of property names which the repository can sort natively (within the repository instead of the federated API) for paging purposes.
 ObjectClass getObjectClass(String name)
          Gets the ObjectClass with the given name.
 ObjectClass[] getObjectClasses(QueryCriteria queryCriteria)
          Gets all of the ObjectClasses available in the content repository.
 ObjectClass save(ObjectClass objectClass)
          This method updates an existing object class in a single transaction.
 
Methods inherited from interface com.bea.content.spi.ObjectClassOps
createObjectClass, createPropertyDefinition, deleteObjectClass, deletePropertyDefinition, getObjectClass, getObjectClasses, getPropertyChoiceBytes, getPropertyDefinition, getPropertyDefinitions, renameObjectClass, updatePropertyDefinition
 

Method Detail

getChildObjectClasses

QueryResult<ObjectClass> getChildObjectClasses(ID objectClassId,
                                               QueryCriteria queryCriteria)
                                               throws NoSuchObjectClassException,
                                                      RepositoryException
Retreives the first level of types which extend the given type in some way. For example Type A is extended by Type B which is extended by Type C. If called with Type A, the results will be Type B. If called with Type B, the results will be Type C. The results are ordered by the type's path.

Parameters
objectClassId - The ID of the type
queryCriteria - The query criteria for this operation
Returns
An ordered Collection of types which extend the given type. Ordered by path.
Throws
NoSuchObjectClassException - If the given type doesn't exist.
RepositoryException - If the operation fails.

save

ObjectClass save(ObjectClass objectClass)
                 throws AuthorizationException,
                        ObjectClassInUseException,
                        RepositoryException
This method updates an existing object class in a single transaction. The changed object class attributes will be updated accordingly, including changed property definitions and property choices. This is a less granular way of performing actions like createPropertyDefinition, renameObjectClass and updatePropertyDefiniton. The object class is assumed to be retrieved from this API and therefore properly formed when this call is made. Therefore if this method is called and some property definitions are not specified, those definitions values will be removed. The following object class attributes are cannot be modified via this API: path (modifying the parent will cause the object class path to be updated properly).

Parameters
objectClass - The object class to update.
Returns
The updated objectClass
Throws
AuthorizationException - - if the user attempting the operation is not authorized to perform it.
ObjectClassInUseException - if the type is in use and the update to be performed is illegal.
RepositoryException - - if error occurs during the update operation.

getObjectClass

ObjectClass getObjectClass(String name)
                           throws AuthorizationException,
                                  NoSuchObjectClassException,
                                  RepositoryException
Gets the ObjectClass with the given name.

Parameters
name - - the name of the ObjectClass to get.
Returns
ObjectClass - the ObjectClass with the given name.
Throws
AuthorizationException - - if the user attempting the operation is not authorized to perform it.
NoSuchObjectClassException - - if the ObjectClass to get does not exist.
RepositoryException - - if the repository encounters an error during the operation.

getObjectClasses

ObjectClass[] getObjectClasses(QueryCriteria queryCriteria)
                               throws AuthorizationException
Gets all of the ObjectClasses available in the content repository.

Parameters
queryCriteria - - The query criteria for this operation
Returns
ObjectClass[] - an array of all ObjectClasses, an empty array if none are currently defined.
Throws
AuthorizationException - - if the user attempting the operation is not authorized to perform it.

getNativeSortableProperties

Set<String> getNativeSortableProperties(String repositoryName)
                                        throws RepositoryException
Returns a set of property names which the repository can sort natively (within the repository instead of the federated API) for paging purposes.

Parameters
repositoryName - The name of the repository.
Returns
The property names which can be sorted at the repository level.
Throws
RepositoryException - If the operation does not succeed.

getNativeFilterableProperties

Set<String> getNativeFilterableProperties(String repositoryName)
                                          throws RepositoryException
Returns a set of property names which the repository can filter natively (within the repository instead of the federated API) for paging purposes.

Parameters
repositoryName - The name of the repository.
Returns
The property names which can be filtered at the repository level.
Throws
RepositoryException - If the operation does not succeed.


Copyright © 2006 BEA Systems, Inc. All Rights Reserved