Overview | Package | Class | Tree | Deprecated | Index | Help
| © 2004 BEA Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.beasys.commerce.util
Class SoftHashMap

    java.lang.Object
      java.util.AbstractMap
          com.beasys.commerce.util.SoftHashMap

All Implemented Interfaces:
  Cloneable, Map, Serializable

public class SoftHashMap
extends AbstractMap
implements Map, Cloneable, Serializable

A map implemented using SoftReferences to store the values.

Unlike the `java.util.WeakHashMap` implementation, this does not utilize a ReferenceQueue, therefore, the References are cleared immediately, rather than only after a modification to the Map. Additionally, since this uses SoftReferences by default, the Map shouldn't be immediately cleared. Finally, this is also cloneable and serializable.

Since:
  2.0.1-sp1
See Also:
  Serialized Form

Constructor Summary
`SoftHashMap()` Constructs a new, empty `SoftHashMap` with the default capacity and the default load factor, which is `0.75`.
`SoftHashMap(int initialCapacity)` Constructs a new, empty `SoftHashMap` with the given initial capacity and the default load factor, which is `0.75`.
`SoftHashMap(int initialCapacity, float loadFactor)` Constructs a new, empty `SoftHashMap` with the given initial capacity and the given load factor.
`SoftHashMap(Map map)` Constructs a new `SoftHashMap` from the specified Map.

Method Summary
`void` | `clear()` Removes all mappings from this map.
`Object` | `clone()` Return a shallow clone of this map.
`boolean` | `containsKey(Object key)` Returns `true` if this map contains a mapping for the specified key.
`boolean` | `containsValue(Object value)` Returns `true` if this map contains the specified value.
`protected Reference` | `createReference(Object data)` Create a Reference object containing the specified object.
`Set` | `entrySet()` Returns a `Set` view of the mappings in this map.
`Object` | `get(Object key)` Returns the value to which this map maps the specified `key`.
`boolean` | `isEmpty()` Returns `true` if this map contains no key-value mappings.
`Object` | `put(Object key, Object value)` Updates this map so that the given `key` maps to the given `value`.
`Object` | `remove(Object key)` Removes the mapping for the given `key` from this map, if present.
`int` | `size()` Returns the number of key-value mappings in this map.

Methods inherited from class java.util.AbstractMap
`equals, hashCode, keySet, putAll, toString, values`

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

Methods inherited from interface java.util.Map
`equals, hashCode, keySet, putAll, values`

Constructor Detail

### SoftHashMap

    public SoftHashMap()

  Constructs a new, empty `SoftHashMap` with the default capacity and the default load factor, which is `0.75`.

### SoftHashMap

    public SoftHashMap(int initialCapacity)

  Constructs a new, empty `SoftHashMap` with the given initial capacity and the default load factor, which is `0.75`.

Throws:
  `IllegalArgumentException` - If the initial capacity is less than zero

### SoftHashMap

    public SoftHashMap(int initialCapacity,
                       float loadFactor)

  Constructs a new, empty `SoftHashMap` with the given initial capacity and the given load factor.

Throws:
  `IllegalArgumentException` - If the initial capacity is less than zero, or if the load factor is nonpositive

### SoftHashMap

    public SoftHashMap(Map map)

  Constructs a new `SoftHashMap` from the specified Map.

Method Detail

### clear

    public void clear()

  Removes all mappings from this map.

  Specified by:
    `clear` in interface `Map`

### clone

    public Object clone()

  Return a shallow clone of this map.

### containsKey

    public boolean containsKey(Object key)

  Returns `true` if this map contains a mapping for the specified key.

  Specified by:
    `containsKey` in interface `Map`
  Parameters:
    `key` - The key whose presence in this map is to be tested

### containsValue

    public boolean containsValue(Object value)

  Returns `true` if this map contains the specified value.

  Specified by:
    `containsValue` in interface `Map`

### createReference

    protected Reference createReference(Object data)

  Create a Reference object containing the specified object.

  This implementation returns SoftReferences. Subclasses can override to return other Reference types.

  Parameters:
    `data` - the object (can be null).
  Returns:
    a Reference (can be null if data is null).

### entrySet

    public Set entrySet()

  Returns a `Set` view of the mappings in this map.

  Specified by:
    `entrySet` in interface `Map`

### get

    public Object get(Object key)

  Returns the value to which this map maps the specified `key`. If this map does not contain a value for this key, then return `null`.

  Specified by:
    `get` in interface `Map`
  Parameters:
    `key` - The key whose associated value, if any, is to be returned

### isEmpty

    public boolean isEmpty()

  Returns `true` if this map contains no key-value mappings.

  Specified by:
    `isEmpty` in interface `Map`

### put

    public Object put(Object key,
                      Object value)

  Updates this map so that the given `key` maps to the given `value`. If the map previously contained a mapping for `key` then that mapping is replaced and the previous value is returned.

  Specified by:
    `put` in interface `Map`
  Parameters:
    `key` - The key that is to be mapped to the given `value`
    `value` - The value to which the given `key` is to be mapped
  Returns:
    The previous value to which this key was mapped, or `null` if if there was no mapping for the key

### remove

    public Object remove(Object key)

  Removes the mapping for the given `key` from this map, if present.

  Specified by:
    `remove` in interface `Map`
  Parameters:
    `key` - The key whose mapping is to be removed
  Returns:
    The value to which this key was mapped, or `null` if there was no mapping for the key

### size

    public int size()

  Returns the number of key-value mappings in this map. Note: In contrast with most implementations of the `Map` interface, the time required by this operation is linear in the size of the map.

  Specified by:
    `size` in interface `Map`

Overview | Package | Class | Tree | Deprecated | Index | Help
| © 2004 BEA Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2004 BEA Systems, Inc. All Rights Reserved