package de.twenty11.skysail.server.ext.activiti; import java.util.HashMap; import java.util.Map; import org.activiti.engine.repository.ProcessDefinition; import org.codehaus.jackson.annotate.JsonIgnore; import de.twenty11.skysail.common.Presentable; import de.twenty11.skysail.common.PresentableHeader; public class ProcessDescriptor implements Presentable { private String id; private String name; private String deploymentId; private String category; private String description; private String key; private String resourceName; private int version; public ProcessDescriptor(ProcessDefinition processDefinition) { id = processDefinition.getId(); name = processDefinition.getName(); deploymentId = processDefinition.getDeploymentId(); category = processDefinition.getCategory(); description = processDefinition.getDescription(); key = processDefinition.getKey(); resourceName = processDefinition.getResourceName(); version = processDefinition.getVersion(); } @Override @JsonIgnore public PresentableHeader getHeader() { return new PresentableHeader.Builder(name).setLink("/activiti/repository/" + id).setImage("icon-th-large") .build(); } @Override @JsonIgnore public Map<String, Object> getContent() { Map<String, Object> results = new HashMap<String, Object>(); results.put("id", id); results.put("deploymentId", deploymentId); results.put("category", category); results.put("description", description); results.put("key", key); results.put("resourceName", resourceName); results.put("version", version); return results; } }