Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## oracle.ifs.beans
Class ClassObject

    java.lang.Object

      |

      +--oracle.ifs.beans.LibraryObject

            |

            +--oracle.ifs.beans.TieLibraryObject

                  |

                  +--oracle.ifs.beans.SchemaObject

                        |

                        +--oracle.ifs.beans.TieSchemaObject

                              |

                              +--oracle.ifs.beans.ClassObject

All Implemented Interfaces:
  IfsEventHandler, LibraryObjectInterface, SchemaObjectInterface, Traceable

public final class ClassObject
extends TieSchemaObject

A ClassObject represents a class whose instances are persistently stored and managed by the iFS server.

When installed, iFS creates a number of ClassObjects. Some of these are used internally; others are for commonly-encountered data types in content management applications. A content management application can use these provided ClassObjects, or create its own by subclassing them.

Each ClassObject may define one or more Attributes for its data. In addition to these, a ClassObject inherits its superclass's Attributes.

Any time a ClassObject is created, altered, or removed, the in-progress Transaction is implicitly committed.

See Also:
  `ClassObjectDefinition`

Field Summary
`static java.lang.String` | `ABSTRACT_ATTRIBUTE` An indicator of whether this ClassObject is abstract.
`static java.lang.String` | `BEANCLASSPATH_ATTRIBUTE` The fully-qualified classname of the Beans Java class used to represent instances of this ClassObject in the repository SDK.
`static java.lang.String` | `CLASS_NAME` The class name for this class.
`static java.lang.String` | `CLASSACL_ATTRIBUTE` The ClassAccessControlList that determines which users and/or groups can create instances of this ClassObject.
`static java.lang.String` | `DATABASEOBJECTNAME_ATTRIBUTE` The base name for database objects used to store data for instances of this ClassObject.
`static java.lang.String` | `DESCRIPTION_ATTRIBUTE` A textual description of this ClassObject.
`static java.lang.String` | `FINAL_ATTRIBUTE` An indicator of whether this ClassObject is final.
`static java.lang.String` | `PARTITIONED_ATTRIBUTE` An indicator of whether the database table that stores data for instances of this ClassObject is partitioned.
`static java.lang.String` | `SELECTORCLASSPATH_ATTRIBUTE` The fully-qualified classname of the Beans Java class used to represent instances of this ClassObject in the repository SDK.
`static java.lang.String` | `SERVERCLASSPATH_ATTRIBUTE` The fully-qualified classname of the Server Java class used to represent instances of this ClassObject in the repository service.
`static java.lang.String` | `SUPERCLASS_ATTRIBUTE` The ClassObject that is the superclass of this ClassObject.
`static java.lang.String` | `UNIQUENAME_ATTRIBUTE` A system-set attribute used to ensure each ClassObject has a unique Name.

Fields inherited from class oracle.ifs.beans.SchemaObject
`ACTIVE_ATTRIBUTE, NAME_ATTRIBUTE, POLICYBUNDLE_ATTRIBUTE, PROPERTYBUNDLE_ATTRIBUTE`

Method Summary
`Attribute` | `addAttribute(AttributeDefinition def)` Adds an Attribute to this ClassObject.
`Attribute` | `getAttributeFromLabel(java.lang.String label)` returns the Attribute, based on the specified Attribute Label.
`java.lang.String` | `getBeanClasspath()` Gets the fully-qualified name of the Java class instantiated to represent instances of this ClassObject within a document management application.
`ClassAccessControlList` | `getClassAcl()` Gets the ClassAccessControlList of this ClassObject.
`static ClassObject` | `getClassObjectFromLabel(LibrarySession sess, java.lang.String label)` returns a ClassObject, based on a specified Label.
`java.lang.String` | `getDatabaseObjectName()` Returns the Database Object Name.
`java.lang.String` | `getDescription()` Returns the description of a Class Object.
`ClassObject[]` | `getDirectSubclasses()` Gets the direct subclasses of this ClassObject.
`ClassObject` | `getDirectSubclasses(int index)` Gets the specified direct subclass of this ClassObject.
`Attribute[]` | `getEffectiveClassAttributes()` Gets the effective Attributes of this ClassObject.
`Attribute` | `getEffectiveClassAttributes(int index)` Gets the specified effective Attribute of this ClassObject.
`Attribute` | `getEffectiveClassAttributes(java.lang.String attributeName)` Gets the specified effective Attribute of this ClassObject.
`Attribute[]` | `getExtendedClassAttributes()` Gets the extended Attributes of this ClassObject.
`Attribute[]` | `getExtendedClassAttributes(ClassObject superclass)` Gets an array of the Attributes that this ClassObject has and that the specified superclass does not have.
`Attribute` | `getExtendedClassAttributes(int index)` Gets the specified extended Attribute of this ClassObject.
`Attribute` | `getExtendedClassAttributes(java.lang.String attributeName)` Gets the specified extended Attribute of this ClassObject.
`AttributeValue` | `getInheritedPropertyValue(java.lang.String name)` gets named property, if any, by searching in the target ClassObject's PropertyBundle, or in one of its superclasses PropertyBundle.
`java.lang.String` | `getLabel()` returns the Label for this Attribute, based on the Attribute's name and class.
`java.lang.String` | `getSelectorClasspath()` Returns the SelectorClassPath Attribute of the Library Object.
`java.lang.String` | `getServerClasspath()` Returns the ServerClassPath Attribute of the Library Object.
`ClassObject[]` | `getSubclasses()` Gets the subclasses of this ClassObject.
`ClassObject` | `getSubclasses(int index)` Gets the specified subclass of this ClassObject.
`ClassObject` | `getSuperclass()` Gets the superclass of this ClassObject.
`boolean` | `isAbstract()` Determines if this is an abstract object.
`boolean` | `isAttribute(java.lang.String attrName)` Gets whether this ClassObject has an Attribute with the specified name.
`boolean` | `isDirectSubclassOf(ClassObject classObject)` Gets whether this ClassObject is a direct subclass of the specified ClassObject.
`boolean` | `isFinal()` Determines if this is object cannot be sub-classed.
`boolean` | `isSubclassOf(ClassObject classObject)` Gets whether this ClassObject is a subclass of the specified ClassObject.
`boolean` | `isVersionable()` Gets whether instances of this ClassObject are versionable.
`void` | `putPolicy(Policy policy)` Adds a Policy to the policy bundle PropertyBundle of this ClassObject.
`void` | `removeAllPolicies()` Removes all Policy objects from this ClassObject's policy bundle PropertyBundle, leaving an empty PropertyBundle.
`void` | `removeAttribute(Attribute attribute)` Removes an Attribute from this ClassObject.
`void` | `removePolicy(Policy policy)` Removes a Policy from this ClassObject's policy bundle PropertyBundle.
`void` | `removePolicy(java.lang.String opname)` Removes a Policy from this ClassObject's policy bundle PropertyBundle.
`void` | `setBeanClasspath(java.lang.String javaClassName)` Sets the fully-qualified name of the Java class instantiated to represent instances of this ClassObject within a document management application.
`void` | `setClassAcl(ClassAccessControlList acl)` Sets the ClassAccessControlList of this ClassObject.
`void` | `setDescription(java.lang.String description)` Sets the description of this ClassObject.
`void` | `setPolicyBundle(PolicyPropertyBundle bundle)` Sets the policy bundle PropertyBundle of this ClassObject.
`void` | `setSelectorClasspath(java.lang.String path)` Sets the Selector Class Path attribute.
`void` | `setServerClasspath(java.lang.String path)` Sets the Server Class Path attribute.

Methods inherited from class oracle.ifs.beans.SchemaObject
`getPolicyBundle, getPropertyBundle, hasNameAttribute, isActive, putProperty, putProperty, removeAllProperties, removeProperty, setActive, setPropertyBundle`

Methods inherited from class oracle.ifs.beans.LibraryObject
`equals, free, free, getAttribute, getAttributeByUpperCaseName, getAttributes, getAttributesByUpperCaseNames, getClassId, getClassObject, getDefinition, getId, getName, getSession, handleEvent, invokeServerMethod, isInstanceOf, isTraced, lookupInstanceLabel, postEvent, postEvent, renderAsReader, renderAsStream, setAttribute, setAttribute, setAttributes, setAttributes, setName, toString, trace, update`

Methods inherited from interface oracle.ifs.common.LibraryObjectInterface
`getId`

Methods inherited from interface oracle.ifs.common.Traceable
`getTraceLogger, isTraced, trace`

Field Detail

### CLASS_NAME

    public static final java.lang.String CLASS_NAME

  The class name for this class. Useful for methods that take a class name argument.

### SUPERCLASS_ATTRIBUTE

    public static final java.lang.String SUPERCLASS_ATTRIBUTE

  The ClassObject that is the superclass of this ClassObject.

### DESCRIPTION_ATTRIBUTE

    public static final java.lang.String DESCRIPTION_ATTRIBUTE

  A textual description of this ClassObject.

### SERVERCLASSPATH_ATTRIBUTE

    public static final java.lang.String SERVERCLASSPATH_ATTRIBUTE

  The fully-qualified classname of the Server Java class used to represent instances of this ClassObject in the repository service.

### BEANCLASSPATH_ATTRIBUTE

    public static final java.lang.String BEANCLASSPATH_ATTRIBUTE

  The fully-qualified classname of the Beans Java class used to represent instances of this ClassObject in the repository SDK.

### SELECTORCLASSPATH_ATTRIBUTE

    public static final java.lang.String SELECTORCLASSPATH_ATTRIBUTE

  The fully-qualified classname of the Beans Java class used to represent instances of this ClassObject in the repository SDK.

### DATABASEOBJECTNAME_ATTRIBUTE

    public static final java.lang.String DATABASEOBJECTNAME_ATTRIBUTE

  The base name for database objects used to store data for instances of this ClassObject.

### CLASSACL_ATTRIBUTE

    public static final java.lang.String CLASSACL_ATTRIBUTE

  The ClassAccessControlList that determines which users and/or groups can create instances of this ClassObject. If a ClassACL is not specified, then any user can create an instance of the ClassObject (unless it is an abstract class).

### ABSTRACT_ATTRIBUTE

    public static final java.lang.String ABSTRACT_ATTRIBUTE

  An indicator of whether this ClassObject is abstract. Abstract ClassObjects cannot be instantiated.

### FINAL_ATTRIBUTE

    public static final java.lang.String FINAL_ATTRIBUTE

  An indicator of whether this ClassObject is final. Final ClassObjects cannot be subclassed.

### PARTITIONED_ATTRIBUTE

    public static final java.lang.String PARTITIONED_ATTRIBUTE

  An indicator of whether the database table that stores data for instances of this ClassObject is partitioned. Currently only PublicObject database tables are partitioned.

### UNIQUENAME_ATTRIBUTE

    public static final java.lang.String UNIQUENAME_ATTRIBUTE

  A system-set attribute used to ensure each ClassObject has a unique Name.

Method Detail

### getLabel

    public java.lang.String getLabel()
                              throws IfsException

  returns the Label for this Attribute, based on the Attribute's name and class. This overrides the method defined in LibraryObject so that the AttributeLabel resource strings can be checked instead of the InstanceLabels that are checked in LibraryObject. If no AttributeLabel is defined, return the Attribute's name.
  Overrides:
    `getLabel` in class `LibraryObject`
  Returns:
    the label for this object.
  Throws:
    `IfsException` - if operation fails.

### getClassObjectFromLabel

    public static ClassObject getClassObjectFromLabel(LibrarySession sess,
                                                      java.lang.String label)
                                               throws IfsException

  returns a ClassObject, based on a specified Label.
  Parameters:
    `sess` - The LibrarySession
    `label` - The Label
  Returns:
    the corresponding ClassObject.
  Throws:
    `IfsException` - if operation fails.

### getAttributeFromLabel

    public Attribute getAttributeFromLabel(java.lang.String label)
                                    throws IfsException

  returns the Attribute, based on the specified Attribute Label.
  Parameters:
    `label` - the Attribute label
  Returns:
    the corresponding Attribute
  Throws:
    `IfsException` - if operation fails.

### getBeanClasspath

    public java.lang.String getBeanClasspath()
                                      throws IfsException

  Gets the fully-qualified name of the Java class instantiated to represent instances of this ClassObject within a document management application.
  Returns:
    the classname
  Throws:
    `IfsException` - if the operation fails

### setDescription

    public void setDescription(java.lang.String description)
                        throws IfsException

  Sets the description of this ClassObject.
  Parameters:
    `description` - the description
  Throws:
    `IfsException` - if the operation fails

### setBeanClasspath

    public void setBeanClasspath(java.lang.String javaClassName)
                          throws IfsException

  Sets the fully-qualified name of the Java class instantiated to represent instances of this ClassObject within a document management application. The service should be restarted after calling this method.
  Parameters:
    `javaClassName` - the classname
  Throws:
    `IfsException` - if the operation fails

### getClassAcl

    public ClassAccessControlList getClassAcl()
                                       throws IfsException

  Gets the ClassAccessControlList of this ClassObject.
  Returns:
    the ClassAccessControlList
  Throws:
    `IfsException` - if the operation fails

### setClassAcl

    public void setClassAcl(ClassAccessControlList acl)
                     throws IfsException

  Sets the ClassAccessControlList of this ClassObject.
  Parameters:
    `acl` - the ClassAccessControlList
  Throws:
    `IfsException` - if the operation fails

### setPolicyBundle

    public void setPolicyBundle(PolicyPropertyBundle bundle)
                         throws IfsException

  Sets the policy bundle PropertyBundle of this ClassObject.
  Overrides:
    `setPolicyBundle` in class `SchemaObject`
  Parameters:
    `bundle` - the policy bundle
  Throws:
    `IfsException` - if the operation fails

### putPolicy

    public void putPolicy(Policy policy)
                   throws IfsException

  Adds a Policy to the policy bundle PropertyBundle of this ClassObject.

  If this ClassObject doesn't have a policy bundle, this method will throw an exception.

  Overrides:
    `putPolicy` in class `SchemaObject`
  Parameters:
    `policy` - the Policy to add
  Throws:
    `IfsException` - if the operation fails

### removePolicy

    public void removePolicy(java.lang.String opname)
                      throws IfsException

  Removes a Policy from this ClassObject's policy bundle PropertyBundle.

  This method does not cause a "dedicated" PropertyBundle to be created.

  Overrides:
    `removePolicy` in class `SchemaObject`
  Parameters:
    `opname` - the operation name of the Policy to remove
  Throws:
    `IfsException` - if the operation fails

### removePolicy

    public void removePolicy(Policy policy)
                      throws IfsException

  Removes a Policy from this ClassObject's policy bundle PropertyBundle.

  This method does not cause a "dedicated" PropertyBundle to be created.

  Overrides:
    `removePolicy` in class `SchemaObject`
  Parameters:
    `policy` - the Policy to remove
  Throws:
    `IfsException` - if the operation fails

### removeAllPolicies

    public void removeAllPolicies()
                           throws IfsException

  Removes all Policy objects from this ClassObject's policy bundle PropertyBundle, leaving an empty PropertyBundle.

  This method does not cause a "dedicated" PropertyBundle to be created.

  Overrides:
    `removeAllPolicies` in class `SchemaObject`
  Throws:
    `IfsException` - if the operation fails

### addAttribute

    public Attribute addAttribute(AttributeDefinition def)
                           throws IfsException

  Adds an Attribute to this ClassObject.
  Parameters:
    `def` - the AttributeDefinition of the new Attribute
  Returns:
    the new Attribute
  Throws:
    `IfsException` - (IFS-30820) if the operation fails

### removeAttribute

    public void removeAttribute(Attribute attribute)
                         throws IfsException

  Removes an Attribute from this ClassObject.
  Parameters:
    `attribute` - the Attribute to remove
  Throws:
    `IfsException` - (IFS-30821) if the operation fails

### getEffectiveClassAttributes

    public Attribute[] getEffectiveClassAttributes()
                                            throws IfsException

  Gets the effective Attributes of this ClassObject.

  The effective Attributes of a ClassObject are both the Attributes introduced by the ClassObject itself as well as the Attributes the ClassObject inherits from its superclasses.

  Returns:
    the Attributes
  Throws:
    `IfsException` - if the operation fails

### getEffectiveClassAttributes

    public Attribute getEffectiveClassAttributes(int index)
                                          throws IfsException

  Gets the specified effective Attribute of this ClassObject.

  The effective Attributes of a ClassObject are both the Attributes introduced by the ClassObject itself as well as the Attributes the ClassObject inherits from its superclasses.

  Parameters:
    `index` - the zero-based index
  Returns:
    the Attribute
  Throws:
    `IfsException` - if the operation fails

### getEffectiveClassAttributes

    public Attribute getEffectiveClassAttributes(java.lang.String attributeName)
                                          throws IfsException

  Gets the specified effective Attribute of this ClassObject.

  The effective Attributes of a ClassObject are both the Attributes introduced by the ClassObject itself as well as the Attributes the ClassObject inherits from its superclasses.

  Parameters:
    `attributeName` - the Attribute name
  Returns:
    the Attribute, or null if there is no Attribute with the specified name
  Throws:
    `IfsException` - if the operation fails

### getExtendedClassAttributes

    public Attribute[] getExtendedClassAttributes()
                                           throws IfsException

  Gets the extended Attributes of this ClassObject.

  The extended Attributes of a ClassObject are only the Attributes introduced by the ClassObject itself, and do not include any Attributes the ClassObject inherits from its superclasses.

  Returns:
    the Attributes. If the class has no extended Attributes, an zero-length array is returned.
  Throws:
    `IfsException` - if the operation fails

### getExtendedClassAttributes

    public Attribute[] getExtendedClassAttributes(ClassObject superclass)
                                           throws IfsException

  Gets an array of the Attributes that this ClassObject has and that the specified superclass does not have.
  Parameters:
    `superclass` - a superclass of this ClassObject
  Returns:
    the Attributes. If this ClassObject has exactly the same Attributes as the specified superclass, a zero-length array is returned.
  Throws:
    `IfsException` - (IFS-19001) if `superclass` is null
    `IfsException` - (IFS-19005) if `superclass` is not a superclass of this ClassObject
    `IfsException` - if the operation otherwise fails

### getExtendedClassAttributes

    public Attribute getExtendedClassAttributes(int index)
                                         throws IfsException

  Gets the specified extended Attribute of this ClassObject.

  The extended Attributes of a ClassObject are only the Attributes introduced by the ClassObject itself, and do not include any Attributes the ClassObject inherits from its superclasses.

  Parameters:
    `index` - the zero-based index
  Returns:
    the Attribute
  Throws:
    `IfsException` - if the operation fails

### getExtendedClassAttributes

    public Attribute getExtendedClassAttributes(java.lang.String attributeName)
                                         throws IfsException

  Gets the specified extended Attribute of this ClassObject.

  The extended Attributes of a ClassObject are only the Attributes introduced by the ClassObject itself, and do not include any Attributes the ClassObject inherits from its superclasses.

  Parameters:
    `attributeName` - the Attribute name
  Returns:
    the Attribute, or null if there is no Attribute with the specified name
  Throws:
    `IfsException` - if the operation fails

### isAttribute

    public boolean isAttribute(java.lang.String attrName)
                        throws IfsException

  Gets whether this ClassObject has an Attribute with the specified name.
  Parameters:
    `the` - Attribute name
  Returns:
    whether this ClassObject has an Attribute with that name
  Throws:
    `IfsException` - if the operation fails

### getSuperclass

    public ClassObject getSuperclass()
                              throws IfsException

  Gets the superclass of this ClassObject.
  Returns:
    the superclass, or null if this ClassObject has no superclass
  Throws:
    `IfsException` - if the operation fails

### getDirectSubclasses

    public ClassObject[] getDirectSubclasses()
                                      throws IfsException

  Gets the direct subclasses of this ClassObject.

  The direct subclasses are the ClassObjects that directly extend this ClassObject.

  Returns:
    the subclasses
  Throws:
    `IfsException` - if the operation fails

### getDirectSubclasses

    public ClassObject getDirectSubclasses(int index)
                                    throws IfsException

  Gets the specified direct subclass of this ClassObject.

  The direct subclasses are the ClassObjects that directly extend this ClassObject.

  Parameters:
    `index` - the zero-based index
  Returns:
    the subclass
  Throws:
    `IfsException` - if the operation fails

### getSubclasses

    public ClassObject[] getSubclasses()
                                throws IfsException

  Gets the subclasses of this ClassObject.

  The subclasses are the ClassObjects that directly extend this ClassObject and their subclasses, sub-subclasses, etc.

  Returns:
    the subclasses
  Throws:
    `IfsException` - if the operation fails

### getSubclasses

    public ClassObject getSubclasses(int index)
                              throws IfsException

  Gets the specified subclass of this ClassObject.

  The subclasses are the ClassObjects that directly extend this ClassObject and their subclasses, sub-subclasses, etc.

  Parameters:
    `index` - the zero-based index
  Returns:
    the subclass
  Throws:
    `IfsException` - if the operation fails

### isDirectSubclassOf

    public boolean isDirectSubclassOf(ClassObject classObject)
                               throws IfsException

  Gets whether this ClassObject is a direct subclass of the specified ClassObject.
  Parameters:
    `classObject` - the ClassObject to test
  Returns:
    whether this ClassObject is a direct subclass of `classObject`
  Throws:
    `IfsException` - (IFS-19001) if `classObject` is null

### isSubclassOf

    public boolean isSubclassOf(ClassObject classObject)
                         throws IfsException

  Gets whether this ClassObject is a subclass of the specified ClassObject.
  Parameters:
    `classObject` - the ClassObject to test
  Returns:
    whether this ClassObject is a subclass of `classObject`
  Throws:
    `IfsException` - (IFS-19001) if `classObject` is null

### isVersionable

    public boolean isVersionable()
                          throws IfsException

  Gets whether instances of this ClassObject are versionable.
  Returns:
    whether instances of this ClassObject are versionable
  Throws:
    `IfsException` - if the operation fails

### getInheritedPropertyValue

    public AttributeValue getInheritedPropertyValue(java.lang.String name)
                                             throws IfsException

  gets named property, if any, by searching in the target ClassObject's PropertyBundle, or in one of its superclasses PropertyBundle. Return null if no property exists for this name.
  Parameters:
    `name` - Property name
  Returns:
    the AttributeValue for the requested property, or null if no specific Proeprty exists on this class or superclasses.
  Throws:
    `IfsException` - if the operation fails

### getDescription

    public java.lang.String getDescription()
                                    throws IfsException

  Returns the description of a Class Object.
  Returns:
    The description of the ClassObject.
  Throws:
    `IfsException` - if the operation fails

### getServerClasspath

    public java.lang.String getServerClasspath()
                                        throws IfsException

  Returns the ServerClassPath Attribute of the Library Object.
  Returns:
    The Server Class Path.
  Throws:
    `IfsException` - if the operation fails

### setServerClasspath

    public void setServerClasspath(java.lang.String path)
                            throws IfsException

  Sets the Server Class Path attribute.
  Parameters:
    `path` - The server class path
  Throws:
    `IfsException` - if the operation fails.

### getSelectorClasspath

    public java.lang.String getSelectorClasspath()
                                          throws IfsException

  Returns the SelectorClassPath Attribute of the Library Object.
  Returns:
    The Selector Class Path.
  Throws:
    `IfsException` - if the operation fails

### setSelectorClasspath

    public void setSelectorClasspath(java.lang.String path)
                              throws IfsException

  Sets the Selector Class Path attribute.
  Parameters:
    `path` - The selector class path
  Throws:
    `IfsException` - if the operation fails.

### getDatabaseObjectName

    public java.lang.String getDatabaseObjectName()
                                           throws IfsException

  Returns the Database Object Name.
  Returns:
    The Database Object Name.
  Throws:
    `IfsException` - if the operation fails.

### isAbstract

    public boolean isAbstract()
                       throws IfsException

  Determines if this is an abstract object.
  Returns:
    true if the object is abstract.
  Throws:
    `IfsException` - if the operation fails.

### isFinal

    public boolean isFinal()
                    throws IfsException

  Determines if this is object cannot be sub-classed.
  Returns:
    true if the object is final.
  Throws:
    `IfsException` - if the operation fails.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD