wt.doc
Class DocumentStructureNavigatorFactory

java.lang.Object
  extended bywt.doc.DocumentStructureNavigatorFactory
All Implemented Interfaces:
Externalizable, Serializable

public class DocumentStructureNavigatorFactory
extends Object
implements Externalizable

This class provides static methods for creating document structure navigators. It provides methods for several basic types of document structure navigation. Once a navigator is created, it can be set up with a visitor and the traverse method can be called. The methods in this class hide the details involved with setting up a particular structure navigation.

Supported API: true

Extendable: false

See Also:
Navigator, ConfigSpecNodeExpander, Serialized Form

Field Summary
static int BREADTH_FIRST_NAVIGATOR
          Used to specify a breadth first navigation.
private static String CLASSNAME
           
static int DEPTH_FIRST_NAVIGATOR
          Used to specify a depth first navigation.
static long EXTERNALIZATION_VERSION_UID
           
protected static long OLD_FORMAT_VERSION_UID
           
private static String RESOURCE
           
(package private) static long serialVersionUID
           
 
Constructor Summary
DocumentStructureNavigatorFactory()
           
 
Method Summary
static Navigator newDocumentNavigator(ConfigSpec a_configSpec, int a_navigatorType)
          This method creates a Navigator for traversing the "uses" links of a Document structure.
static Navigator newDocumentNavigator(WTDocumentConfigSpec a_configSpec, int a_navigatorType)
          This method creates a Navigator for traversing the "uses" links of a Document structure.
static Navigator newNavigator(ConfigSpec a_configSpec, int a_navigatorType)
          This method creates a Navigator for traversing the "uses" links of a Document structure via the generic IteratedUsageLink class.
private static Navigator newNavigator(int a_navigatorType)
           
 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(DocumentStructureNavigatorFactory thisObject, ObjectInput input, long readSerialVersionUID, boolean passThrough, boolean superDone)
          Reads the non-transient fields of this class from an external source.
 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

DEPTH_FIRST_NAVIGATOR

public static final int DEPTH_FIRST_NAVIGATOR
Used to specify a depth first navigation.

Supported API: true

See Also:
Constant Field Values

BREADTH_FIRST_NAVIGATOR

public static final int BREADTH_FIRST_NAVIGATOR
Used to specify a breadth first navigation.

Supported API: true

See Also:
Constant Field Values

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
Constructor Detail

DocumentStructureNavigatorFactory

public DocumentStructureNavigatorFactory()
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(DocumentStructureNavigatorFactory 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

newDocumentNavigator

public static Navigator newDocumentNavigator(WTDocumentConfigSpec a_configSpec,
                                             int a_navigatorType)
                                      throws WTPropertyVetoException
This method creates a Navigator for traversing the "uses" links of a Document structure. The navigation can be specified as DEPTH_FIRST_NAVIGATOR or BREADTH_FIRST_NAVIGATOR.

Supported API: true

Parameters:
a_configSpec -
a_navigatorType -
Returns:
Navigator
Throws:
WTPropertyVetoException

newNavigator

public static Navigator newNavigator(ConfigSpec a_configSpec,
                                     int a_navigatorType)
                              throws WTPropertyVetoException
This method creates a Navigator for traversing the "uses" links of a Document structure via the generic IteratedUsageLink class. The navigation can be specified as DEPTH_FIRST_NAVIGATOR or BREADTH_FIRST_NAVIGATOR.

Supported API: true

Parameters:
a_configSpec -
a_navigatorType -
Returns:
Navigator
Throws:
WTPropertyVetoException

newDocumentNavigator

public static Navigator newDocumentNavigator(ConfigSpec a_configSpec,
                                             int a_navigatorType)
                                      throws WTPropertyVetoException
This method creates a Navigator for traversing the "uses" links of a Document structure. The navigation can be specified as DEPTH_FIRST_NAVIGATOR or BREADTH_FIRST_NAVIGATOR.

Supported API: true

Parameters:
a_configSpec -
a_navigatorType -
Returns:
Navigator
Throws:
WTPropertyVetoException

newNavigator

private static Navigator newNavigator(int a_navigatorType)