com.stc.eindex.objects
Class ObjectNode

java.lang.Object
  extended bycom.stc.eindex.objects.ObjectNode
All Implemented Interfaces:
java.io.Externalizable, java.io.Serializable
Direct Known Subclasses:
AssumedMatchSummary, AuditDataObject, EnterpriseObject, PotentialDuplicateSummary, SystemObject, TransactionObject

public class ObjectNode
extends java.lang.Object
implements java.io.Externalizable

The ObjectNode class performs the following functions:

See Also:
Serialized Form

Constructor Summary
ObjectNode()
          Creates a new instance of the ObjectNode class.
ObjectNode(java.lang.String tag, java.util.ArrayList names, java.util.ArrayList types)
          Creates a new instance of the ObjectNode class by its object tag, field names, and field types.
ObjectNode(java.lang.String tag, java.util.ArrayList names, java.util.ArrayList types, java.util.ArrayList values)
          Creates a new instance of the ObjectNode class by its object tag, field names, field types, and field values.
 
Method Summary
 void addChild(ObjectNode child)
          Adds a new child object to the object node.
 void addChildHard(ObjectNode child)
          Adds a new child object to the object node without checking for duplicates before adding the new object.
 void addChildNoFlagSet(ObjectNode child)
          Adds a new child object to the object node.
 void addChildren(java.util.ArrayList children)
          Adds a list of child objects to the object node.
 void addChildToTypeArrayList(ObjectNode child)
          Adds a child object to a list of child objects based on the object type of the child object to add.
 void clearField(java.lang.String name)
          Sets a field to null and the modifies the "changed" flag to true.
 ObjectNode copy()
          Creates a complete copy of the object node.
 void deleteChild(ObjectNode node)
          Marks a child object for deletion, identifying the child object by the specified object node.
 void deleteChild(java.lang.String type, SuperKey key)
          Marks a child object for deletion, identifying the child object by its object tag and key field settings.
 boolean equals(ObjectNode node)
          Checks whether a child object is equal to the child object passed in as a parameter.
 java.util.ArrayList getAllChildrenFromHashMap()
          Returns a list of child objects from the hash table.
 ObjectNode getChild(java.lang.String type, ObjectKey key)
          Retrieves a child ObjectNode by its object tag and its unique object key value.
 ObjectKey getChildKey(java.lang.String type)
          Retrieves the unique key field setting for the child object identified by the specified object tag.
 java.util.ArrayList getChildrenForType(java.lang.String type, boolean create)
          Returns a list of child objects based on the object type.
 SuperKey getChildSuperKey(java.lang.String type)
          Retrieves the unique key setting for the child object identified by the specified object tag.
 ObjectField getField(java.lang.String fieldname)
          Retrieves an ObjectField object by its field name.
 boolean getFlag(java.lang.String name, int mask)
          Checks whether a field's bit mask is enabled or disabled.
 java.lang.String getObjectId()
          Retrieves the unique ID for the object.
 ObjectNode getParent()
          Retrieves the parent object node.
 java.lang.Object getValue(java.lang.String name)
          Retrieves the value of a field given the field's name.
 ObjectField getValueObject(java.lang.String name)
          Retrieves a field object (ObjectField) given the field's name.
 boolean hasFieldReadAccess(java.lang.String name)
          Checks whether the given field has read access.
 boolean hasFieldUpdateAccess(java.lang.String name)
          Checks whether the given field has update access.
 int hashCode()
          Returns the hash code of the object node.
 boolean hasObjectAddAccess()
          Checks whether the object has add access.
 boolean hasObjectDeleteAccess()
          Checks whether the object has delete access.
 boolean hasObjectReadAccess()
          Checks whether the object has read access.
 boolean hasObjectUpdateAccess()
          Checks whether the object has update access.
 boolean isAdded()
          Checks whether the object node has been added to the object.
 boolean isChanged(java.lang.String name)
          Checks whether the value of a field changed in the current transaction.
 boolean isKeyChanged()
          Checks whether key fields in the object node have changed.
 boolean isKeyType(java.lang.String name)
          Checks whether the given field is a unique key field.
 boolean isKeyValid(ObjectKey key)
          Checks whether the given key object is valid.
 boolean isNew()
          Checks whether the object node is new or already exists in the database.
 boolean isNull(java.lang.String name)
          Checks whether the given field contains a null value.
 boolean isNullable(java.lang.String name)
          Checks whether the value of the given field can be null.
 boolean isRemoved()
          Checks whether an object node is marked for deletion.
 boolean isSearched(java.lang.String name)
          Checks whether a field is used for searches.
 boolean isUpdated()
          Checks whether an object node has been updated during a transaction.
 boolean isVisible(java.lang.String name)
          Checks whether a field is visible on the Enterprise Data Manager (EDM).
 java.util.ArrayList pGetChildren()
          Retrieves a list of all child nodes in the object node.
 java.util.ArrayList pGetChildren(java.lang.String type)
          Retrieves a list of all child nodes of the specified child type.
 java.util.ArrayList pGetChildTags()
          Retrieves a list of the names of the different types of child objects defined in the object node.
 java.util.ArrayList pGetFieldNames()
          Retrieves a list of all field names in the object node.
 ObjectField[] pGetFields()
          Retrieves an array list of all ObjectField objects in the object node.
 java.util.ArrayList pGetFieldUpdateLogs()
          Retrieves a list of transaction log entries for the object node.
 java.util.ArrayList pGetFieldValues()
          Retrieves a list of field values for the fields defined in the object node.
 java.lang.String pGetFlagString()
          Returns a string representation of the object node, but does not include field details.
 ObjectKey pGetKey()
          Retrieves the unique key setting for the object node.
 SuperKey pGetSuperKey()
          Retrieves the unique key field setting for the object node.
 java.lang.String pGetTag()
          Retrieves the tag of the ObjectNode object.
 java.lang.String pGetType()
          Retrieves the type of the ObjectNode object.
 int pGetType(java.lang.String name)
          Retrieves a field's data type given the field's name.
 void removeChild(ObjectNode node)
          Removes a child object from the ObjectNode.
 void removeChild(java.lang.String type, ObjectKey objKey)
          Removes a child object from the ObjectNode using the child object tag and object key setting to determine which child object to remove.
 void removeChildren()
          Removes all child objects from the ObjectNode.
 void removeChildren(java.lang.String type)
          Removes all child objects of a specific type from the ObjectNode.
 void reset()
          Resets all access flags for the object node, but does not reset the flags for any of the child objects in the object node.
 void resetAll()
          Resets all access flags for the object node, including the flags for the child objects in the object node.
 void setAddFlag(boolean flag)
          Sets the value of the add flag, indicating whether the ObjectNode object is newly added.
 void setChanged(java.lang.String name, boolean flag)
          Sets the value of the field change flag, indicating whether the specified field was changed in the ObjectNode object.
 void setFieldReadAccess(java.lang.String name, boolean flag)
          Sets the value of a field's read access flag.
 void setFieldUpdateAccess(java.lang.String name, boolean flag)
          Sets the value of a field's update access flag.
 void setFieldUpdateLogs(java.util.ArrayList logs)
          Sets a list of transaction log entries.
 void setFlag(java.lang.String name, int mask, boolean flag)
          Sets a field's bit mask, which indicates whether to update, add, or remove a field.
 void setKey(ObjectKey key)
          Sets the value of the object node's key field.
 void setKeyChangeFlag(boolean flag)
          Sets the value of the key change flag, indicating whether key fields were changed in the ObjectNode object.
 void setKeyType(java.lang.String name, boolean flag)
          Sets a flag indicating whether a field is a key type field or not.
 void setNull(java.lang.String name, boolean flag)
          Specifies whether to set a field's value to null.
 void setNullable(java.lang.String name, boolean flag)
          Specifies whether a field can contain a null value.
 void setObjectAddAccess(boolean flag)
          Sets the value of the add access flag for the object node, indicating whether the object has add access.
 void setObjectDeleteAccess(boolean flag)
          Sets the value of the delete access flag for the object node, indicating whether the object has delete access.
 void setObjectReadAccess(boolean flag)
          Sets the value of the read access flag for the object node, indicating whether the object has read access.
 void setObjectUpdateAccess(boolean flag)
          Sets the value of the update access flag for the object node, indicating whether the object has update access.
 void setParent(ObjectNode parent)
          Sets the parent object for the object node.
 void setRemoveFlag(boolean flag)
          Specifies whether the object node is marked for deletion.
 void setSearched(java.lang.String name, boolean flag)
          Specifies whether the given field is used for searches.
 void setUpdateFlag(boolean flag)
          Specifies whether the given object node was updated.
 void setValue(java.lang.String name, java.lang.Object value)
          Sets the value of a field, using the field name to identify the field.
 void setVisible(java.lang.String name, boolean flag)
          Specifies whether a field is visible on the EDM, using the field name to identify the field.
 ObjectNode structCopy()
          Creates a structural copy of the object node.
 java.lang.String toString()
          Returns a string representation of the object node.
 void unChange()
          Resets the changes made to an object, returning the object to its previous status.
 void update(ObjectNode node, boolean addNewChild, boolean delMissingChild)
          Updates an existing object node with the input object node similar to the updateIfChanged method described above.
 void updateChild(ObjectNode child)
          Updates an existing child object in the object node.
 void updateIfChanged(ObjectNode node, boolean addNewChild, boolean delMissingChild)
          Updates an existing object node with the input object node, comparing the two nodes first to see if anything is changed.
 void updateIfNotEqual(ObjectNode node, boolean addNewChild, boolean delMissingChild)
          Updates an existing object node with the input object node similar to the updateIfChanged method described above, but does not update field values that are equal between the two nodes.
 void updateIfNotNull(ObjectNode node, boolean addNewChild, boolean delMissingChild)
          Updates an existing object node with the input object node similar to the updateIfChanged method described above, but does not update existing field values with null values.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ObjectNode

public ObjectNode()
Creates a new instance of the ObjectNode class.

Parameters:
None.
Throws:
None.


ObjectNode

public ObjectNode(java.lang.String tag,
                  java.util.ArrayList names,
                  java.util.ArrayList types)
           throws ObjectException
Creates a new instance of the ObjectNode class by its object tag, field names, and field types.

Parameters:
tag - A string containing the object tag.
names - A list of names of the fields contained in the object node.
types - A list of the types of fields contained in the object node.
Throws:
ObjectException - Thrown if an error occurs while creating the instance.

ObjectNode

public ObjectNode(java.lang.String tag,
                  java.util.ArrayList names,
                  java.util.ArrayList types,
                  java.util.ArrayList values)
           throws ObjectException
Creates a new instance of the ObjectNode class by its object tag, field names, field types, and field values.

Parameters:
tag - A string containing the object tag.
names - A list of names of the fields contained in the object node.
types - A list of the types of fields contained in the object node.
values - A list of the values of the fields contained in the object node.
Throws:
ObjectException - Thrown if an error occurs while creating the instance.
Method Detail

addChild

public void addChild(ObjectNode child)
              throws ObjectException
Adds a new child object to the object node. This method checks for duplicates before adding the new object and throws an exception if a duplicate object is found. addChild sets the ADD flag for the child object to true and sets the REMOVE flag to false only if no matching child objects are found.

Parameters:
child - The child object to add.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while adding the child object.

addChildHard

public void addChildHard(ObjectNode child)
                  throws ObjectException
Adds a new child object to the object node without checking for duplicates before adding the new object. addChildHard sets the ADD flag for the child object to true and sets the REMOVE flag to false.

Parameters:
child - The child object to add.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while adding the child object.

addChildNoFlagSet

public void addChildNoFlagSet(ObjectNode child)
                       throws ObjectException
Adds a new child object to the object node. This method checks for duplicates before adding the new object and throws an exception if a duplicate object is found. addChildNoFlagSet does not set the ADD or REMOVE flags.

Parameters:
child - The child object to add.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while adding the child object.

addChildren

public void addChildren(java.util.ArrayList children)
                 throws ObjectException
Adds a list of child objects to the object node. This method sets the UPDATE flag to true after adding the each child object.

Parameters:
children - A list of child objects to add.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while adding the child objects.

addChildToTypeArrayList

public void addChildToTypeArrayList(ObjectNode child)
Adds a child object to a list of child objects based on the object type of the child object to add.

Parameters:
child - The child object to add to the list.
Returns:
void - None.
Throws:
None.

clearField

public void clearField(java.lang.String name)
                throws ObjectException
Sets a field to null and the modifies the "changed" flag to true.

Parameters:
name - The name of the field being modified.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while setting the field value or modifying the flag.

copy

public ObjectNode copy()
                throws ObjectException
Creates a complete copy of the object node.

Parameters:
None.

Returns:
ObjectNode - A copy of the specified object node.
Throws:
ObjectException - Thrown if an error occurs while copying the object node.

deleteChild

public void deleteChild(ObjectNode node)
                 throws ObjectException
Marks a child object for deletion, identifying the child object by the specified object node.

Parameters:
node - An ObjectNode object containing the child object to delete.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while marking the object for deletion.

deleteChild

public void deleteChild(java.lang.String type,
                        SuperKey key)
                 throws ObjectException
Marks a child object for deletion, identifying the child object by its object tag and key field settings.

Parameters:
type - The type of child object to mark for deletion.
key - The key field of the child object.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while marking the object for deletion.

equals

public boolean equals(ObjectNode node)
               throws ObjectException
Checks whether a child object is equal to the child object passed in as a parameter.

Parameters:
node - An ObjectNode object containing the child object to compare against.
Returns:
boolean - An indicator of whether the two child objects are equal. Boolean true indicates the objects are equal; false indicates they are not.
Throws:
ObjectException - Thrown if an error occurs while copying the object node.

getAllChildrenFromHashMap

public java.util.ArrayList getAllChildrenFromHashMap()
Returns a list of child objects from the hash table.

Parameters:
None.

Returns:
ArrayList - A list of child objects.
Throws:
None.

getChild

public ObjectNode getChild(java.lang.String type,
                           ObjectKey key)
                    throws ObjectException
Retrieves a child ObjectNode by its object tag and its unique object key value.

Parameters:
type - A string containing the object tag.
key - The value of the unique key field.
Returns:
ObjectNode - A child object of the specified type with the specified unique key field.
Throws:
ObjectException - Thrown if an error occurs while retrieving the child object.

getChildKey

public ObjectKey getChildKey(java.lang.String type)
                      throws ObjectException
Retrieves the unique key field setting for the child object identified by the specified object tag.

Parameters:
type - A string containing the object tag.
Returns:
ObjectKey - The setting of the unique key field for the specified child object.
Throws:
ObjectException - Thrown if an error occurs while retrieving the key setting.

getChildrenForType

public java.util.ArrayList getChildrenForType(java.lang.String type,
                                              boolean create)
Returns a list of child objects based on the object type.

Parameters:
type - The type of child object to return.
create - A Boolean indicator of whether to create a new hash table for the child objects before returning the child object list. Specify true to create the hash table; otherwise specify false.
Returns:
ArrayList - A list of child objects.
Throws:
None.

getChildSuperKey

public SuperKey getChildSuperKey(java.lang.String type)
                          throws ObjectException
Retrieves the unique key setting for the child object identified by the specified object tag. If there is no unique key field for the object, this method retrieves the unique ID for the object as assigned by the master index.

Parameters:
type - A string containing the object tag.
Returns:
SuperKey - The setting of the unique key field or, if no unique key field exists, the unique master index ID of the specified child object.
Throws:
ObjectException - Thrown if an error occurs while retrieving the key setting.

getField

public ObjectField getField(java.lang.String fieldname)
                     throws ObjectException
Retrieves an ObjectField object by its field name.

Parameters:
fieldname - The name of the field whose ObjectField object you want to retrieve.
Returns:
ObjectField - The field object corresponding to the given field name.
Throws:
ObjectException - Thrown if an error occurs while retrieving the ObjectField object.

getFlag

public boolean getFlag(java.lang.String name,
                       int mask)
                throws ObjectException
Checks whether a field's bit mask is enabled or disabled.

Parameters:
name - The name of the field to check.
mask - The bit mask of the field.
Returns:
boolean - An indicator of whether the bit mask is enabled or disabled. True indicates the bit mask is enabled; false indicates it is disabled.
Throws:
ObjectException - Thrown if an error occurs while checking the bit mask status.

getObjectId

public java.lang.String getObjectId()
                             throws ObjectException
Retrieves the unique ID for the object. This ID is automatically assigned by eView.

Parameters:
None.

Returns:
String - The unique ID of the object.
Throws:
ObjectException - Thrown if an error occurs while retrieving the ID.

getParent

public ObjectNode getParent()
Retrieves the parent object node.

Parameters:
None.

Returns:
ObjectNode - The parent object node of the given object.
Throws:
None.

getValue

public java.lang.Object getValue(java.lang.String name)
                          throws ObjectException
Retrieves the value of a field given the field's name.

Parameters:
name - The name of the field to retrieve.
Returns:
Object - The value of the given field.
Throws:
ObjectException - Thrown if an error occurs while retrieving the field value.

getValueObject

public ObjectField getValueObject(java.lang.String name)
                           throws ObjectException
Retrieves a field object (ObjectField) given the field's name.

Parameters:
name - The name of the field.
Returns:
ObjectField - A field object with the given field name.
Throws:
ObjectException - Thrown if an error occurs while retrieving the field object.

hasFieldReadAccess

public boolean hasFieldReadAccess(java.lang.String name)
                           throws ObjectException
Checks whether the given field has read access.

Parameters:
name - The name of the field.
Returns:
boolean - An indicator of whether the field has read access. True indicates the field has read access; false indicates it does not.
Throws:
ObjectException - Thrown if an error occurs while retrieving the read access status of the field.

hasFieldUpdateAccess

public boolean hasFieldUpdateAccess(java.lang.String name)
                             throws ObjectException
Checks whether the given field has update access.

Parameters:
name - The name of the field.
Returns:
boolean - An indicator of whether the field has update access. True indicates the field has update access; false indicates it does not.
Throws:
ObjectException - Thrown if an error occurs while retrieving the update access status of the field.

hashCode

public int hashCode()
Returns the hash code of the object node.

Parameters:
None.

Returns:
int - The hash code of the object node.
Throws:
None.

hasObjectAddAccess

public boolean hasObjectAddAccess()
Checks whether the object has add access.

Parameters:
None.

Returns:
boolean - An indicator of whether the object has add access. True indicates the object has add access; false indicates it does not.
Throws:
None.

hasObjectDeleteAccess

public boolean hasObjectDeleteAccess()
Checks whether the object has delete access.

Parameters:
None.

Returns:
boolean - An indicator of whether the object has delete access. True indicates the object has delete access; false indicates it does not.
Throws:
None.

hasObjectReadAccess

public boolean hasObjectReadAccess()
Checks whether the object has read access.

Parameters:
None.

Returns:
boolean - An indicator of whether the object has read access. True indicates the object has read access; false indicates it does not.
Throws:
None.

hasObjectUpdateAccess

public boolean hasObjectUpdateAccess()
Checks whether the object has update access.

Parameters:
None.

Returns:
boolean - An indicator of whether the object has update access. True indicates the object has update access; false indicates it does not.
Throws:
None.

isAdded

public boolean isAdded()
Checks whether the object node has been added to the object.

Parameters:
None.

Returns:
boolean - An indicator of whether the object node is new. True indicates the node is new; false indicates it is not new.
Throws:
None.

isChanged

public boolean isChanged(java.lang.String name)
                  throws ObjectException
Checks whether the value of a field changed in the current transaction.

Parameters:
name - The name of the field.
Returns:
boolean - An indicator of whether the field value changed. True indicates the field value changed; false indicates it did not change.
Throws:
ObjectException - Thrown if an error occurs while checking whether the value of the field changed.

isKeyChanged

public boolean isKeyChanged()
Checks whether key fields in the object node have changed.

Parameters:
None.

Returns:
boolean - An indicator of whether key fields in the object node have changed. True indicates key fields have changed; false indicates they have not changed.
Throws:
None.

isKeyType

public boolean isKeyType(java.lang.String name)
                  throws ObjectException
Checks whether the given field is a unique key field.

Parameters:
name - The name of the field.
Returns:
boolean - An indicator of whether the field is a unique key field. True indicates the field is a unique key field; false indicates it is not.
Throws:
ObjectException - Thrown if an error occurs while retrieving the unique key access status of the field.

isKeyValid

public boolean isKeyValid(ObjectKey key)
Checks whether the given key object is valid.

Parameters:
key - The object key (ObjectKey) to check.
Returns:
boolean - An indicator of whether the key is valid. True indicates the key is valid; false indicates it is not.
Throws:
ObjectException - Thrown if an error occurs while checking the key.

isNew

public boolean isNew()
Checks whether the object node is new or already exists in the database.

Parameters:
None.

Returns:
Boolean - An indicator of whether the object node is new. Boolean true indicates the object is new; false indicates the object already exists.
Throws:
None.

isNull

public boolean isNull(java.lang.String name)
               throws ObjectException
Checks whether the given field contains a null value.

Parameters:
name - The name of the field to check.
Returns:
boolean - An indicator of whether the field value is null. True indicates the value of the field is null; false indicates it is not.
Throws:
ObjectException - Thrown if an error occurs while checking the value of the field.

isNullable

public boolean isNullable(java.lang.String name)
                   throws ObjectException
Checks whether the value of the given field can be null.

Parameters:
name - The name of the field.
Returns:
boolean - An indicator of whether the value of field can be null. True indicates the field value can be null; false indicates it cannot.
Throws:
ObjectException - Thrown if an error occurs while checking the field.

isRemoved

public boolean isRemoved()
Checks whether an object node is marked for deletion.

Parameters:
None.

Returns:
boolean - An indicator of whether the field is marked for deletion. True indicates the field is marked for deletion; false indicates it is not.
Throws:
ObjectException - Thrown if an error occurs while retrieving the status of the field.

isSearched

public boolean isSearched(java.lang.String name)
                   throws ObjectException
Checks whether a field is used for searches.

Parameters:
name - The name of the field to check.
Returns:
boolean - An indicator of whether the field is used for searches. True indicates the field is used; false indicates it is not.
Throws:
ObjectException - Thrown if an error occurs while checking the field.

isUpdated

public boolean isUpdated()
Checks whether an object node has been updated during a transaction.

Parameters:
None.

Returns:
boolean - An indicator of whether the object node was updated. True indicates the object was updated; false indicates it was not.
Throws:
ObjectException - Thrown if an error occurs while checking the object.

isVisible

public boolean isVisible(java.lang.String name)
                  throws ObjectException
Checks whether a field is visible on the Enterprise Data Manager (EDM).

Parameters:
name - The name of the field to check.
Returns:
boolean - An indicator of whether the field is visible on the EDM. True indicates the field is visible; false indicates it is not.
Throws:
ObjectException - Thrown if an error occurs while checking the field.

pGetChildren

public java.util.ArrayList pGetChildren()
Retrieves a list of all child nodes in the object node.

Parameters:
None.

Returns:
ArrayList - A list of child object nodes.
Throws:
None.

pGetChildren

public java.util.ArrayList pGetChildren(java.lang.String type)
Retrieves a list of all child nodes of the specified child type.

Parameters:
type - A string containing an object tag.
Returns:
ArrayList - A list of child object nodes.
Throws:
None.

pGetChildTags

public java.util.ArrayList pGetChildTags()
Retrieves a list of the names of the different types of child objects defined in the object node.

Parameters:
None.

Returns:
ArrayList - A list of child object tags.
Throws:
None.

pGetFieldNames

public java.util.ArrayList pGetFieldNames()
Retrieves a list of all field names in the object node.

Parameters:
None.

Returns:
ArrayList - A list of field names.
Throws:
None.

pGetFields

public ObjectField[] pGetFields()
Retrieves an array list of all ObjectField objects in the object node.

Parameters:
None.

Returns:
ObjectField[] - A list of field objects.
Throws:
None.

pGetFieldUpdateLogs

public java.util.ArrayList pGetFieldUpdateLogs()
Retrieves a list of transaction log entries for the object node.

Parameters:
None.

Returns:
ArrayList - A list of transaction log entries.
Throws:
None.

pGetFieldValues

public java.util.ArrayList pGetFieldValues()
Retrieves a list of field values for the fields defined in the object node.

Parameters:
None.

Returns:
ArrayList - A list of transaction log entries.
Throws:
None.

pGetFlagString

public java.lang.String pGetFlagString()
Returns a string representation of the object node, but does not include field details.

Parameters:
None.

Returns:
String - A string representation of the object node.
Throws:
None.

pGetKey

public ObjectKey pGetKey()
                  throws ObjectException
Retrieves the unique key setting for the object node. This includes a list of field names, field types, and field values.

Parameters:
None.

Returns:
ObjectKey - The names, types, and values of the object's unique key fields.
Throws:
ObjectException - Thrown if an error occurs while retrieving the key setting.

pGetSuperKey

public SuperKey pGetSuperKey()
                      throws ObjectException
Retrieves the unique key field setting for the object node. This includes a list field names, field types, and field values. If there are no unique key fields defined for the given object, the object ID is returned.

Parameters:
None.

Returns:
ObjectKey - The names, types, and values of the object's unique key fields.
Throws:
ObjectException - Thrown if an error occurs while retrieving the key setting.

pGetTag

public java.lang.String pGetTag()
Retrieves the tag of the ObjectNode object.

Parameters:
None.

Returns:
String - The tag for the given object.
Throws:
None.

pGetType

public java.lang.String pGetType()
Retrieves the type of the ObjectNode object.

Parameters:
None.

Returns:
String - The object type for the given object.
Throws:
None.

pGetType

public int pGetType(java.lang.String name)
             throws ObjectException
Retrieves a field's data type given the field's name.

Parameters:
name - The name of the field to check.
Returns:
int - An integer representing the field type.
Throws:
ObjectException - Thrown if an error occurs while retrieving the field type.

removeChild

public void removeChild(ObjectNode node)
Removes a child object from the ObjectNode.

Parameters:
node - The child object to remove.
Returns:
void - None.
Throws:
None.

removeChild

public void removeChild(java.lang.String type,
                        ObjectKey objKey)
                 throws ObjectException
Removes a child object from the ObjectNode using the child object tag and object key setting to determine which child object to remove.

Parameters:
type - The child object tag.
objKey - The child object's object key setting.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while removing the child object.

removeChildren

public void removeChildren()
Removes all child objects from the ObjectNode.

Parameters:
None.
Returns:
void - None.
Throws:
None.


removeChildren

public void removeChildren(java.lang.String type)
Removes all child objects of a specific type from the ObjectNode.

Parameters:
type - The type of child object to remove.
Returns:
void - None.
Throws:
None.

reset

public void reset()
Resets all access flags for the object node, but does not reset the flags for any of the child objects in the object node.

Parameters:
None.
Returns:
void - None.
Throws:
None.


resetAll

public void resetAll()
Resets all access flags for the object node, including the flags for the child objects in the object node.

Parameters:
None.
Returns:
void - None.
Throws:
None.


setAddFlag

public void setAddFlag(boolean flag)
Sets the value of the add flag, indicating whether the ObjectNode object is newly added.

Parameters:
flag - A Boolean flag indicating whether the object node is newly added. True indicates the object node is newly added; false indicates it is not.
Returns:
void - None.
Throws:
None.

setChanged

public void setChanged(java.lang.String name,
                       boolean flag)
                throws ObjectException
Sets the value of the field change flag, indicating whether the specified field was changed in the ObjectNode object.

Parameters:
name - The name of the field whose change flag is being set.
flag - A Boolean flag indicating whether the field was updated in the object node. True indicates the field was updated; false indicates it was not.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while setting the flag.

setFieldReadAccess

public void setFieldReadAccess(java.lang.String name,
                               boolean flag)
                        throws ObjectException
Sets the value of a field's read access flag.

Parameters:
name - The name of the field for which the access flag is being set.
flag - A boolean flag indicating whether the field has read access. True indicates the field has read access; false indicates it does not.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while setting the read access flag.

setFieldUpdateAccess

public void setFieldUpdateAccess(java.lang.String name,
                                 boolean flag)
                          throws ObjectException
Sets the value of a field's update access flag.

Parameters:
name - The name of the field for which the update flag is being set.
flag - A boolean flag indicating whether the field has update access. True indicates the field has update access; false indicates it does not.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while setting the update access flag.

setFieldUpdateLogs

public void setFieldUpdateLogs(java.util.ArrayList logs)
Sets a list of transaction log entries.

Parameters:
logs - An array list of transaction log entries.
Returns:
void - None.
Throws:
None.

setFlag

public void setFlag(java.lang.String name,
                    int mask,
                    boolean flag)
             throws ObjectException
Sets a field's bit mask, which indicates whether to update, add, or remove a field. No bit mask indicates that no action is taken against a field. The bit masks are indicated by integers, as described below.

Parameters:
name - The name of the field whose bit mask is being set.
mask - The bit mask indicator for the field.
flag - A boolean flag that indicates...
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while setting the flag.

setKey

public void setKey(ObjectKey key)
            throws ObjectException
Sets the value of the object node's key field.

Parameters:
key - The value to set in the key field.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while setting the flag.

setKeyChangeFlag

public void setKeyChangeFlag(boolean flag)
Sets the value of the key change flag, indicating whether key fields were changed in the ObjectNode object.

Parameters:
flag - A Boolean flag indicating whether key fields were updated in the object node. True indicates key fields were updated; false indicates they were not.
Returns:
void - None.
Throws:
None.

setKeyType

public void setKeyType(java.lang.String name,
                       boolean flag)
                throws ObjectException
Sets a flag indicating whether a field is a key type field or not.

Parameters:
name - The name of the field for which key type flag is being set
flag - A boolean flag indicating whether the field is a key type field. True indicates the field is a key type field; false indicates it is not.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while setting the key type.

setNull

public void setNull(java.lang.String name,
                    boolean flag)
             throws ObjectException
Specifies whether to set a field's value to null.

Parameters:
name - The name of the field for which a null value is being set.
flag - A boolean flag indicating whether the field value is null. Specify true to set a null value in the field; specify false if you do not want to set a null value in the field.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while setting the null value indicator.

setNullable

public void setNullable(java.lang.String name,
                        boolean flag)
                 throws ObjectException
Specifies whether a field can contain a null value.

Parameters:
name - The name of the field for which a null flag is being set.
flag - A boolean flag indicating whether the field can contain a null value. Specify true if the field can be null; specify false if it cannot.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while setting the null flag.

setObjectAddAccess

public void setObjectAddAccess(boolean flag)
Sets the value of the add access flag for the object node, indicating whether the object has add access.

Parameters:
flag - A Boolean flag indicating whether the object node has add access. True indicates the object node has add access; false indicates it does not.
Returns:
void - None.
Throws:
None.

setObjectDeleteAccess

public void setObjectDeleteAccess(boolean flag)
Sets the value of the delete access flag for the object node, indicating whether the object has delete access.

Parameters:
flag - A Boolean flag indicating whether the object node has delete access. True indicates the object node has delete access; false indicates it does not.
Returns:
void - None.
Throws:
None.

setObjectReadAccess

public void setObjectReadAccess(boolean flag)
Sets the value of the read access flag for the object node, indicating whether the object has read access.

Parameters:
flag - A Boolean flag indicating whether the object node has read access. True indicates the object node has read access; false indicates it does not.
Returns:
void - None.
Throws:
None.

setObjectUpdateAccess

public void setObjectUpdateAccess(boolean flag)
Sets the value of the update access flag for the object node, indicating whether the object has update access.

Parameters:
flag - A Boolean flag indicating whether the object node has update access. True indicates the object node has update access; false indicates it does not.
Returns:
void - None.
Throws:
None.

setParent

public void setParent(ObjectNode parent)
Sets the parent object for the object node.

Parameters:
parent - The name of the parent object.
Returns:
void - None.
Throws:
None.

setRemoveFlag

public void setRemoveFlag(boolean flag)
Specifies whether the object node is marked for deletion.

Parameters:
flag - A boolean indicator of whether to mark the object node for deletion. Specify true to mark the object node for deletion; otherwise, specify false.
Returns:
void - None.
Throws:
None.

setSearched

public void setSearched(java.lang.String name,
                        boolean flag)
                 throws ObjectException
Specifies whether the given field is used for searches.

Parameters:
name - The name of the field for which the search flag is being set.
flag - A boolean indicator of whether the field is used for searches. Specify true if the field is used for searches; specify false if it is not.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while setting the search flag.

setUpdateFlag

public void setUpdateFlag(boolean flag)
Specifies whether the given object node was updated.

Parameters:
flag - A boolean indicator of whether the object node was updated. Specify true if the object node was updated; specify false if it was not.
Returns:
void - None.
Throws:
None.

setValue

public void setValue(java.lang.String name,
                     java.lang.Object value)
              throws ObjectException
Sets the value of a field, using the field name to identify the field.

Parameters:
name - The name of the field being updated.
value - The new value for the given field.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while changing the value of the field.

setVisible

public void setVisible(java.lang.String name,
                       boolean flag)
                throws ObjectException
Specifies whether a field is visible on the EDM, using the field name to identify the field.

Parameters:
name - The name of the field.
flag - A boolean indicator of whether the field is visible on the EDM. Specify true if the field is visible; specify false if it is not visible.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while specifying the visibility flag.

structCopy

public ObjectNode structCopy()
                      throws ObjectException
Creates a structural copy of the object node.

Parameters:
None.

Returns:
ObjectNode - A structural copy of the specified object node.
Throws:
ObjectException - Thrown if an error occurs while copying the object node.

toString

public java.lang.String toString()
Returns a string representation of the object node.

Parameters:
None.

Returns:
String - A string representation of the object node.
Throws:
None.

unChange

public void unChange()
              throws ObjectException
Resets the changes made to an object, returning the object to its previous status.

Parameters:
None.
Returns:
void - None.

Throws:
ObjectException - Thrown if an error occurs while reversing the changes to the object.

update

public void update(ObjectNode node,
                   boolean addNewChild,
                   boolean delMissingChild)
            throws ObjectException
Updates an existing object node with the input object node similar to the updateIfChanged method described above. This method updates existing field values with null values from the input node as long as the field being updated is not a key field for the object. This method is currently used by the default survivor calculator.

Parameters:
node - The object node that will update the existing object node.
addNewChild - A flag that indicates whether to add a new child object from the input object node to the existing object node. Boolean true indicates to add the new child object; false indicates the child object should not be added.
delMissingChild - A flag that indicates whether to remove a child object from the existing object node if it does not exist in the input object node. Boolean true indicates to remove the missing child object; false indicates the child object should not be removed.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while updating the object node.

updateChild

public void updateChild(ObjectNode child)
                 throws ObjectException
Updates an existing child object in the object node. If the child object does not exist, this method adds a new child object; otherwise, it updates the existing object.

Parameters:
child - The child object to update or add.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while updating the child object.

updateIfChanged

public void updateIfChanged(ObjectNode node,
                            boolean addNewChild,
                            boolean delMissingChild)
                     throws ObjectException
Updates an existing object node with the input object node, comparing the two nodes first to see if anything is changed. If the object node being updated has child objects, adding and removing child objects is handled based on the specified flags. You can specify whether child objects in the input node that are not in the existing node are added to the existing node during the update. You can also specify whether child objects in the existing node that are missing from the input node are deleted from the existing node during the update.

Parameters:
node - The object node that will update the existing object node.
addNewChild - A flag that indicates whether to add a new child object from the input object node to the existing object node. Boolean true indicates to add the new child object; false indicates the child object should not be added.
delMissingChild - A flag that indicates whether to remove a child object from the existing object node if it does not exist in the input object node. Boolean true indicates to remove the missing child object; false indicates the child object should not be removed.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while updating the object node.

updateIfNotEqual

public void updateIfNotEqual(ObjectNode node,
                             boolean addNewChild,
                             boolean delMissingChild)
                      throws ObjectException
Updates an existing object node with the input object node similar to the updateIfChanged method described above, but does not update field values that are equal between the two nodes.

Parameters:
node - The object node that will update the existing object node.
addNewChild - A flag that indicates whether to add a new child object from the input object node to the existing object node. Boolean true indicates to add the new child object; false indicates the child object should not be added.
delMissingChild - A flag that indicates whether to remove a child object from the existing object node if it does not exist in the input object node. Boolean true indicates to remove the missing child object; false indicates the child object should not be removed.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while updating the object node.

updateIfNotNull

public void updateIfNotNull(ObjectNode node,
                            boolean addNewChild,
                            boolean delMissingChild)
                     throws ObjectException
Updates an existing object node with the input object node similar to the updateIfChanged method described above, but does not update existing field values with null values. This method does not copy the values of the flags isRemoved, isAdded, and isUpdated.

Parameters:
node - The object node that will update the existing object node.
addNewChild - A flag that indicates whether to add a new child object from the input object node to the existing object node. Boolean true indicates to add the new child object; false indicates the child object should not be added.
delMissingChild - A flag that indicates whether to remove a child object from the existing object node if it does not exist in the input object node. Boolean true indicates to remove the missing child object; false indicates the child object should not be removed.
Returns:
void - None.
Throws:
ObjectException - Thrown if an error occurs while updating the object node.


Copyright 2007 by Sun Microsystems, Inc. All Rights Reserved.