This class has the functionality of providing a virtual directory tree where different sub-librarians can be placed at specific locations inside the virtual directory structure. For example, you may wish to publish a directory called "/archives" which publishes information out of an archiving system like CVS, and a separate directory called "/test" which publishes information out of a local filesystem.
When a librarian is mounted to a particular location, any components and directories that are available via a librarian mounted higher up in the directory tree are hidden. For example, if you have a filesytem published at the root ("" or "/") and a CVS archive published at "/archive", the CVS archive will hide a directory called "archive" in the filesystem.
This class will automatically add empty directories as necessary to ensure that you can "browse" to a mount point. For example, if you have not mounted anything to the root ("" or "/"), you can still mount to a subdirectory like "mount/here" and this class will create the empty directory "mount". Only one librarian can be mounted in a given location. Use a Librarian Combiner to put multiple librarians in the same place.
The XML initialization information for this class is simply a list of <librarian> tags which contain <className>, <mountPoint>, and <librarianOptions> tags inside.
<librarianOptions> <librarian> <mountPoint>/mountHere</mountPoint> <className>com.phoenix_int.aserver.library.PHXDirectoryLibrarian</className> <librarianOptions> ... </librarianOptions> </librarian> <librarian> .... </librarian> </librarianOptions>