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 Node

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

All Implemented Interfaces:
  Serializable

public class Node
extends ContentEntity

A Node represents an element in a hieararchy.

A Node can either be Hierarchy or Content Node. A Hierarchy Node can contain both other Hierarchy and Content Nodes while a Content Node can only contain other Content Nodes.

Nodes have a few system properties that are set by the repository. Nodes also may contain Properties based on the ObjectClass (type) defined for it. Both Content and Hierarchy Nodes may contain an ObjectClass and Properties.

Nodes are uniquely identified in a repository by the uid on their ID. The uid could be a uuid, database id, the path, etc. All nodes also have a path that uniquely identifies it within the repository. The path should be in unix-like format such as /a/b/c where / is the root and a is the root's child. The path must always begin with / and never end with it. So neither of the following are valid: a/b/c/d or /a/b/d/d/.

Node names must not contain either forward, or backslashes.

A Node's Properties may be lazy loaded, depending on the implementation of the underyling operation that retrieved the Node.

See Also:
  Serialized Form

Field Summary
`static int` | `CONTENT` This defines a Node that represents content, such as a file with metadata.
`static int` | `HIERARCHY` This defines a Node as a container, like a Folder.
`static int` | `NODE` This could either be a `HIERARCHY` or `CONTENT` Node.

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

Constructor Summary
`Node(Calendar createdDate, String createdBy, boolean hasChildren, ID id, String modifiedBy, Calendar modifiedDate, ObjectClass objectClass, ID parentId, String path, Property[] properties, int type)` Constructor with all attributes.

Method Summary
`Node[]` | `getChildren()` Returns the children of this node.
`Node[]` | `getContentChildren()` Returns the Content children of this node.
`String` | `getCreatedBy()` The user who created this node.
`Calendar` | `getCreatedDate()` The date this node was created on.
`Node[]` | `getHierarchyChildren()` Returns the Hierarchy children of this node.
`int` | `getLifeCycleStatus()` Returns the status for this node.
`String` | `getModifiedBy()` The user who last modified this Node.
`Calendar` | `getModifiedDate()` The Date when this Node was last modified.
`String` | `getName()` The Node name.
`ObjectClass` | `getObjectClass()` The ObjectClass to which this Node is associated.
`ID` | `getParentId()` Gets the id for the parent of this node.
`String` | `getPath()` The path where this Node resides.
`Property` | `getPrimaryProperty()` Gets the primary property for this Node, or null if there isn't one or when the node doesn't have an object class (such as HIERARCHY nodes).
`Property[]` | `getProperties()` Gets the Properties for this node.
`Property` | `getProperty(String name)` Returns the property referenced by name or null if the property does not exist.
`InputStream` | `getPropertyBytes(ID propertyId)` Returns the bytes for the given property.
`int` | `getType()` The type of the Node.
`boolean` | `hasChildren()` True if this node has children.
`void` | `hasChildren(boolean hasChildren)` Set true if the node has children, false if not.
`boolean` | `isPropertiesNull()` Returns true if the properties have not been set in memory.
`boolean` | `isRetired()`
`void` | `isRetired(boolean isRetired)`
`void` | `setCreatedBy(String createdBy)` Sets the user who created this node.
`void` | `setCreatedDate(Calendar createdDate)` Sets the date this node was created on.
`void` | `setLifeCycleStataus(int lifeCycleStatus)` Sets the lifecycle status.
`void` | `setModifiedBy(String modifiedBy)` Sets the user who last modified this Node.
`void` | `setModifiedDate(Calendar modifiedDate)` Sets the Date when this Node was last modified.
`void` | `setNodeOps(NodeOps nodeOps)` Sets the NodeOps to perform operations on the repository.
`void` | `setObjectClass(ObjectClass objectClass)` Sets the ObjectClass to which this Node is associated.
`void` | `setParentId(ID parentId)` Sets this Node's parent id.
`void` | `setPath(String path)` Sets the path of this Node.
`void` | `setProperties(Property[] properties)` Sets the Properties for this node.
`void` | `setType(int type)` Gets the Node type.
`String` | `toString()` Returns the attributes of this Node in a String.

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`

Field Detail

### CONTENT

    public static final int CONTENT

  This defines a Node that represents content, such as a file with metadata. A Content Node may contain other Content Nodes, but not Hierarchy Nodes.

  See Also:
    Constant Field Values

### HIERARCHY

    public static final int HIERARCHY

  This defines a Node as a container, like a Folder. A Hierarchy Node may contain other Hierarchy nodes as well as Content Nodes.

  See Also:
    Constant Field Values

### NODE

    public static final int NODE

  This could either be a `HIERARCHY` or `CONTENT` Node. This is not a valid definition for a Node (`getType()` should never return this value), but may be used as a description.

  See Also:
    Constant Field Values

Constructor Detail

### Node

    public Node(Calendar createdDate,
                String createdBy,
                boolean hasChildren,
                ID id,
                String modifiedBy,
                Calendar modifiedDate,
                ObjectClass objectClass,
                ID parentId,
                String path,
                Property[] properties,
                int type)

  Constructor with all attributes.

Method Detail

### getChildren

    public Node[] getChildren()
                       throws AuthorizationException

  Returns the children of this node. This is a convenience method to NodeOps.getNodeChildren() and does not keep the retrieved values in memory as part of this instance.

  Throws:
    `AuthorizationException` - - if the user attempting the operation is not authrorized.

### getContentChildren

    public Node[] getContentChildren()
                              throws AuthorizationException

  Returns the Content children of this node. This is a convenience method to NodeOps.getNodeChildren() and does not keep the retrieved values in memory as part of this instance.

  Throws:
    `AuthorizationException` - - if the user attempting the operation is not authrorized.

### getCreatedBy

    public String getCreatedBy()

  The user who created this node.

### getCreatedDate

    public Calendar getCreatedDate()

  The date this node was created on.

### getHierarchyChildren

    public Node[] getHierarchyChildren()
                                throws AuthorizationException

  Returns the Hierarchy children of this node. This is a convenience method to NodeOps.getNodeChildren() and does not keep the retrieved values in memory as part of this instance.

  Throws:
    `AuthorizationException` - - if the user attempting the operation is not authrorized.

### getLifeCycleStatus

    public int getLifeCycleStatus()

  Returns the status for this node. The Node lifeCycleStatus does not follow the LifeCycle status changes. It may only be set to PUBLISHED or NOT_PUBLISHED. TODO: REMOVE

### getModifiedBy

    public String getModifiedBy()

  The user who last modified this Node.

### getModifiedDate

    public Calendar getModifiedDate()

  The Date when this Node was last modified.

### getName

    public String getName()

  The Node name. This is the last element in the path.

### getObjectClass

    public ObjectClass getObjectClass()

  The ObjectClass to which this Node is associated.

### getParentId

    public ID getParentId()

  Gets the id for the parent of this node.

### getPath

    public String getPath()

  The path where this Node resides. This is unique to the repository.

### getPrimaryProperty

    public Property getPrimaryProperty()
                                throws RepositoryException

  Gets the primary property for this Node, or null if there isn't one or when the node doesn't have an object class (such as HIERARCHY nodes).

  Throws:
    `RepositoryException`

### getProperties

    public Property[] getProperties()
                             throws AuthorizationException

  Gets the Properties for this node. Each property must have a corresponding PropertyDefinition defined in the Node's ObjectClass. If the Properties are not currently in memory, they will be retrieved. If you need to check if the Node instance in memory has its Propereties set, use isPropertiesNull().

  Throws:
    `AuthorizationException` - - if the user attempting the operation is not authrorized.

### getProperty

    public Property getProperty(String name)
                         throws AuthorizationException

  Returns the property referenced by name or null if the property does not exist. If the Properties are not currently in memory, they will be retrieved. If you need to check if the Node instance in memory has its Propereties set, use `isPropertiesNull()`.

  Throws:
    `AuthorizationException` - - if the user attempting the operation is not authrorized.

### getPropertyBytes

    public InputStream getPropertyBytes(ID propertyId)
                                 throws AuthorizationException,
                                        NoSuchPropertyException

  Returns the bytes for the given property. This is a convenience method to NodeOps.getPropertyBytes() and does not keep the retrieved values in memory as part of this instance.

  WARNING: If using this interface to retrieve binary content from a BEA Repository, please read the javadoc for `RepositoryConfig`.

  Throws:
    `AuthorizationException` - - if the user attempting the operation is not authrorized.
    `NoSuchPropertyException` - - if the propertyId is not a valid one.

### getType

    public int getType()

  The type of the Node. Either `HIERARCHY` or `CONTENT`.

### hasChildren

    public boolean hasChildren()

  True if this node has children. If the node does have children they may be retrieved through the NodeOps.

### hasChildren

    public void hasChildren(boolean hasChildren)

  Set true if the node has children, false if not. 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.

### isPropertiesNull

    public boolean isPropertiesNull()

  Returns true if the properties have not been set in memory.

### isRetired

    public boolean isRetired()

### isRetired

    public void isRetired(boolean isRetired)

### setCreatedBy

    public void setCreatedBy(String createdBy)

  Sets the user who created this node.

### setCreatedDate

    public void setCreatedDate(Calendar createdDate)

  Sets the date this node was created on.

### setLifeCycleStataus

    public void setLifeCycleStataus(int lifeCycleStatus)

  Sets the lifecycle status. The Node lifeCycleStatus does not follow the LifeCycle status changes. It may only be set to PUBLISHED or NOT_PUBLISHED. TODO: REmove

### setModifiedBy

    public void setModifiedBy(String modifiedBy)

  Sets the user who last modified this Node.

### setModifiedDate

    public void setModifiedDate(Calendar modifiedDate)

  Sets the Date when this Node was last modified.

### setNodeOps

    public void setNodeOps(NodeOps nodeOps)

  Sets the NodeOps to perform operations on the repository. This NodeOps may be used internally to lazy load attributes such as Properties.

### setObjectClass

    public void setObjectClass(ObjectClass objectClass)

  Sets the ObjectClass to which this Node is associated.

### setParentId

    public void setParentId(ID parentId)

  Sets this Node's parent id.

### setPath

    public void setPath(String path)

  Sets the path of this Node. This is unique to the repository.

### 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.

### setType

    public void setType(int type)

  Gets the Node type. Either `HIERARCHY` or `CONTENT`.

### toString

    public String toString()

  Returns the attributes of this Node in 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