alma::acs::entityutil::EntityRefFinder Class Reference

List of all members.

Public Member Functions

 EntityRefFinder ()
 EntityRefFinder (boolean debug)
EntityRefT[] findEntityReferences (Object rootEntityObject) throws EntityException

Private Member Functions

void recursiveFindEntityReferences (Object obj, ArrayList< EntityRefT > entityRefs) throws EntityException

Private Attributes

boolean m_debug

Detailed Description

Takes an entity object (binding class) and traverses the tree to find references (EntityRefT nodes) to other entity objects.

Currently specific to XML binding classes produced by the Castor framework; should be not too hard though to adapt to others (mainly enumeration stuff)

Assumes that it's a tree, not a graph (therefore no checks whether a node has been visited already). On a graph this could lead to an infinite loop.

Possible optimization would be to compute on demand a list of Class objects for which we know that they can't have EntityRefT children, and to subsequently stop the recursion there.

Author:
hsommer Apr 24, 2003 2:05:43 PM

Constructor & Destructor Documentation

alma::acs::entityutil::EntityRefFinder::EntityRefFinder (  )  [inline]
alma::acs::entityutil::EntityRefFinder::EntityRefFinder ( boolean  debug  )  [inline]

References m_debug.


Member Function Documentation

EntityRefT [] alma::acs::entityutil::EntityRefFinder::findEntityReferences ( Object  rootEntityObject  )  throws EntityException [inline]
void alma::acs::entityutil::EntityRefFinder::recursiveFindEntityReferences ( Object  obj,
ArrayList< EntityRefT >  entityRefs 
) throws EntityException [inline, private]

References m_debug.

Referenced by findEntityReferences().


Member Data Documentation


The documentation for this class was generated from the following file:

Generated by  doxygen 1.6.2