-package org.simantics.document.swt.core.base;\r
-\r
-import org.simantics.document.server.IEventCommand;\r
-import org.simantics.document.swt.core.SWTDocument;\r
-\r
-public abstract class AbstractEventCommand implements IEventCommand {\r
- \r
- protected IEventCommand next;\r
- protected SWTDocument document;\r
- \r
- public AbstractEventCommand(SWTDocument document) {\r
- this.document = document;\r
- }\r
-\r
- @Override\r
- public void setNext(IEventCommand next) {\r
- this.next = next;\r
- }\r
- \r
- @Override\r
- public IEventCommand getNext() {\r
- return this.next;\r
- }\r
- \r
- @Override\r
- public void commandSuccess() {\r
- if(next != null)\r
- next.handleCommand();\r
- }\r
-\r
- @Override\r
- public void commandError(String errorMessage) {\r
- System.err.println(this + " failed: " + errorMessage);\r
- }\r
-\r
-}\r
+package org.simantics.document.swt.core.base;
+
+import org.simantics.document.server.IEventCommand;
+import org.simantics.document.server.io.CommandContext;
+import org.simantics.document.server.io.CommandContextMutable;
+import org.simantics.document.swt.core.SWTDocument;
+
+public abstract class AbstractEventCommand implements IEventCommand {
+
+ protected IEventCommand next;
+ protected SWTDocument document;
+
+ public AbstractEventCommand(SWTDocument document) {
+ this.document = document;
+ }
+
+ @Override
+ public void setNext(IEventCommand next) {
+ this.next = next;
+ }
+
+ @Override
+ public IEventCommand getNext() {
+ return this.next;
+ }
+
+ @Override
+ public CommandContext commandSuccess(CommandContextMutable context) {
+ if(next != null)
+ return next.handleCommand(context);
+ return context;
+ }
+
+ @Override
+ public void commandError(String errorMessage) {
+ System.err.println(this + " failed: " + errorMessage);
+ }
+
+}