public interface SortedMap extends Map, Rollbackable
All keys entered in the map must be mutually comparable; in other words,
k1.compareTo(k2)
or comparator.compare(k1, k2)
must not throw a ClassCastException. The ordering must be consistent
with equals (see {
Map
,
TreeMap
,
SortedSet
,
Comparable
,
Comparator
,
Collection
,
ClassCastException
Modifier and Type | Method and Description |
---|---|
void |
$COMMIT(long timestamp)
Commit changes up to the given timestamp, but not including changes
made at timestamp and afterward.
|
Checkpoint |
$GET$CHECKPOINT()
Get the checkpoint object that monitors this rollbackable object.
|
void |
$RESTORE(long timestamp,
boolean trim)
Restore a previous state to all the private fields of this rollbackable
object.
|
java.lang.Object |
$SET$CHECKPOINT(Checkpoint checkpoint)
Set the checkpoint object of this rollbackable object.
|
java.util.Comparator |
comparator()
Returns the comparator used in sorting this map, or null if it is
the keys' natural ordering.
|
java.lang.Object |
firstKey()
Returns the first (lowest sorted) key in the map.
|
SortedMap |
headMap(java.lang.Object toKey)
Returns a view of the portion of the map strictly less than toKey.
|
java.lang.Object |
lastKey()
Returns the last (highest sorted) key in the map.
|
SortedMap |
subMap(java.lang.Object fromKey,
java.lang.Object toKey)
Returns a view of the portion of the map greater than or equal to
fromKey, and strictly less than toKey.
|
SortedMap |
tailMap(java.lang.Object fromKey)
Returns a view of the portion of the map greater than or equal to
fromKey.
|
java.util.Comparator comparator()
java.lang.Object firstKey()
java.util.NoSuchElementException
- if this map is empty.SortedMap headMap(java.lang.Object toKey)
The returned map throws an IllegalArgumentException any time a key is
used which is out of the range of toKey. Note that the endpoint, toKey,
is not included; if you want this value to be included, pass its successor
object in to toKey. For example, for Integers, you could request
headMap(new Integer(limit.intValue() + 1))
.
toKey
- the exclusive upper range of the submapjava.lang.ClassCastException
- if toKey is not comparable to the map contentsjava.lang.IllegalArgumentException
- if this is a subMap, and toKey is out
of rangejava.lang.NullPointerException
- if toKey is null but the map does not allow
null keysjava.lang.Object lastKey()
java.util.NoSuchElementException
- if this map is empty.SortedMap subMap(java.lang.Object fromKey, java.lang.Object toKey)
The returned map throws an IllegalArgumentException any time a key is
used which is out of the range of fromKey and toKey. Note that the
lower endpoint is included, but the upper is not; if you want to
change the inclusion or exclusion of an endpoint, pass its successor
object in instead. For example, for Integers, you could request
subMap(new Integer(lowlimit.intValue() + 1),
new Integer(highlimit.intValue() + 1))
to reverse
the inclusiveness of both endpoints.
fromKey
- the inclusive lower range of the submaptoKey
- the exclusive upper range of the submapjava.lang.ClassCastException
- if fromKey or toKey is not comparable to
the map contentsjava.lang.IllegalArgumentException
- if this is a subMap, and fromKey or
toKey is out of rangejava.lang.NullPointerException
- if fromKey or toKey is null but the map
does not allow null keysSortedMap tailMap(java.lang.Object fromKey)
The returned map throws an IllegalArgumentException any time a key is
used which is out of the range of fromKey. Note that the endpoint, fromKey, is
included; if you do not want this value to be included, pass its successor object in
to fromKey. For example, for Integers, you could request
tailMap(new Integer(limit.intValue() + 1))
.
fromKey
- the inclusive lower range of the submapjava.lang.ClassCastException
- if fromKey is not comparable to the map
contentsjava.lang.IllegalArgumentException
- if this is a subMap, and fromKey is out
of rangejava.lang.NullPointerException
- if fromKey is null but the map does not allow
null keysvoid $COMMIT(long timestamp)
Rollbackable
$COMMIT
in interface Map
$COMMIT
in interface Rollbackable
timestamp
- The timestamp.void $RESTORE(long timestamp, boolean trim)
Rollbackable
$RESTORE
in interface Map
$RESTORE
in interface Rollbackable
timestamp
- The timestamp taken at the time when the previous
state was recorded.trim
- Whether to delete the records used for the rollback.Checkpoint.rollback(long, boolean)
Checkpoint $GET$CHECKPOINT()
Rollbackable
$GET$CHECKPOINT
in interface Map
$GET$CHECKPOINT
in interface Rollbackable
java.lang.Object $SET$CHECKPOINT(Checkpoint checkpoint)
Rollbackable
$SET$CHECKPOINT
in interface Map
$SET$CHECKPOINT
in interface Rollbackable
checkpoint
- The new checkpoint object.Checkpoint.setCheckpoint(Checkpoint)