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

## com.bea.content.virtual.version
Class VersionableContent

    java.lang.Object
      com.bea.content.virtual.version.VersionableContent

All Implemented Interfaces
  Serializable, Cloneable

Direct Known Subclasses:
  Version

    public class VersionableContent

extends Object
implements Serializable, Cloneable

VersionableContent maintains information on a version of a VirtualNode.

See Also
  Serialized Form

Constructor Summary
`VersionableContent(int status, String comment, Property[] properties)`

Method Summary
`void` | `addProperty(Property property)` does nothing
`Object` | `clone()` Clones a VersionableContent object with its properties and values.
`String` | `getComment()` Gets a comment on the version.
`Property[]` | `getProperties()` Gets the Properties for this node.
`Property[]` | `getProperties(String name)` Returns the property referenced by name or null if the property does not exist.
`Property` | `getProperty(String name)` Returns the property referenced by name or null if the property does not exist.
`int` | `getStatus()` Returns the workflow status for the VersionableContent.
`String` | `getVersionComment()` Excluded - see CR353875.
`void` | `setComment(String comment)` Sets a comment on the version.
`void` | `setProperties(Property[] properties)` Sets the Properties for this node.
`void` | `setStatus(int status)` Sets the workflow status for the VersionableContent.
`String` | `toString()` Returns the attributes of this Node in a String.

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

Constructor Detail

### VersionableContent

    public VersionableContent(int status,
                              String comment,
                              Property[] properties)

Method Detail

### getStatus

    public int getStatus()

  Returns the workflow status for the VersionableContent. See `Workflow`

  Returns
    The workflow status.

### setStatus

    public void setStatus(int status)

  Sets the workflow status for the VersionableContent. See `Workflow`

  Parameters
    `status` - The status to set

### getComment

    public String getComment()

  Gets a comment on the version.

### getVersionComment

    public String getVersionComment()

  Excluded - see CR353875. This is necessary for sorting/filtering results of a IVersionManager.search()

  Returns
    The comment.

### setComment

    public void setComment(String comment)

  Sets a comment on the version.

  Parameters
    `comment` - The comment to set.

### getProperty

    public Property getProperty(String name)

  Returns the property referenced by name or null if the property does not exist.

  Parameters
    `name` - The name of the property to retrieve.
  Returns
    The property.

    For nested type properties, the name must reflect the nested hierarchy using `NESTED_DELIMITER` between each parent and child property name. The delimiter is not valid for use within the actual name, only to seperate the parent/child names.

    If the `Property` returned is that of a nested type, it will return `Property` with a `Value` that is an array of `Property` objects.

    If the `Property` returned is that of a multi valued nested type, it will return `Property` with an array of `Value` objects, of which each is an array of `Property` objects.

    A nested Property can be retrieved directly by using the property name with delimiter (ie. myAddress.city). If a nested Property is multivalued, the index of that multivalued property will have to be reflected in the name, if you retrieve it directly (ie myAddresses[0].city will retrieve the first address's city in a multivalued nested property, or myAddresses[1].city will retrieve the second address's city. If the indexedName is not used to retrieve a property that is nested by a multivalued nested type, then only the first instance found, with that property name will be returned. The nesting tree will not be walked to find all properties of that name. See getProperties(name) for retrieving all Properties using a non-indexedName.

    See `Property.getIndexedName()`

    If the specified property does not exist in the node, it will return null.

### getProperties

    public Property[] getProperties(String name)

  Returns the property referenced by name or null if the property does not exist.

  Parameters
    `name` - The name, indexedName or partially indexedName of the property to retrieve.
  Returns
    The properties, or null if the property does not exist.

    For nested type properties, the name must reflect the nested hierarchy using `NESTED_DELIMITER` between each parent and child property name. The delimiter is not valid for use within the actual name, only to seperate the parent/child names.

    If the `Property` objects returned are that of nested types, each returned `Property` will have a `Value` that is an array of `Property` objects.

    If the `Property` objects returned are that of multi valued nested types, each returned `Property` will have an array of `Value` objects, of which each is an array of `Property` objects.

    Nested Property objects can be retrieved directly by using the property name with delimiter (ie. myAddress.city). If the nested Property is not multivalued, the returned Property array will only have a single value, just as if using the getProperty(name) method. If a nested Property is multivalued, the index of that multivalued property can be reflected fully or partially in the name. If it is retrieved directly, ie myAddresses[0].city, the first address's city of the multivalued nested property will be returned just as myAddresses[1].city will retrieve the second address's city. If the non indexedName is used, ie myAddresses.city, then all cities will be returned. If using a partially indexed name to retrieve multiple Property objects, it has to start by being specific to unspecific, ie myAddresses[0].myNeighborhoods.name would be valid, while myAddresses.myNeighborhoods[0].name would not be valid. If the beginning branches of the nesting tree are not specified via indexing, then the following branches cannot be specified.

    See `Property.getIndexedName()`

    If the specified property does not exist in the node, it will return null.

### getProperties

    public Property[] getProperties()

  Gets the Properties for this node.

### addProperty

    public void addProperty(Property property)

  does nothing

### setProperties

    public void setProperties(Property[] properties)

  Sets the Properties for this node. Each property must have a corresponding PropertyDefinition defined in the Node's ObjectClass.

### toString

    public String toString()

  Returns the attributes of this Node in a String.

  Overrides:
    `toString` in class `Object`

### clone

    public Object clone()
                 throws CloneNotSupportedException

  Clones a VersionableContent object with its properties and values. Note that binary value streams of property values are not cloned, but merely copied.

  Overrides:
    `clone` in class `Object`
  Returns
    A clone of the versionable content.
  Throws
    `CloneNotSupportedException` - If the clone fails.

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

Copyright © 2008 BEA Systems, Inc. All Rights Reserved