private void validateEventRepresentation(EventRepresentation representation, WorkflowValidationResultImplementation result) { if (representation.getActions().size() == 0 && representation.getEvents().size() == 0) { result.notValid(); result.addError(representation.getEvent().getCanonicalName() + " has to have either an Action or an Event"); } for (ActionRepresentation action : representation.getActions()) { validateActionRepresentation(action, result); } for (EventRepresentation event : representation.getEvents()) { validateEventRepresentation(event, result); } } }
private static void processEvent(Process process, EventRepresentation event, int parentId) { String simpleName = event.getEvent().getSimpleName(); int eventId = process.getIdCounter(); process.addNode(new ActionEvent(eventId, simpleName, simpleName)); Join join = new Join(); join.id = process.getIdCounter(); join.name = "EventJoin"; process.addNode(join); process.connection.add(new Connection(parentId, join.id)); process.connection.add(new Connection(eventId, join.id)); int counter = join.id; counter = addSplit(process, counter, event.getActions().size() + event.getEvents().size(), "EventSplit"); for (ActionRepresentation action : event.getActions()) { processAction(process, action, counter); } for (EventRepresentation toProcess : event.getEvents()) { processEvent(process, toProcess, counter); } } }