aleph.dir
Class DirectoryManager

java.lang.Object
  |
  +--aleph.dir.DirectoryManager
Direct Known Subclasses:
ArrowDirectory, HomeDirectory

public abstract class DirectoryManager
extends java.lang.Object

Abstract Class that manages cached copies of GlobalObjects. Any class extending this one must provide a no-arg constructor.

See Also:
GlobalObject

Field Summary
protected static DirectoryManager theManager
           
 
Constructor Summary
DirectoryManager()
           
 
Method Summary
abstract  java.lang.String getLabel()
           
static DirectoryManager getManager()
           
 void newObject(GlobalObject key, java.lang.Object object)
          Register newly-created global object.
abstract  void newObject(GlobalObject key, java.lang.Object object, java.lang.String hint)
          Register newly-created global object.
abstract  java.lang.Object open(GlobalObject object, java.lang.String mode)
          Open a global object in desired mode.
abstract  void release(GlobalObject object)
          Called when object no longer needed.
static void setManager(java.lang.String newManager)
          Change directory managers in mid-stream.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

theManager

protected static DirectoryManager theManager
Constructor Detail

DirectoryManager

public DirectoryManager()
Method Detail

getManager

public static DirectoryManager getManager()

setManager

public static void setManager(java.lang.String newManager)
Change directory managers in mid-stream. Applications should probably not call this method.

newObject

public void newObject(GlobalObject key,
                      java.lang.Object object)
Register newly-created global object.
Parameters:
key - Global object ID
object - Initial state for global object.

newObject

public abstract void newObject(GlobalObject key,
                               java.lang.Object object,
                               java.lang.String hint)
Register newly-created global object.
Parameters:
key - Global object ID
object - Initial state for global object.
hint - String passed to directory

open

public abstract java.lang.Object open(GlobalObject object,
                                      java.lang.String mode)
Open a global object in desired mode. All transaction managers should support at least modes "w" (write) and "r" (read) Unrecognized modes should be treated like "w". Modes are case insensitive.
Parameters:
object - The object to open.
mode - Mode in which to open object.

release

public abstract void release(GlobalObject object)
Called when object no longer needed.
Parameters:
object - Formerly interesting object.

getLabel

public abstract java.lang.String getLabel()
Returns:
who we are