wt.csm.navigation.service
Class ClassificationDBService

java.lang.Object
  extended bywt.csm.navigation.service.ClassificationDBService
All Implemented Interfaces:
Externalizable, Serializable

public class ClassificationDBService
extends Object
implements Externalizable



Supported API: false

Extendable: false

See Also:
Serialized Form

Nested Class Summary
static class ClassificationDBService.ClassificationStructureCache
           
(package private) static class ClassificationDBService.CstructReset
           
 
Field Summary
private static boolean CACHE_VERBOSE
           
private static ClassificationStruct[] classificationStructures
           
private static String CLASSNAME
           
static String COPY_CLASSIFICATION_NODE
           
static String CREATE_CLASSIFICATION_NODE
           
static String CREATE_CLASSIFICATION_STRUCTURE
           
private static ClassificationDBService.ClassificationStructureCache cStructCache
           
private static boolean cStructuresInit1
           
private static boolean cStructuresInit2
           
static String DELETE_CLASSIFICATION_NODE
           
static String DELETE_CLASSIFICATION_STRUCTURE
           
static long EXTERNALIZATION_VERSION_UID
           
private static Object lock
           
protected static long OLD_FORMAT_VERSION_UID
           
private static ArrayList providers
           
private static String RESOURCE
           
(package private) static long serialVersionUID
           
static String UPDATE_CLASSIFICATION_NODE
           
static String UPDATE_CLASSIFICATION_STRUCTURE
           
 
Constructor Summary
ClassificationDBService()
           
 
Method Summary
private  void addListenersToTransaction(Transaction trx, String name)
           
static void addTransactionListenerProvider(TransactionListenerProvider provider)
           
 ClassificationNode copyClassificationNode(ClassificationNodeNodeView sourceClassificationNode, ClassificationNodeNodeView targetParentClassificationNode)
          

Supported API: false
private  void copyCSMConstraints(ClassificationNode newNode, ObjectIdentifier oldID)
           
 ClassificationNode createClassificationNode(ClassificationNodeDefaultView classificationNode, ClassificationNodeDefaultView templateNode, ClassificationStructDefaultView classificationStruct)
          

Supported API: false
 ClassificationStruct createClassificationStructure(ClassificationStructDefaultView classificationStruct)
          

Supported API: false
 void deleteClassificationNode(ClassificationNodeNodeView classificationNode)
          

Supported API: false
 void deleteClassificationStructure(ClassificationStructDefaultView classificationStruct)
          

Supported API: false
private  void deleteCSMConstraints(ClassificationNode node)
           
 ClassificationStruct[] getAllClassificationStructures()
          

Supported API: false
 ClassificationNode[] getClassificationNodeChildren(ClassificationNodeNodeView classificationNode)
          

Supported API: false
 ClassificationNode getClassificationNodeDefaultView(ClassificationNodeNodeView classificationNode)
          

Supported API: false
 ClassificationNode getClassificationNodeDefaultView(LiteIBAReferenceable referencedObject)
          

Supported API: false
 ClassificationNode[] getClassificationNodeLineage(ClassificationNodeNodeView parentNode, ClassificationNodeNodeView childNode)
          

Supported API: false
 ClassificationStruct getClassificationStructDefaultView(String primaryClassName)
          

Supported API: false
 ClassificationStruct getClassificationStructureDefaultView(ClassificationNodeDefaultView classificationNode)
          

Supported API: false
 ClassificationNode[] getClassificationStructureRootNodes(ClassificationStructDefaultView classificationStruct)
          

Supported API: false
protected  CSMContainerConstraint[] getCSMContainerConstraints(ObjectIdentifier oi)
           
protected  CSMSingleDefConstraint[] getCSMSingleDefConstraints(ObjectIdentifier oi)
           
protected  ClassificationNode[] getHeavyClassificationNodeChildren(ClassificationNode node)
           
private  void getNodesInTheLineage(ClassificationNode parentNode, ClassificationNode childNode, Vector v)
           
 ClassificationNode getParentNodeDefaultView(ClassificationNodeDefaultView classificationNode)
          

Supported API: false
private  boolean hasValidLineage(ObjectIdentifier nodeID, ClassificationNode parent)
           
private  boolean hasValidName(String sourceName, ClassificationNode[] siblings)
           
protected  boolean isInUse(ClassificationNode node)
           
protected  boolean isInUse(ClassificationStruct struct)
           
private  void persistCSMConstraints(ClassificationNodeDefaultView node, ClassificationNode heavyNode, boolean recurse)
           
 void readExternal(ObjectInput input)
          Reads the non-transient fields of this class from an external source.
private  boolean readOldVersion(ObjectInput input, long readSerialVersionUID, boolean passThrough, boolean superDone)
          Reads the non-transient fields of this class from an external source, which is not the current version.
protected  boolean readVersion(ClassificationDBService thisObject, ObjectInput input, long readSerialVersionUID, boolean passThrough, boolean superDone)
          Reads the non-transient fields of this class from an external source.
private  void recurseCopyAttributesToChildren(ClassificationNode[] children, Vector nodeV, AbstractValueView[] newValues, AbstractValueView[] deletedValues, AbstractCSMAttributeConstraintView[] newConstraints)
           
protected  void recurseCopyNode(ClassificationNode parent, ClassificationNode[] children)
           
protected  void recurseDeleteNode(ClassificationNode[] children)
           
protected  void recurseUpdateClassificationNode(ClassificationNode parent, ClassificationNode[] children)
           
 ClassificationNode[] recursiveCopyAttributes(ClassificationNodeDefaultView classificationNode)
          

Supported API: false
 ClassificationNode refreshClassificationNodeDefaultView(ClassificationNodeDefaultView classificationNode)
          

Supported API: false
 ClassificationNode refreshClassificationNodeNodeView(ClassificationNodeNodeView classificationNode)
          

Supported API: false
 ClassificationStruct refreshClassificationStructure(ClassificationStructDefaultView classificationStruct)
          

Supported API: false
static void removeTransactionListenerProvider(TransactionListenerProvider provider)
           
static boolean resetClassificationStructures()
           
static void setClassificationStructures()
           
static void setClassificationStructures(boolean value)
           
 ClassificationNode updateClassificationNode(ClassificationNodeDefaultView classificationNode)
          

Supported API: false
 ClassificationNode updateClassificationNode(ClassificationNodeNodeView classificationNode)
          

Supported API: false
 ClassificationStruct updateClassificationStructure(ClassificationStructDefaultView classificationStruct)
          

Supported API: false
 void writeExternal(ObjectOutput output)
          Writes the non-transient fields of this class to an external source.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

RESOURCE

private static final String RESOURCE
See Also:
Constant Field Values

CLASSNAME

private static final String CLASSNAME

serialVersionUID

static final long serialVersionUID
See Also:
Constant Field Values

EXTERNALIZATION_VERSION_UID

public static final long EXTERNALIZATION_VERSION_UID
See Also:
Constant Field Values

OLD_FORMAT_VERSION_UID

protected static final long OLD_FORMAT_VERSION_UID
See Also:
Constant Field Values

lock

private static Object lock

cStructuresInit1

private static volatile boolean cStructuresInit1

cStructuresInit2

private static volatile boolean cStructuresInit2

classificationStructures

private static volatile ClassificationStruct[] classificationStructures

cStructCache

private static ClassificationDBService.ClassificationStructureCache cStructCache

CACHE_VERBOSE

private static boolean CACHE_VERBOSE

providers

private static ArrayList providers

CREATE_CLASSIFICATION_STRUCTURE

public static final String CREATE_CLASSIFICATION_STRUCTURE
See Also:
Constant Field Values

UPDATE_CLASSIFICATION_STRUCTURE

public static final String UPDATE_CLASSIFICATION_STRUCTURE
See Also:
Constant Field Values

DELETE_CLASSIFICATION_STRUCTURE

public static final String DELETE_CLASSIFICATION_STRUCTURE
See Also:
Constant Field Values

CREATE_CLASSIFICATION_NODE

public static final String CREATE_CLASSIFICATION_NODE
See Also:
Constant Field Values

UPDATE_CLASSIFICATION_NODE

public static final String UPDATE_CLASSIFICATION_NODE
See Also:
Constant Field Values

DELETE_CLASSIFICATION_NODE

public static final String DELETE_CLASSIFICATION_NODE
See Also:
Constant Field Values

COPY_CLASSIFICATION_NODE

public static final String COPY_CLASSIFICATION_NODE
See Also:
Constant Field Values
Constructor Detail

ClassificationDBService

public ClassificationDBService()
Method Detail

writeExternal

public void writeExternal(ObjectOutput output)
                   throws IOException
Writes the non-transient fields of this class to an external source.

Supported API: false

Specified by:
writeExternal in interface Externalizable
Parameters:
output -
Throws:
IOException

readExternal

public void readExternal(ObjectInput input)
                  throws IOException,
                         ClassNotFoundException
Reads the non-transient fields of this class from an external source.

Supported API: false

Specified by:
readExternal in interface Externalizable
Parameters:
input -
Throws:
IOException
ClassNotFoundException

readVersion

protected boolean readVersion(ClassificationDBService thisObject,
                              ObjectInput input,
                              long readSerialVersionUID,
                              boolean passThrough,
                              boolean superDone)
                       throws IOException,
                              ClassNotFoundException
Reads the non-transient fields of this class from an external source.

Supported API: false

Parameters:
thisObject -
input -
readSerialVersionUID -
passThrough -
superDone -
Returns:
boolean
Throws:
IOException
ClassNotFoundException

readOldVersion

private boolean readOldVersion(ObjectInput input,
                               long readSerialVersionUID,
                               boolean passThrough,
                               boolean superDone)
                        throws IOException,
                               ClassNotFoundException
Reads the non-transient fields of this class from an external source, which is not the current version.

Parameters:
input -
readSerialVersionUID -
passThrough -
superDone -
Returns:
boolean
Throws:
IOException
ClassNotFoundException

getAllClassificationStructures

public ClassificationStruct[] getAllClassificationStructures()
                                                      throws CSMClassificationNavigationException,
                                                             WTException


Supported API: false

Returns:
ClassificationStruct[]
Throws:
CSMClassificationNavigationException
WTException

getClassificationStructDefaultView

public ClassificationStruct getClassificationStructDefaultView(String primaryClassName)
                                                        throws CSMClassificationNavigationException,
                                                               WTException


Supported API: false

Parameters:
primaryClassName -
Returns:
ClassificationStruct
Throws:
CSMClassificationNavigationException
WTException

getClassificationStructureRootNodes

public ClassificationNode[] getClassificationStructureRootNodes(ClassificationStructDefaultView classificationStruct)
                                                         throws CSMClassificationNavigationException,
                                                                WTException


Supported API: false

Parameters:
classificationStruct -
Returns:
ClassificationNode[]
Throws:
CSMClassificationNavigationException
WTException

getClassificationNodeChildren

public ClassificationNode[] getClassificationNodeChildren(ClassificationNodeNodeView classificationNode)
                                                   throws CSMClassificationNavigationException,
                                                          WTException


Supported API: false

Parameters:
classificationNode -
Returns:
ClassificationNode[]
Throws:
CSMClassificationNavigationException
WTException

updateClassificationStructure

public ClassificationStruct updateClassificationStructure(ClassificationStructDefaultView classificationStruct)
                                                   throws CSMClassificationNavigationException,
                                                          NotAuthorizedException,
                                                          WTException


Supported API: false

Parameters:
classificationStruct -
Returns:
ClassificationStruct
Throws:
CSMClassificationNavigationException
NotAuthorizedException
WTException

deleteClassificationStructure

public void deleteClassificationStructure(ClassificationStructDefaultView classificationStruct)
                                   throws CSMClassificationNavigationException,
                                          NotAuthorizedException,
                                          WTException


Supported API: false

Parameters:
classificationStruct -
Throws:
CSMClassificationNavigationException
NotAuthorizedException
WTException

refreshClassificationStructure

public ClassificationStruct refreshClassificationStructure(ClassificationStructDefaultView classificationStruct)
                                                    throws CSMClassificationNavigationException,
                                                           WTException


Supported API: false

Parameters:
classificationStruct -
Returns:
ClassificationStruct
Throws:
CSMClassificationNavigationException
WTException

createClassificationStructure

public ClassificationStruct createClassificationStructure(ClassificationStructDefaultView classificationStruct)
                                                   throws CSMClassificationNavigationException,
                                                          NotAuthorizedException,
                                                          WTException


Supported API: false

Parameters:
classificationStruct -
Returns:
ClassificationStruct
Throws:
CSMClassificationNavigationException
NotAuthorizedException
WTException

getClassificationNodeDefaultView

public ClassificationNode getClassificationNodeDefaultView(ClassificationNodeNodeView classificationNode)
                                                    throws CSMClassificationNavigationException,
                                                           WTException


Supported API: false

Parameters:
classificationNode -
Returns:
ClassificationNode
Throws:
CSMClassificationNavigationException
WTException

getClassificationNodeDefaultView

public ClassificationNode getClassificationNodeDefaultView(LiteIBAReferenceable referencedObject)
                                                    throws CSMClassificationNavigationException,
                                                           WTException


Supported API: false

Parameters:
referencedObject -
Returns:
ClassificationNode
Throws:
CSMClassificationNavigationException
WTException

deleteClassificationNode

public void deleteClassificationNode(ClassificationNodeNodeView classificationNode)
                              throws CSMClassificationNavigationException,
                                     NotAuthorizedException,
                                     WTException


Supported API: false

Parameters:
classificationNode -
Throws:
CSMClassificationNavigationException
NotAuthorizedException
WTException

copyClassificationNode

public ClassificationNode copyClassificationNode(ClassificationNodeNodeView sourceClassificationNode,
                                                 ClassificationNodeNodeView targetParentClassificationNode)
                                          throws CSMClassificationNavigationException,
                                                 NotAuthorizedException,
                                                 WTException


Supported API: false

Parameters:
sourceClassificationNode -
targetParentClassificationNode -
Returns:
ClassificationNode
Throws:
CSMClassificationNavigationException
NotAuthorizedException
WTException

refreshClassificationNodeNodeView

public ClassificationNode refreshClassificationNodeNodeView(ClassificationNodeNodeView classificationNode)
                                                     throws CSMClassificationNavigationException,
                                                            WTException


Supported API: false

Parameters:
classificationNode -
Returns:
ClassificationNode
Throws:
CSMClassificationNavigationException
WTException

createClassificationNode

public ClassificationNode createClassificationNode(ClassificationNodeDefaultView classificationNode,
                                                   ClassificationNodeDefaultView templateNode,
                                                   ClassificationStructDefaultView classificationStruct)
                                            throws CSMClassificationNavigationException,
                                                   NotAuthorizedException,
                                                   WTException


Supported API: false

Parameters:
classificationNode -
templateNode -
classificationStruct -
Returns:
ClassificationNode
Throws:
CSMClassificationNavigationException
NotAuthorizedException
WTException

updateClassificationNode

public ClassificationNode updateClassificationNode(ClassificationNodeDefaultView classificationNode)
                                            throws CSMClassificationNavigationException,
                                                   NotAuthorizedException,
                                                   WTException


Supported API: false

Parameters:
classificationNode -
Returns:
ClassificationNode
Throws:
CSMClassificationNavigationException
NotAuthorizedException
WTException

updateClassificationNode

public ClassificationNode updateClassificationNode(ClassificationNodeNodeView classificationNode)
                                            throws CSMClassificationNavigationException,
                                                   NotAuthorizedException,
                                                   WTException


Supported API: false

Parameters:
classificationNode -
Returns:
ClassificationNode
Throws:
CSMClassificationNavigationException
NotAuthorizedException
WTException

refreshClassificationNodeDefaultView

public ClassificationNode refreshClassificationNodeDefaultView(ClassificationNodeDefaultView classificationNode)
                                                        throws CSMClassificationNavigationException,
                                                               WTException


Supported API: false

Parameters:
classificationNode -
Returns:
ClassificationNode
Throws:
CSMClassificationNavigationException
WTException

getClassificationStructureDefaultView

public ClassificationStruct getClassificationStructureDefaultView(ClassificationNodeDefaultView classificationNode)
                                                           throws CSMClassificationNavigationException,
                                                                  WTException


Supported API: false

Parameters:
classificationNode -
Returns:
ClassificationStruct
Throws:
CSMClassificationNavigationException
WTException

getParentNodeDefaultView

public ClassificationNode getParentNodeDefaultView(ClassificationNodeDefaultView classificationNode)
                                            throws CSMClassificationNavigationException,
                                                   WTException


Supported API: false

Parameters:
classificationNode -
Returns:
ClassificationNode
Throws:
CSMClassificationNavigationException
WTException

getClassificationNodeLineage

public ClassificationNode[] getClassificationNodeLineage(ClassificationNodeNodeView parentNode,
                                                         ClassificationNodeNodeView childNode)
                                                  throws CSMClassificationNavigationException,
                                                         WTException


Supported API: false

Parameters:
parentNode -
childNode -
Returns:
ClassificationNode[]
Throws:
CSMClassificationNavigationException
WTException

recursiveCopyAttributes

public ClassificationNode[] recursiveCopyAttributes(ClassificationNodeDefaultView classificationNode)
                                             throws CSMClassificationNavigationException,
                                                    NotAuthorizedException,
                                                    WTException


Supported API: false

Parameters:
classificationNode -
Returns:
ClassificationNode[]
Throws:
CSMClassificationNavigationException
NotAuthorizedException
WTException

addTransactionListenerProvider

public static void addTransactionListenerProvider(TransactionListenerProvider provider)

removeTransactionListenerProvider

public static void removeTransactionListenerProvider(TransactionListenerProvider provider)

addListenersToTransaction

private void addListenersToTransaction(Transaction trx,
                                       String name)

getHeavyClassificationNodeChildren

protected ClassificationNode[] getHeavyClassificationNodeChildren(ClassificationNode node)
                                                           throws CSMClassificationNavigationException,
                                                                  WTException
Throws:
CSMClassificationNavigationException
WTException

recurseDeleteNode

protected void recurseDeleteNode(ClassificationNode[] children)
                          throws CSMClassificationNavigationException,
                                 WTException
Throws:
CSMClassificationNavigationException
WTException

hasValidLineage

private boolean hasValidLineage(ObjectIdentifier nodeID,
                                ClassificationNode parent)
                         throws WTException
Throws:
WTException

hasValidName

private boolean hasValidName(String sourceName,
                             ClassificationNode[] siblings)

recurseUpdateClassificationNode

protected void recurseUpdateClassificationNode(ClassificationNode parent,
                                               ClassificationNode[] children)
                                        throws CSMClassificationNavigationException,
                                               WTException
Throws:
CSMClassificationNavigationException
WTException

recurseCopyNode

protected void recurseCopyNode(ClassificationNode parent,
                               ClassificationNode[] children)
                        throws CSMClassificationNavigationException,
                               WTException
Throws:
CSMClassificationNavigationException
WTException

getNodesInTheLineage

private void getNodesInTheLineage(ClassificationNode parentNode,
                                  ClassificationNode childNode,
                                  Vector v)

persistCSMConstraints

private void persistCSMConstraints(ClassificationNodeDefaultView node,
                                   ClassificationNode heavyNode,
                                   boolean recurse)
                            throws CSMClassificationNavigationException,
                                   NotAuthorizedException,
                                   WTException
Throws:
CSMClassificationNavigationException
NotAuthorizedException
WTException

deleteCSMConstraints

private void deleteCSMConstraints(ClassificationNode node)
                           throws CSMClassificationNavigationException,
                                  NotAuthorizedException,
                                  WTException
Throws:
CSMClassificationNavigationException
NotAuthorizedException
WTException

copyCSMConstraints

private void copyCSMConstraints(ClassificationNode newNode,
                                ObjectIdentifier oldID)
                         throws CSMClassificationNavigationException,
                                NotAuthorizedException,
                                WTException
Throws:
CSMClassificationNavigationException
NotAuthorizedException
WTException

getCSMContainerConstraints

protected CSMContainerConstraint[] getCSMContainerConstraints(ObjectIdentifier oi)
                                                       throws CSMClassificationNavigationException,
                                                              WTException
Throws:
CSMClassificationNavigationException
WTException

getCSMSingleDefConstraints

protected CSMSingleDefConstraint[] getCSMSingleDefConstraints(ObjectIdentifier oi)
                                                       throws CSMClassificationNavigationException,
                                                              WTException
Throws:
CSMClassificationNavigationException
WTException

isInUse

protected boolean isInUse(ClassificationStruct struct)
                   throws WTException,
                          CSMClassificationNavigationException
Throws:
WTException
CSMClassificationNavigationException

isInUse

protected boolean isInUse(ClassificationNode node)
                   throws WTException,
                          CSMClassificationNavigationException
Throws:
WTException
CSMClassificationNavigationException

recurseCopyAttributesToChildren

private void recurseCopyAttributesToChildren(ClassificationNode[] children,
                                             Vector nodeV,
                                             AbstractValueView[] newValues,
                                             AbstractValueView[] deletedValues,
                                             AbstractCSMAttributeConstraintView[] newConstraints)
                                      throws WTException
Throws:
WTException

resetClassificationStructures

public static boolean resetClassificationStructures()

setClassificationStructures

public static void setClassificationStructures(boolean value)

setClassificationStructures

public static void setClassificationStructures()