EDU.oswego.cs.dl.util.concurrent
Class SyncSortedMap

java.lang.Object
  extended byEDU.oswego.cs.dl.util.concurrent.SyncMap
      extended byEDU.oswego.cs.dl.util.concurrent.SyncSortedMap
All Implemented Interfaces:
Map, SortedMap

public class SyncSortedMap
extends SyncMap
implements SortedMap

SyncSortedMaps wrap Sync-based control around java.util.SortedMaps. They support the following additional reader operations over SyncMap: comparator, subMap, headMap, tailMap, firstKey, lastKey.

[ Introduction to this package. ]

See Also:
SyncCollection

Nested Class Summary
 
Nested classes inherited from class java.util.Map
Map.Entry
 
Field Summary
 
Fields inherited from class EDU.oswego.cs.dl.util.concurrent.SyncMap
c_, rd_, syncFailures_, wr_
 
Constructor Summary
SyncSortedMap(SortedMap map, ReadWriteLock rwl)
          Create a new SyncSortedMap protecting the given map, and using the given ReadWriteLock to control reader and writer methods.
SyncSortedMap(SortedMap map, Sync sync)
          Create a new SyncSortedMap protecting the given map, and using the given sync to control both reader and writer methods.
SyncSortedMap(SortedMap map, Sync readLock, Sync writeLock)
          Create a new SyncSortedMap protecting the given map, and using the given pair of locks to control reader and writer methods.
 
Method Summary
protected  SortedMap baseSortedMap()
           
 Comparator comparator()
           
 Object firstKey()
           
 SortedMap headMap(Object toElement)
           
 Object lastKey()
           
 SortedMap subMap(Object fromElement, Object toElement)
           
 SortedMap tailMap(Object fromElement)
           
 
Methods inherited from class EDU.oswego.cs.dl.util.concurrent.SyncMap
afterRead, beforeRead, clear, containsKey, containsValue, entrySet, equals, get, hashCode, isEmpty, keySet, put, putAll, readerSync, remove, size, syncFailures, values, writerSync
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.util.Map
clear, containsKey, containsValue, entrySet, equals, get, hashCode, isEmpty, keySet, put, putAll, remove, size, values
 

Constructor Detail

SyncSortedMap

public SyncSortedMap(SortedMap map,
                     Sync sync)
Create a new SyncSortedMap protecting the given map, and using the given sync to control both reader and writer methods. Common, reasonable choices for the sync argument include Mutex, ReentrantLock, and Semaphores initialized to 1.


SyncSortedMap

public SyncSortedMap(SortedMap map,
                     ReadWriteLock rwl)
Create a new SyncSortedMap protecting the given map, and using the given ReadWriteLock to control reader and writer methods.


SyncSortedMap

public SyncSortedMap(SortedMap map,
                     Sync readLock,
                     Sync writeLock)
Create a new SyncSortedMap protecting the given map, and using the given pair of locks to control reader and writer methods.

Method Detail

baseSortedMap

protected SortedMap baseSortedMap()

comparator

public Comparator comparator()
Specified by:
comparator in interface SortedMap

firstKey

public Object firstKey()
Specified by:
firstKey in interface SortedMap

lastKey

public Object lastKey()
Specified by:
lastKey in interface SortedMap

subMap

public SortedMap subMap(Object fromElement,
                        Object toElement)
Specified by:
subMap in interface SortedMap

headMap

public SortedMap headMap(Object toElement)
Specified by:
headMap in interface SortedMap

tailMap

public SortedMap tailMap(Object fromElement)
Specified by:
tailMap in interface SortedMap