ecologylab.services.logging
Class MixedInitiativeOp
java.lang.Object
ecologylab.generic.Debug
ecologylab.xml.ElementState
ecologylab.xml.types.element.ArrayListState
ecologylab.services.logging.MixedInitiativeOp
- All Implemented Interfaces:
- OptimizationTypes, XMLTranslationExceptionTypes, java.lang.Cloneable, java.lang.Iterable, java.util.Collection, java.util.List
- Direct Known Subclasses:
- AuthenticationOp
public abstract class MixedInitiativeOp
- extends ArrayListState
A user operation, which can be serialized, logged, Undo/Redo'ed, played in history, and so on.
- Author:
- andruid
|
Field Summary |
protected long |
sessionTime
Elapsed time since the session started. |
| Fields inherited from interface ecologylab.xml.OptimizationTypes |
BAD_FIELD, COLLECTION_ELEMENT, COLLECTION_SCALAR, IGNORED_ATTRIBUTE, IGNORED_ELEMENT, LEAF_NODE_VALUE, MAP_ELEMENT, MAP_SCALAR, NAME_SPACE_ATTRIBUTE, NAME_SPACE_LEAF_NODE, NAME_SPACE_MASK, NAME_SPACE_NESTED_ELEMENT, NAMESPACE_IGNORED_ELEMENT, NAMESPACE_TRIAL_ELEMENT, OTHER_NESTED_ELEMENT, REGULAR_ATTRIBUTE, REGULAR_NESTED_ELEMENT, ROOT, UNSET_TYPE, XMLNS_ATTRIBUTE, XMLNS_IGNORED |
|
Method Summary |
long |
getSessionTime()
|
boolean |
isHuman()
In a mixed initiative system, some ops are by the human, while others are by the agent. |
abstract void |
performAction(boolean invert)
Perform the op. |
protected void |
preTranslationProcessingHook()
Sets the session time immediately before translating to XML. |
void |
recycle(boolean invert)
Free resources associated with this. |
| Methods inherited from class ecologylab.xml.types.element.ArrayListState |
add, add, addAll, addAll, clear, clone, contains, containsAll, get, getArrayList, getCollection, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, recycle, remove, remove, removeAll, retainAll, set, set, size, subList, toArray, toArray, trimToSize |
| Methods inherited from class ecologylab.xml.ElementState |
addNestedElement, addNestedElement, appendTextNodeString, buildDOM, buildDOM, buildDOM, buildDOM, buildDOM, buildDOMFromXMLCharSequence, buildDOMFromXMLString, checkAnnotation, convertNameStyles, createChildHook, fieldToXMLOptimizations, floatingPrecision, getElementStateById, getMap, getNestedNameSpace, getTextNodeString, leafElementFieldNames, lookupNestedNameSpace, optimizations, parent, postTranslationProcessingHook, setDeclarationStyle, setFieldUsingTypeRegistry, setFloatingPrecision, setParent, setUseDOMForTranslateTo, translateFromXML, translateFromXML, translateFromXML, translateFromXML, translateFromXML, translateFromXMLCharSequence, translateFromXMLDOM, translateFromXMLDOM, translateFromXMLDOM, translateFromXMLDOM, translateFromXMLDOM, translateFromXMLDOM, translateFromXMLDOMCharSequence, translateFromXMLDOMCharSequence, translateFromXMLRootNode, translateFromXMLSAX, translateFromXMLSAX, translateFromXMLSAX, translateFromXMLSAX, translateFromXMLSAX, translateToDOM, translateToXML, translateToXML, translateToXML, translateToXML, writePrettyXML, writePrettyXML, writePrettyXML |
| Methods inherited from class ecologylab.generic.Debug |
classSimpleName, closeLoggingFile, debug, debug, debug, debug, debugA, debugA, debugA, debugI, debugI, debugI, error, error, getClassName, getClassName, getInteractive, getPackageName, getPackageName, getPackageName, initialize, level, level, level, logToFile, print, print, println, println, println, println, println, println, printlnA, printlnA, printlnA, printlnI, printlnI, printlnI, printlnI, setLoggingFile, show, show, superString, toggleInteractive, toString, toString, warning, warning, weird, weird |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface java.util.List |
equals, hashCode |
sessionTime
protected long sessionTime
- Elapsed time since the session started.
MixedInitiativeOp
public MixedInitiativeOp()
- No-argument constructor for XML translation.
performAction
public abstract void performAction(boolean invert)
- Perform the op. Perhaps invert it, as for undo.
- Parameters:
invert -
isHuman
public boolean isHuman()
- In a mixed initiative system, some ops are by the human, while others are by the agent.
The presence of this here at the moment may be a hack. It may be good design :-) Human and dyadic undo should
probably be split into 2 separte UndoRedo classes.
- Returns:
recycle
public void recycle(boolean invert)
- Free resources associated with this.
preTranslationProcessingHook
protected void preTranslationProcessingHook()
- Sets the session time immediately before translating to XML. The session time is based from the time the log
started recording.
- Overrides:
preTranslationProcessingHook in class ElementState
- See Also:
ElementState.preTranslationProcessingHook()
getSessionTime
public long getSessionTime()
- Returns:
- the sessionTime