## org.apache.axis.utils
Class LockableHashtable

    java.lang.Object
      java.util.Dictionary
          java.util.Hashtable
              org.apache.axis.utils.LockableHashtable

All Implemented Interfaces:
  java.lang.Cloneable, java.util.Map, java.io.Serializable

public class LockableHashtable
extends java.util.Hashtable

This subclass of the java Hashtable allows individual entries to be "locked" so that their values cannot be overwritten or removed. Note, only the put() and remove() methods have been overridden. The clear() method still removes all entries whether they've been locked or not.

Author:
  James Snell (jasnell@us.ibm.com)
See Also:
  Serialized Form

Constructor Summary
`LockableHashtable()`
`LockableHashtable(int p1)`
`LockableHashtable(int p1, float p2)`
`LockableHashtable(java.util.Map p1)`

Method Summary
`java.lang.Object` `get(java.lang.Object key)` Get an entry from this hashtable, and if we don't find anything, defer to our parent, if any.
`java.util.Set` `getAllKeys()` Returns the keys in this hashtable, and its parent chain
`java.util.Hashtable` `getParent()` Gets the parent Hashtable for this object (if any)
`boolean` `isKeyLocked(java.lang.Object key)` Returns true if a given key is in our locked list
`java.lang.Object` `put(java.lang.Object p1, java.lang.Object p2)` Overrides the Hashtable.put() method to mark items as not being locked.
`java.lang.Object` `put(java.lang.Object p1, java.lang.Object p2, boolean locked)` New version of the put() method that allows for explicitly marking items added to the hashtable as locked.
`java.lang.Object` `remove(java.lang.Object p1)` Checks to see if an item is locked before it is removed.
`void` `setParent(java.util.Hashtable parent)` Set the parent Hashtable for this object

Methods inherited from class java.util.Hashtable
`clear, clone, contains, containsKey, containsValue, elements, entrySet, equals, hashCode, isEmpty, keys, keySet, putAll, rehash, size, toString, values`

Methods inherited from class java.lang.Object
`finalize, getClass, notify, notifyAll, wait, wait, wait`

Constructor Detail

### LockableHashtable

    public LockableHashtable()

### LockableHashtable

    public LockableHashtable(int p1,
                             float p2)

### LockableHashtable

    public LockableHashtable(java.util.Map p1)

### LockableHashtable

    public LockableHashtable(int p1)

Method Detail

### setParent

    public void setParent(java.util.Hashtable parent)

  Set the parent Hashtable for this object

### getParent

    public java.util.Hashtable getParent()

  Gets the parent Hashtable for this object (if any)

### getAllKeys

    public java.util.Set getAllKeys()

  Returns the keys in this hashtable, and its parent chain

### get

    public java.lang.Object get(java.lang.Object key)

  Get an entry from this hashtable, and if we don't find anything, defer to our parent, if any.

### put

    public java.lang.Object put(java.lang.Object p1,
                                java.lang.Object p2,
                                boolean locked)

  New version of the put() method that allows for explicitly marking items added to the hashtable as locked.

### put

    public java.lang.Object put(java.lang.Object p1,
                                java.lang.Object p2)

  Overrides the Hashtable.put() method to mark items as not being locked.

### remove

    public java.lang.Object remove(java.lang.Object p1)

  Checks to see if an item is locked before it is removed.

### isKeyLocked

    public boolean isKeyLocked(java.lang.Object key)

  Returns true if a given key is in our locked list

Copyright © 2005 Apache Web Services Project. All Rights Reserved.