Overview | Package | Class | Tree | Deprecated | Index | Help
| © 2004 BEA Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.bea.content
Class ObjectClass

    java.lang.Object
      com.bea.content.ContentEntity
          com.bea.content.ObjectClass

All Implemented Interfaces:
  Serializable

public class ObjectClass
extends ContentEntity

ObjectClass is the type for a Node. It has both an id and a name that uniquely identifies it within a content repository.

An ObjectClass may have PropertyDefinitions associated with it that define the shape of Properties required for a Node. This does not mean that the Property must contain a value, but simply that the Property must exist for the Node.

The ObjectClass may have PropertyDefinitions without them actually being attached in memory. In this case, hasPropertyDefinitions would be true and a call to get the PropertyDefinitions would lazy load them. If there is a need to check if the PropertyDefinitions are currently set then a call to isPropertyDefinitionsNull() is appropriate as it will not try to load the PropertyDefinitions.

It may also have a primary PropertyDefinition that defines the primary content Property for a Node. This allows for the definition of content in the type since the api does not distinguish between content and meta-content.

A Node is only considered valid in the repository if its Properties conform to its ObjectClass PropertyDefinitions.

ObjectClass PropertyDefinitions may be lazy loaded, depending on the implementation of the underyling operation that retrieved the ObjectClass.

See Also:
  Serialized Form

Field Summary

Fields inherited from class com.bea.content.ContentEntity
`id`

Constructor Summary
`ObjectClass(ID id, String name)` Basic constructor.
`ObjectClass(ID id, String name, PropertyDefinition primaryPropertyDefinition, PropertyDefinition[] propertyDefinitions)` Constructor without hasPropertyDefinitions.
`ObjectClass(ID id, String name, PropertyDefinition primaryPropertyDefinition, PropertyDefinition[] propertyDefinitions, boolean hasPropertyDefinitions)` Constructor without propertyDefinitions.

Method Summary
`String` | `getName()` Returns a name that uniquely identifies this ObjectClass within a repository.
`PropertyDefinition` | `getPrimaryPropertyDefinition()` Returns the primary PropertyDefinition, or null if one does not exist.
`PropertyDefinition` | `getPropertyDefinition(String name)` Gets the named PropertyDefinition for this ObjectClass.
`PropertyDefinition[]` | `getPropertyDefinitions()` Gets the PropertyDefinitions for this ObjectClass.
`boolean` | `hasPropertyDefinitions()` Returns true if this ObjectClass has PropertyDefinitions.
`void` | `hasPropertyDefinitions(boolean hasPropertyDefinitions)` Sets if this ObjectClass has PropertyDefinitions.
`boolean` | `isPropertyDefinitionsNull()` Returns true if the propertyDefitions is null, false otherwise.
`void` | `setName(String name)` Sets the name for this ObjectClass.
`void` | `setObjectClassOps(ObjectClassOps objectClassOps)` Sets the ObjectClassOps for the repository.
`void` | `setPrimaryPropertyDefinition(PropertyDefinition propertyDefinition)` Sets the primary PropertyDefinition.
`String` | `toString()` Returns the ObjectClass attributes as a String.
`void` | `validateProperties(Property[] properties)` Validates that each property passed in as part of the properties array is valid according to its PropertyDefinition.
`void` | `validateProperty(Property property, PropertyDefinition definition)` Validates that the property passed in is valid according to the property definition passed in.

Methods inherited from class com.bea.content.ContentEntity
`getId, setId`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### ObjectClass

    public ObjectClass(ID id,
                       String name)

  Basic constructor.

Parameters:
  `id` - - the id for this ObjectClass
  `name` - - a name that uniquely identifies this ObjectClass in the Repository.

### ObjectClass

    public ObjectClass(ID id,
                       String name,
                       PropertyDefinition primaryPropertyDefinition,
                       PropertyDefinition[] propertyDefinitions)

  Constructor without hasPropertyDefinitions. If the propertyDefinitions passed in is not null and size > 0 then hasPropertyDefinitions will be set to true, otherwise it will be set to false.

Parameters:
  `id` - - the id for this ObjectClass
  `name` - - a name that uniquely identifies this ObjectClass in the Repository.
  `primaryPropertyDefinition` - - the primary Property for this ObjectClass, null if there isn't one.
  `propertyDefinitions` - - the PropertyDefinitions for this ObjectClass, may be null if none exist, or if they do exist but are intended to be lazy loaded.

### ObjectClass

    public ObjectClass(ID id,
                       String name,
                       PropertyDefinition primaryPropertyDefinition,
                       PropertyDefinition[] propertyDefinitions,
                       boolean hasPropertyDefinitions)

  Constructor without propertyDefinitions. Useful for when the PropertyDefinitions will be lazy loaded (if they exist).

Parameters:
  `id` - - the id for this ObjectClass
  `name` - - a name that uniquely identifies this ObjectClass in the Repository.
  `primaryPropertyDefinition` - - the primary Property for this ObjectClass, null if there isn't one.
  `hasPropertyDefinitions` - - true if this ObjectClass has PropertyDefinitions or false otherwise. This does not mean it has them in memory, but rather that that they do exist.

Method Detail

### getName

    public String getName()

  Returns a name that uniquely identifies this ObjectClass within a repository.

### setName

    public void setName(String name)

  Sets the name for this ObjectClass.

### getPrimaryPropertyDefinition

    public PropertyDefinition getPrimaryPropertyDefinition()

  Returns the primary PropertyDefinition, or null if one does not exist.

### setPrimaryPropertyDefinition

    public void setPrimaryPropertyDefinition(PropertyDefinition propertyDefinition)

  Sets the primary PropertyDefinition.

### getPropertyDefinitions

    public PropertyDefinition[] getPropertyDefinitions()
                                                throws AuthorizationException

  Gets the PropertyDefinitions for this ObjectClass. If they aren't currently set on this ObjectClass, then they will be retrieved. If you need to check if the ObjectClass instance in memory has its ProperetyDefinitions set, use isPropertyDefinitionsNull(). If you need to know if the ObjectClass has PropertyDefinitions (they may not be loaded in memory, but actually exist), use hasPropertyDefinitions().

  Throws:
    `AuthorizationException` - - if the user attempting the get is not authorized.

### hasPropertyDefinitions

    public boolean hasPropertyDefinitions()

  Returns true if this ObjectClass has PropertyDefinitions. This does not indicate if it currently has them as part of the instance (in memory), or if they will be lazy loaded, but rather simply that they exist.

### hasPropertyDefinitions

    public void hasPropertyDefinitions(boolean hasPropertyDefinitions)

  Sets if this ObjectClass has PropertyDefinitions. This does not indicate if it currently has them as part of the instance (in memory), or if they will be lazy loaded, but rather simply that they exist.

### isPropertyDefinitionsNull

    public boolean isPropertyDefinitionsNull()

  Returns true if the propertyDefitions is null, false otherwise. This does not indicate whether PropertyDefinitions exist for this ObjectClass, but rather if they are currently part of the instance.

### setObjectClassOps

    public void setObjectClassOps(ObjectClassOps objectClassOps)

  Sets the ObjectClassOps for the repository.

### getPropertyDefinition

    public PropertyDefinition getPropertyDefinition(String name)
                                             throws RepositoryException

  Gets the named PropertyDefinition for this ObjectClass.

  Parameters:
    `name` - - the name of the property definition to get.
  Returns:
    PropertyDefinition - that matches the name passed in, or null if none.
  Throws:
    `RepositoryException` - - if an error occurs getting the property definition.

### validateProperties

    public void validateProperties(Property[] properties)
                            throws RepositoryException

  Validates that each property passed in as part of the properties array is valid according to its PropertyDefinition.

  Parameters:
    `properties` -
  Throws:
    `RepositoryException`

### validateProperty

    public void validateProperty(Property property,
                                 PropertyDefinition definition)
                          throws RepositoryException

  Validates that the property passed in is valid according to the property definition passed in.

  Parameters:
    `property` -
    `definition` -
  Throws:
    `RepositoryException`

### toString

    public String toString()

  Returns the ObjectClass attributes as a String.

  Overrides:
    `toString` in class `ContentEntity`

Overview | Package | Class | Tree | Deprecated | Index | Help
| © 2004 BEA Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2004 BEA Systems, Inc. All Rights Reserved