org.PingOO.DLAI.lib.directorytree
Class DirectoryTreeFormatter

java.lang.Object
  |
  +--org.PingOO.DLAI.lib.directorytree.DirectoryTreeFormatter

public final class DirectoryTreeFormatter
extends java.lang.Object

Parses a value hastable into a directory tree.

Since:
PingOO 2.0
Version:
2.0
Author:
Fabrice Bouyé (bouye@cur-archamps.fr)

Field Summary
private static java.lang.String ADMINISTRATOR_ALIAS_TYPE
          Defines an administrator alias.
private static java.lang.String COUNTRY_NODE_TYPE
          Defines a country node.
private static java.lang.String DEPARTEMENT_NODE_TYPE
          Defines a departement node.
private static java.lang.String LIST_GROUP_TYPE
          Defines a list group.
private static java.lang.String LIST_HOME_TYPE
          Defines a list home.
private static java.lang.String LIST_SHEET_TYPE
          Defines a list.
private static java.lang.String ORGANIZATION_NODE_TYPE
          Defines an organization node.
private static java.lang.String PEOPLE_HOME_TYPE
          Defines a user group home.
private static java.lang.String RESOURCE_ALIAS_TYPE
          Defines a resource sheet.
private static java.lang.String RESOURCE_GROUP_TYPE
          Defines a resource node.
private static java.lang.String RESOURCE_HOME_TYPE
          Defines a resource home.
private static java.lang.String RESOURCE_SHEET_TYPE
          Defines a resource sheet.
private static java.lang.String SECTION_NODE_TYPE
          Defines a section node.
private static java.lang.String USER_ALIAS_TYPE
          Defines a user alias.
private static java.lang.String USER_GROUP_TYPE
          Defines a user group.
private static java.lang.String USER_SHEET_TYPE
          Defines a user sheet.
 
Constructor Summary
private DirectoryTreeFormatter()
          Hides the constructor from the outside.
 
Method Summary
private static DirectoryComponent createLeaf(java.lang.String name, java.lang.String type)
          Creates a leaf (an empty component).
private static GroupNode createNode(java.lang.String name, java.lang.String type, ValueHashtable groupTable, DirectoryTreeModel model)
          Generates a node.
private static DirectoryComponent initialize(java.lang.String dn)
          Creates the non-expanded path by analyzing the dn string.
static DirectoryComponent parseIn(java.lang.String dn)
          Parse a value hastable into a directory tree.
static DirectoryComponent parseIn(java.lang.String dn, ValueHashtable directoryTable)
          Parse a value hastable into a directory tree.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

COUNTRY_NODE_TYPE

private static java.lang.String COUNTRY_NODE_TYPE
Defines a country node.

DEPARTEMENT_NODE_TYPE

private static java.lang.String DEPARTEMENT_NODE_TYPE
Defines a departement node.

SECTION_NODE_TYPE

private static java.lang.String SECTION_NODE_TYPE
Defines a section node.

ORGANIZATION_NODE_TYPE

private static java.lang.String ORGANIZATION_NODE_TYPE
Defines an organization node.

USER_SHEET_TYPE

private static java.lang.String USER_SHEET_TYPE
Defines a user sheet.

USER_ALIAS_TYPE

private static java.lang.String USER_ALIAS_TYPE
Defines a user alias.

ADMINISTRATOR_ALIAS_TYPE

private static java.lang.String ADMINISTRATOR_ALIAS_TYPE
Defines an administrator alias.

USER_GROUP_TYPE

private static java.lang.String USER_GROUP_TYPE
Defines a user group.

PEOPLE_HOME_TYPE

private static java.lang.String PEOPLE_HOME_TYPE
Defines a user group home.

RESOURCE_SHEET_TYPE

private static java.lang.String RESOURCE_SHEET_TYPE
Defines a resource sheet.

RESOURCE_ALIAS_TYPE

private static java.lang.String RESOURCE_ALIAS_TYPE
Defines a resource sheet.

RESOURCE_GROUP_TYPE

private static java.lang.String RESOURCE_GROUP_TYPE
Defines a resource node.

RESOURCE_HOME_TYPE

private static java.lang.String RESOURCE_HOME_TYPE
Defines a resource home.

LIST_SHEET_TYPE

private static java.lang.String LIST_SHEET_TYPE
Defines a list.

LIST_GROUP_TYPE

private static java.lang.String LIST_GROUP_TYPE
Defines a list group.

LIST_HOME_TYPE

private static java.lang.String LIST_HOME_TYPE
Defines a list home.
Constructor Detail

DirectoryTreeFormatter

private DirectoryTreeFormatter()
Hides the constructor from the outside.
Method Detail

parseIn

public static DirectoryComponent parseIn(java.lang.String dn)
                                  throws java.lang.NullPointerException
Parse a value hastable into a directory tree.
Parameters:
dn - The fixed path to the node that will be edited.
Returns:
A directory tree created from the value hastable or null.
Throws:
java.lang.NullPointerException - if dn is null

parseIn

public static DirectoryComponent parseIn(java.lang.String dn,
                                         ValueHashtable directoryTable)
                                  throws java.lang.NullPointerException
Parse a value hastable into a directory tree.
Parameters:
dn - The fixed path to the node that will be edited.
directoryTable - The expanded content
Returns:
A directory tree created from the value hastable or null.
Throws:
java.lang.NullPointerException - if dn is null

initialize

private static DirectoryComponent initialize(java.lang.String dn)
Creates the non-expanded path by analyzing the dn string.
Parameters:
dn - The string to be parsed.
Returns:
The component to be expanded (the leaf at the end of the non-expanded path), or null in case of problems.

createNode

private static GroupNode createNode(java.lang.String name,
                                    java.lang.String type,
                                    ValueHashtable groupTable,
                                    DirectoryTreeModel model)
Generates a node.
Parameters:
name - The name of this node.
groupTable - The underlying nodes and leaves.
Returns:
A node or null.

createLeaf

private static DirectoryComponent createLeaf(java.lang.String name,
                                             java.lang.String type)
Creates a leaf (an empty component).
The default component type is a group.
Parameters:
name - The name of the leaf.
type - The type of the leaf.
Returns:
A leaf or null.