|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.eclipse.emf.common.command.AbstractCommand org.eclipse.emf.common.command.CommandWrapper
public class CommandWrapper
A command that wraps another command.
All the Command
methods are delegated to the wrapped command.
There are two typical usage patterns. One typical use for this command is to modify the behaviour of a command that you can't subclass, i.e., a decorator pattern:
Command decoratedCommand = new CommandWrapper(someOtherCommand) { public void execute() { doSomethingBeforeExecution(); super.execute(); doSomethingAfterExecution(); } public Collection getResult() { return someOtherResult(); } };The other typical use is to act as a proxy for a command who's creation is delayed:
Command proxyCommand = new CommandWrapper() { public Command createCommand() { return createACommandSomehow(); } };
Nested Class Summary |
---|
Nested classes/interfaces inherited from class org.eclipse.emf.common.command.AbstractCommand |
---|
AbstractCommand.NonDirtying |
Field Summary | |
---|---|
protected Command |
command
The command for which this is a proxy or decorator. |
Fields inherited from class org.eclipse.emf.common.command.AbstractCommand |
---|
description, isExecutable, isPrepared, label |
Constructor Summary | |
---|---|
protected |
CommandWrapper()
Creates a commandless proxy instance. |
|
CommandWrapper(Command command)
Creates a decorator instance for the given command. |
protected |
CommandWrapper(java.lang.String label)
Creates a commandless proxy instance, with the given label. |
protected |
CommandWrapper(java.lang.String label,
Command command)
Creates a decorator instance with the given label for the given command. |
protected |
CommandWrapper(java.lang.String label,
java.lang.String description)
Creates a commandless proxy instance, with the given label and description. |
|
CommandWrapper(java.lang.String label,
java.lang.String description,
Command command)
Creates a decorator instance with the given label and description for the given command. |
Method Summary | |
---|---|
boolean |
canUndo()
Delegates to the canUndo method of the command. |
protected Command |
createCommand()
Create the command being proxied. |
void |
dispose()
Delegates to the dispose method of the command. |
void |
execute()
Delegates to the execute method of the command. |
java.util.Collection<?> |
getAffectedObjects()
Delegates to the getAffectedObjects method of the command. |
Command |
getCommand()
Returns the command for which this is a proxy or decorator. |
java.lang.String |
getDescription()
Delegates to the getDescription method of the command. |
java.lang.String |
getLabel()
Delegates to the getLabel method of the command. |
java.util.Collection<?> |
getResult()
Delegates to the getResult method of the command. |
protected boolean |
prepare()
Returns whether the command can execute. |
void |
redo()
Delegates to the redo method of the command. |
java.lang.String |
toString()
Returns an abbreviated name using this object's own class' name, without package qualification, followed by a space separated list of field:value pairs. |
void |
undo()
Delegates to the undo method of the command. |
Methods inherited from class org.eclipse.emf.common.command.AbstractCommand |
---|
canExecute, chain, setDescription, setLabel |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected Command command
Constructor Detail |
---|
public CommandWrapper(Command command)
command
- the command to wrap.protected CommandWrapper(java.lang.String label, Command command)
label
- the label of the wrappercommand
- the command to wrap.public CommandWrapper(java.lang.String label, java.lang.String description, Command command)
label
- the label of the wrapperdescription
- the description of the wrappercommand
- the command to wrap.protected CommandWrapper()
createCommand()
callback.
Since a proxy command like this is pointless unless you override some method, this constructor is protected.
protected CommandWrapper(java.lang.String label)
createCommand()
callback.
Since a proxy command like this is pointless unless you override some method, this constructor is protected.
label
- the label of the wrapperprotected CommandWrapper(java.lang.String label, java.lang.String description)
createCommand()
callback.
Since a proxy command like this is pointless unless you override some method, this constructor is protected.
label
- the label of the wrapperdescription
- the description of the wrapperMethod Detail |
---|
public Command getCommand()
null
before createCommand()
is called.
protected Command createCommand()
null
.
It is called by prepare()
.
protected boolean prepare()
createCommand()
,
if the command wasn't given in the constructor.
prepare
in class AbstractCommand
public void execute()
public boolean canUndo()
canUndo
in interface Command
canUndo
in class AbstractCommand
true
.public void undo()
undo
in interface Command
undo
in class AbstractCommand
public void redo()
public java.util.Collection<?> getResult()
getResult
in interface Command
getResult
in class AbstractCommand
public java.util.Collection<?> getAffectedObjects()
getAffectedObjects
in interface Command
getAffectedObjects
in class AbstractCommand
public java.lang.String getLabel()
getLabel
in interface Command
getLabel
in class AbstractCommand
public java.lang.String getDescription()
getDescription
in interface Command
getDescription
in class AbstractCommand
public void dispose()
dispose
in interface Command
dispose
in class AbstractCommand
public java.lang.String toString()
AbstractCommand
toString
in class AbstractCommand
|
Copyright 2001-2012 IBM Corporation and others. All Rights Reserved. |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |