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

    java.lang.Object
      EDU.oswego.cs.dl.util.concurrent.SyncMap
          EDU.oswego.cs.dl.util.concurrent.SyncSortedMap

All Implemented Interfaces:
  java.util.Map, java.util.SortedMap

    public class SyncSortedMap

extends SyncMap
implements java.util.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/interfaces inherited from interface java.util.Map
`java.util.Map.Entry<K,V>`

Field Summary

Fields inherited from class EDU.oswego.cs.dl.util.concurrent.SyncMap
`c_, rd_, syncFailures_, wr_`

Constructor Summary
`SyncSortedMap(java.util.SortedMap map, ReadWriteLock rwl)` Create a new SyncSortedMap protecting the given map, and using the given ReadWriteLock to control reader and writer methods.
`SyncSortedMap(java.util.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(java.util.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 java.util.SortedMap` `baseSortedMap()`
`java.util.Comparator` `comparator()`
`java.lang.Object` `firstKey()`
`java.util.SortedMap` `headMap(java.lang.Object toElement)`
`java.lang.Object` `lastKey()`
`java.util.SortedMap` `subMap(java.lang.Object fromElement, java.lang.Object toElement)`
`java.util.SortedMap` `tailMap(java.lang.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(java.util.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(java.util.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(java.util.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 java.util.SortedMap baseSortedMap()

### comparator

    public java.util.Comparator comparator()

  Specified by:
    `comparator` in interface `java.util.SortedMap`

### firstKey

    public java.lang.Object firstKey()

  Specified by:
    `firstKey` in interface `java.util.SortedMap`

### lastKey

    public java.lang.Object lastKey()

  Specified by:
    `lastKey` in interface `java.util.SortedMap`

### subMap

    public java.util.SortedMap subMap(java.lang.Object fromElement,
                                      java.lang.Object toElement)

  Specified by:
    `subMap` in interface `java.util.SortedMap`

### headMap

    public java.util.SortedMap headMap(java.lang.Object toElement)

  Specified by:
    `headMap` in interface `java.util.SortedMap`

### tailMap

    public java.util.SortedMap tailMap(java.lang.Object fromElement)

  Specified by:
    `tailMap` in interface `java.util.SortedMap`