use of org.activiti.engine.task.Event in project Activiti by Activiti.
the class RestResponseFactory method createEventResponseList.
public List<EventResponse> createEventResponseList(List<Event> events) {
RestUrlBuilder urlBuilder = createUrlBuilder();
List<EventResponse> responseList = new ArrayList<EventResponse>();
for (Event instance : events) {
responseList.add(createEventResponse(instance, urlBuilder));
}
return responseList;
}
use of org.activiti.engine.task.Event in project Activiti by Activiti.
the class TaskEventResourceTest method testDeleteEvent.
/**
* Test delete event for a task.
* DELETE runtime/tasks/{taskId}/events/{eventId}
*/
public void testDeleteEvent() throws Exception {
try {
Task task = taskService.newTask();
taskService.saveTask(task);
taskService.setAssignee(task.getId(), "kermit");
taskService.addUserIdentityLink(task.getId(), "gonzo", "someType");
List<Event> events = taskService.getTaskEvents(task.getId());
assertEquals(2, events.size());
for (Event event : events) {
HttpDelete httpDelete = new HttpDelete(SERVER_URL_PREFIX + RestUrls.createRelativeResourceUrl(RestUrls.URL_TASK_EVENT, task.getId(), event.getId()));
closeResponse(executeRequest(httpDelete, HttpStatus.SC_NO_CONTENT));
}
events = taskService.getTaskEvents(task.getId());
assertEquals(0, events.size());
} finally {
// Clean adhoc-tasks even if test fails
List<Task> tasks = taskService.createTaskQuery().list();
for (Task task : tasks) {
taskService.deleteTask(task.getId(), true);
}
}
}
use of org.activiti.engine.task.Event in project Activiti by Activiti.
the class TaskEventResourceTest method testGetEvent.
/**
* Test getting a single event for a task.
* GET runtime/tasks/{taskId}/events/{eventId}
*/
public void testGetEvent() throws Exception {
try {
Calendar now = Calendar.getInstance();
now.set(Calendar.MILLISECOND, 0);
processEngineConfiguration.getClock().setCurrentTime(now.getTime());
Task task = taskService.newTask();
taskService.saveTask(task);
taskService.addUserIdentityLink(task.getId(), "gonzo", "someType");
Event event = taskService.getTaskEvents(task.getId()).get(0);
HttpGet httpGet = new HttpGet(SERVER_URL_PREFIX + RestUrls.createRelativeResourceUrl(RestUrls.URL_TASK_EVENT, task.getId(), event.getId()));
CloseableHttpResponse response = executeRequest(httpGet, HttpStatus.SC_OK);
JsonNode responseNode = objectMapper.readTree(response.getEntity().getContent());
closeResponse(response);
assertNotNull(responseNode);
assertEquals(event.getId(), responseNode.get("id").textValue());
assertEquals(event.getAction(), responseNode.get("action").textValue());
assertEquals(event.getUserId(), responseNode.get("userId").textValue());
assertTrue(responseNode.get("url").asText().endsWith(RestUrls.createRelativeResourceUrl(RestUrls.URL_TASK_EVENT, task.getId(), event.getId())));
assertTrue(responseNode.get("taskUrl").asText().endsWith(RestUrls.createRelativeResourceUrl(RestUrls.URL_TASK, task.getId())));
assertEquals(now.getTime(), getDateFromISOString(responseNode.get("time").textValue()));
} finally {
// Clean adhoc-tasks even if test fails
List<Task> tasks = taskService.createTaskQuery().list();
for (Task task : tasks) {
taskService.deleteTask(task.getId(), true);
}
}
}
use of org.activiti.engine.task.Event in project Activiti by Activiti.
the class TaskEventResource method getEvent.
@RequestMapping(value = "/runtime/tasks/{taskId}/events/{eventId}", method = RequestMethod.GET, produces = "application/json")
public EventResponse getEvent(@PathVariable("taskId") String taskId, @PathVariable("eventId") String eventId, HttpServletRequest request) {
HistoricTaskInstance task = getHistoricTaskFromRequest(taskId);
Event event = taskService.getEvent(eventId);
if (event == null || !task.getId().equals(event.getTaskId())) {
throw new ActivitiObjectNotFoundException("Task '" + task.getId() + "' doesn't have an event with id '" + eventId + "'.", Event.class);
}
return restResponseFactory.createEventResponse(event);
}
use of org.activiti.engine.task.Event in project Activiti by Activiti.
the class TaskEventResource method deleteEvent.
@RequestMapping(value = "/runtime/tasks/{taskId}/events/{eventId}", method = RequestMethod.DELETE)
public void deleteEvent(@PathVariable("taskId") String taskId, @PathVariable("eventId") String eventId, HttpServletResponse response) {
// Check if task exists
Task task = getTaskFromRequest(taskId);
Event event = taskService.getEvent(eventId);
if (event == null || event.getTaskId() == null || !event.getTaskId().equals(task.getId())) {
throw new ActivitiObjectNotFoundException("Task '" + task.getId() + "' doesn't have an event with id '" + event + "'.", Event.class);
}
taskService.deleteComment(eventId);
response.setStatus(HttpStatus.NO_CONTENT.value());
}
Aggregations