public abstract class DynamicCommand extends DefaultMutableModule implements Cancelable, Command, Contextual
Command interface and using only @Parameter annotations on
instance fields.| Modifier and Type | Field and Description |
|---|---|
protected ModuleService |
moduleService |
protected PluginService |
pluginService |
| Constructor and Description |
|---|
DynamicCommand() |
| Modifier and Type | Method and Description |
|---|---|
void |
cancel(String reason)
Cancels the operation execution, with the given reason for doing so.
|
Context |
context()
Gets the application context to which the object belongs.
|
String |
getCancelReason()
Gets a message describing why the operation was canceled.
|
Context |
getContext()
Gets the application context to which the object belongs, or null if
Contextual.setContext(Context) has not yet been called on this object. |
DynamicCommandInfo |
getInfo()
Gets metadata about this module.
|
Object |
getInput(String name)
Gets the value of the input with the given name.
|
Object |
getOutput(String name)
Gets the value of the output with the given name.
|
boolean |
isCanceled()
Gets whether the operation has been canceled.
|
protected void |
saveInputs()
Persists current input values.
|
void |
setContext(Context context)
Sets the application context to which the object belongs.
|
void |
setInput(String name,
Object value)
Sets the value of the input with the given name.
|
void |
setOutput(String name,
Object value)
Sets the value of the output with the given name.
|
void |
uncancel() |
cancel, getDelegateObject, getInputs, getOutputs, initialize, isInputResolved, isOutputResolved, preview, resolveInput, resolveOutput, setInputs, setOutputs, unresolveInput, unresolveOutputclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddInput, addInput, addOutput, addOutput, removeInput, removeOutput, runcancel, getDelegateObject, getInputs, getOutputs, initialize, isInputResolved, isOutputResolved, isResolved, preview, resolveInput, resolveOutput, setInputs, setOutputs, setResolved, unresolveInput, unresolveOutputprotected PluginService pluginService
protected ModuleService moduleService
public DynamicCommandInfo getInfo()
ModulegetInfo in interface ModulegetInfo in interface MutableModulegetInfo in class DefaultMutableModulepublic Object getInput(String name)
ModulegetInput in interface ModulegetInput in class AbstractModulepublic Object getOutput(String name)
ModulegetOutput in interface ModulegetOutput in class AbstractModulepublic void setInput(String name, Object value)
ModulesetInput in interface ModulesetInput in class AbstractModulepublic void setOutput(String name, Object value)
ModulesetOutput in interface ModulesetOutput in class AbstractModulepublic Context context()
Contextualcontext in interface ContextualContextual.getContext()public Context getContext()
ContextualContextual.setContext(Context) has not yet been called on this object.getContext in interface ContextualContextual.context()public void setContext(Context context)
Contextual
Typically this method simply delegates to Context.inject(Object),
and should be called only once to populate the context. Most contextual
objects do not support later alteration of the context, and will throw
IllegalStateException if this method is invoked again.
setContext in interface ContextualContext.inject(Object)public boolean isCanceled()
CancelableisCanceled in interface Cancelablepublic void cancel(String reason)
Cancelable
This method merely sets the operation status to canceled; it cannot
necessarily stop the operation itself. That is, it is the responsibility of
each individual operation to check Cancelable.isCanceled() in a timely manner
during execution, and stop doing whatever it is doing if the flag has been
tripped.
cancel in interface Cancelablereason - A message describing why the operation is being canceled.public String getCancelReason()
CancelablegetCancelReason in interface Cancelablepublic void uncancel()
protected void saveInputs()
InteractiveCommands
that want to persist values as they change, since interactive commands do
not complete the module execution lifecycle normally.Copyright © 2015–2022 SciJava. All rights reserved.