public class CreateVariableView extends ViewSupport implements VariableChangeCallback
The view posts to listeners when a variable changes, if it has subviews.
The view returns the current variable value for the iterator.
The event type for such posted events is a single field Map with the variable value.
EMPTY_VIEW_ARRAY, parent
Constructor and Description |
---|
CreateVariableView(int statementId,
EventAdapterService eventAdapterService,
VariableService variableService,
String variableName,
StatementResultService statementResultService,
int agentInstanceId)
Ctor.
|
Modifier and Type | Method and Description |
---|---|
EventType |
getEventType()
Provides metadata information about the type of object the event collection contains.
|
static EventType |
getEventType(int statementId,
EventAdapterService eventAdapterService,
VariableMetaData variableMetaData) |
Iterator<EventBean> |
iterator()
Allows iteration through all elements in this event collection.
|
void |
update(EventBean[] newData,
EventBean[] oldData)
Notify that data has been added or removed from the Viewable parent.
|
void |
update(Object newValue,
Object oldValue)
Indicate a change in variable value.
|
addView, addView, dumpChildViews, dumpUpdateParams, dumpUpdateParams, findDescendent, findViewIndex, getParent, getViews, hasViews, removeAllViews, removeView, removeView, setParent, updateChildren, updateChildren
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
forEach, spliterator
public CreateVariableView(int statementId, EventAdapterService eventAdapterService, VariableService variableService, String variableName, StatementResultService statementResultService, int agentInstanceId)
eventAdapterService
- for creating eventsvariableService
- for looking up variablesvariableName
- is the name of the variable to createstatementResultService
- for coordinating on whether insert and remove stream events should be postedstatementId
- statement idagentInstanceId
- agent instance idpublic static EventType getEventType(int statementId, EventAdapterService eventAdapterService, VariableMetaData variableMetaData)
public void update(Object newValue, Object oldValue)
VariableChangeCallback
update
in interface VariableChangeCallback
newValue
- new valueoldValue
- old valuepublic void update(EventBean[] newData, EventBean[] oldData)
View
If the call to update contains new (inserted) data, then the first argument will be a non-empty list and the second will be empty. Similarly, if the call is a notification of deleted data, then the first argument will be empty and the second will be non-empty. Either the newData or oldData will be non-null. This method won't be called with both arguments being null, but either one could be null. The same is true for zero-length arrays. Either newData or oldData will be non-empty. If both are non-empty, then the update is a modification notification.
When update() is called on a view by the parent object, the data in newData will be in the collection of the parent, and its data structures will be arranged to reflect that. The data in oldData will not be in the parent's data structures, and any access to the parent will indicate that that data is no longer there.
public EventType getEventType()
EventCollection
getEventType
in interface EventCollection
public Iterator<EventBean> iterator()
EventCollection
iterator
in interface EventCollection
iterator
in interface Iterable<EventBean>