public void skip(long taskId, String userId) { executor.execute(new CompositeCommand<Void>( new SkipTaskCommand(taskId, userId), new ProcessSubTaskCommand(taskId, userId), new CancelDeadlineCommand(taskId, true, true))); }
public Void execute(Context cntxt) { TaskContext context = (TaskContext) cntxt; doCallbackUserOperation(userId, context, true); groupIds = doUserGroupCallbackOperation(userId, null, context); context.set("local:groups", groupIds); context.getTaskInstanceService().skip(taskId, userId); return null; } }
@Test public void taskCompositeCommandMultipleCanBeSerialized() throws Exception { Assume.assumeTrue(TestType.JAXB.equals(getType())); addClassesToSerializationContext(CompositeCommand.class); addClassesToSerializationContext(SkipTaskCommand.class); addClassesToSerializationContext(ProcessSubTaskCommand.class); addClassesToSerializationContext(CancelDeadlineCommand.class); CompositeCommand<Void> cmd = new CompositeCommand<Void>(new SkipTaskCommand(1, "john"), new ProcessSubTaskCommand(1, "john"), new CancelDeadlineCommand(1, true, true)); CompositeCommand<?> returned = testRoundTrip(cmd); assertNotNull(returned); assertNotNull(returned.getMainCommand()); assertTrue(returned.getMainCommand() instanceof SkipTaskCommand); assertEquals(Long.valueOf(1), returned.getTaskId()); assertNotNull(returned.getCommands()); assertEquals(2, returned.getCommands().size()); }