public abstract class XValueMarkerProvider<V extends XValue,M>
extends java.lang.Object
If debugger values have unique ids just return these ids from getMarker(XValue) method.
Alternatively implement markValue(XValue) to store a value in some registry and implement unmarkValue(XValue, Object)
to remote it from the registry. In such a case the getMarker(XValue) method can return null if the value isn't marked.
| Modifier | Constructor and Description |
|---|---|
protected |
XValueMarkerProvider(java.lang.Class<V> valueClass) |
| Modifier and Type | Method and Description |
|---|---|
abstract boolean |
canMark(V value) |
abstract M |
getMarker(V value)
This method is used to determine whether the
value was marked or not. |
java.lang.Class<V> |
getValueClass() |
M |
markValue(V value)
This method is called when 'Mark Object' action is invoked.
|
void |
unmarkValue(V value,
M marker)
This method is called when 'Unmark Object' action is invoked.
|
protected XValueMarkerProvider(java.lang.Class<V> valueClass)
public abstract boolean canMark(V value)
true if 'Mark Object' action should be enabled for valuepublic abstract M getMarker(V value)
value was marked or not. The returned object is compared using Object.equals(Object)
method with markers returned by markValue(XValue) methods.
This method may return null if the value wasn't marked by markValue(XValue) method.
valuepublic M markValue(V value)
value and store it in some registry
if necessary.valuepublic void unmarkValue(V value, M marker)
public final java.lang.Class<V> getValueClass()