org.apache.batik.util
Class SoftDoublyIndexedTable

java.lang.Object
  |
  +--org.apache.batik.util.SoftDoublyIndexedTable

public class SoftDoublyIndexedTable
extends java.lang.Object

This class represents a doubly indexed hash table, which holds soft references to the contained values..


Inner Class Summary
protected  class SoftDoublyIndexedTable.Entry
          To manage collisions
 
Field Summary
protected  int count
          The number of entries
protected static int INITIAL_CAPACITY
          The initial capacity
protected  java.lang.ref.ReferenceQueue referenceQueue
          The reference queue.
protected  SoftDoublyIndexedTable.Entry[] table
          The underlying array
 
Constructor Summary
SoftDoublyIndexedTable()
          Creates a new SoftDoublyIndexedTable.
SoftDoublyIndexedTable(int c)
          Creates a new DoublyIndexedTable.
 
Method Summary
 void clear()
          Clears the table.
 java.lang.Object get(java.lang.Object o1, java.lang.Object o2)
          Gets the value of a variable
protected  int hashCode(java.lang.Object o1, java.lang.Object o2)
          Computes a hash code corresponding to the given objects.
 java.lang.Object put(java.lang.Object o1, java.lang.Object o2, java.lang.Object value)
          Sets a new value for the given variable
protected  void rehash()
          Rehash the table
protected  void removeClearedEntries()
          Removes the cleared entries.
 int size()
          Returns the size of this table.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

INITIAL_CAPACITY

protected static final int INITIAL_CAPACITY
The initial capacity

table

protected SoftDoublyIndexedTable.Entry[] table
The underlying array

count

protected int count
The number of entries

referenceQueue

protected java.lang.ref.ReferenceQueue referenceQueue
The reference queue.
Constructor Detail

SoftDoublyIndexedTable

public SoftDoublyIndexedTable()
Creates a new SoftDoublyIndexedTable.

SoftDoublyIndexedTable

public SoftDoublyIndexedTable(int c)
Creates a new DoublyIndexedTable.
Parameters:
c - The inital capacity.
Method Detail

size

public int size()
Returns the size of this table.

get

public java.lang.Object get(java.lang.Object o1,
                            java.lang.Object o2)
Gets the value of a variable
Returns:
the value or null

put

public java.lang.Object put(java.lang.Object o1,
                            java.lang.Object o2,
                            java.lang.Object value)
Sets a new value for the given variable
Returns:
the old value or null

clear

public void clear()
Clears the table.

rehash

protected void rehash()
Rehash the table

hashCode

protected int hashCode(java.lang.Object o1,
                       java.lang.Object o2)
Computes a hash code corresponding to the given objects.

removeClearedEntries

protected void removeClearedEntries()
Removes the cleared entries.


Copyright © 2002 Apache Software Foundation. All Rights Reserved.