|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.openjpa.util.AbstractLRSProxyMap
public abstract class AbstractLRSProxyMap
A map proxy designed for maps backed by extremely large result sets in
which each call to get(java.lang.Object) or containsKey(java.lang.Object) may perform a
database query. Changes to the map are tracked through a
ChangeTracker. This map has the following limitations:
size method may return Integer.MAX_VALUE.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from interface java.util.Map |
|---|
java.util.Map.Entry<K,V> |
| Constructor Summary | |
|---|---|
AbstractLRSProxyMap(java.lang.Class keyType,
java.lang.Class valueType)
|
|
| Method Summary | |
|---|---|
void |
added(java.lang.Object key,
java.lang.Object val)
Record that the given entry was added to the map. |
void |
changed(java.lang.Object key,
java.lang.Object orig,
java.lang.Object val)
Record that the given entry was altered. |
void |
clear()
|
boolean |
containsKey(java.lang.Object key)
|
boolean |
containsValue(java.lang.Object val)
|
java.lang.Object |
copy(java.lang.Object orig)
Return an unproxied copy of the given instance. |
protected abstract int |
count()
Return the number of entries in the map, or Integer.MAX_VALUE. |
java.util.Set |
entrySet()
|
boolean |
evaluate(java.lang.Object obj)
|
java.lang.Object |
get(java.lang.Object key)
|
java.util.Collection |
getAdded()
Return the collection of values that need to be added to the managed container. |
java.util.Collection |
getChanged()
Return the set of elements that have changed. |
ChangeTracker |
getChangeTracker()
Return the change tracker for this proxy, or null if none. |
int |
getNextSequence()
The next element sequence value for this proxy at load time. |
OpenJPAStateManager |
getOwner()
Return the owning object. |
int |
getOwnerField()
Return the owning field index. |
java.util.Collection |
getRemoved()
Return the set of values that need to be removed from the managed container. |
boolean |
getTrackKeys()
Whether to track keys or values. |
protected abstract boolean |
hasKey(java.lang.Object key)
Return whether the given key exists in the map. |
protected abstract boolean |
hasValue(java.lang.Object value)
Return whether the given value exists in the map. |
boolean |
isEmpty()
|
boolean |
isTracking()
Return true if this tracker has an up-to-date view of all the changes to the container it is managing. |
protected abstract java.util.Iterator |
itr()
Implement this method to return an iterator over the entries in the map. |
protected abstract java.util.Collection |
keys(java.lang.Object value)
Return all keys for the given value. |
java.util.Set |
keySet()
|
java.lang.Object |
put(java.lang.Object key,
java.lang.Object value)
|
void |
putAll(java.util.Map m)
|
java.lang.Object |
remove(java.lang.Object key)
|
void |
removed(java.lang.Object key,
java.lang.Object val)
Record that the given entry was removed from the map. |
void |
setNextSequence(int seq)
The maximum element sequence value for this proxy at load time. |
void |
setOwner(OpenJPAStateManager sm,
int field)
Reset the state of the proxy, and set the owning instance of the proxy and the name of the field it is assigned to. |
void |
setTrackKeys(boolean keys)
Whether to track keys or values. |
int |
size()
|
void |
startTracking()
Reset the state of the change tracker, and turn change tracking back on if it has been disabled. |
void |
stopTracking()
Tell the tracker to stop tracking changes for its container. |
protected abstract java.lang.Object |
value(java.lang.Object key)
Return the value of the given key. |
java.util.Collection |
values()
|
protected java.lang.Object |
writeReplace()
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface java.util.Map |
|---|
equals, hashCode |
| Constructor Detail |
|---|
public AbstractLRSProxyMap(java.lang.Class keyType,
java.lang.Class valueType)
| Method Detail |
|---|
public void setOwner(OpenJPAStateManager sm,
int field)
Proxy
setOwner in interface Proxypublic OpenJPAStateManager getOwner()
Proxy
getOwner in interface Proxypublic int getOwnerField()
Proxy
getOwnerField in interface Proxypublic ChangeTracker getChangeTracker()
Proxy
getChangeTracker in interface Proxypublic java.lang.Object copy(java.lang.Object orig)
Proxy
copy in interface Proxypublic int size()
size in interface java.util.Mappublic boolean isEmpty()
isEmpty in interface java.util.Mappublic boolean containsKey(java.lang.Object key)
containsKey in interface java.util.Mappublic boolean containsValue(java.lang.Object val)
containsValue in interface java.util.Mappublic java.lang.Object get(java.lang.Object key)
get in interface java.util.Map
public java.lang.Object put(java.lang.Object key,
java.lang.Object value)
put in interface java.util.Mappublic void putAll(java.util.Map m)
putAll in interface java.util.Mappublic java.lang.Object remove(java.lang.Object key)
remove in interface java.util.Mappublic void clear()
clear in interface java.util.Mappublic java.util.Set keySet()
keySet in interface java.util.Mappublic java.util.Collection values()
values in interface java.util.Mappublic java.util.Set entrySet()
entrySet in interface java.util.Map
protected java.lang.Object writeReplace()
throws java.io.ObjectStreamException
java.io.ObjectStreamExceptionprotected abstract boolean hasKey(java.lang.Object key)
protected abstract boolean hasValue(java.lang.Object value)
protected abstract java.util.Collection keys(java.lang.Object value)
protected abstract java.lang.Object value(java.lang.Object key)
protected abstract java.util.Iterator itr()
Map.Entry interface. This method may be invoked multiple
times. The iterator does not have to support the
Iterator.remove() method, and may implement
Closeable.
protected abstract int count()
Integer.MAX_VALUE.
public boolean evaluate(java.lang.Object obj)
evaluate in interface org.apache.commons.collections.Predicatepublic boolean isTracking()
ChangeTracker
isTracking in interface ChangeTrackerpublic void startTracking()
ChangeTracker
startTracking in interface ChangeTrackerpublic void stopTracking()
ChangeTracker
stopTracking in interface ChangeTrackerpublic boolean getTrackKeys()
MapChangeTracker
getTrackKeys in interface MapChangeTrackerpublic void setTrackKeys(boolean keys)
MapChangeTracker
setTrackKeys in interface MapChangeTrackerpublic java.util.Collection getAdded()
ChangeTracker
getAdded in interface ChangeTrackerpublic java.util.Collection getRemoved()
ChangeTracker
getRemoved in interface ChangeTrackerpublic java.util.Collection getChanged()
ChangeTracker
getChanged in interface ChangeTracker
public void added(java.lang.Object key,
java.lang.Object val)
MapChangeTracker
added in interface MapChangeTracker
public void removed(java.lang.Object key,
java.lang.Object val)
MapChangeTracker
removed in interface MapChangeTracker
public void changed(java.lang.Object key,
java.lang.Object orig,
java.lang.Object val)
MapChangeTracker
changed in interface MapChangeTrackerpublic int getNextSequence()
ChangeTracker
getNextSequence in interface ChangeTrackerpublic void setNextSequence(int seq)
ChangeTracker
setNextSequence in interface ChangeTracker
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||