package com.vci.client.workflow.delegate; import java.util.ArrayList; import java.util.List; import com.vci.client.ClientSession; import com.vci.client.common.objects.UserEntityObject; import com.vci.client.framework.delegate.ClientBaseDelegate; import com.vci.client.ui.exception.VCIException; import com.vci.client.workflow.editor.TaskCCClientObject; import com.vci.corba.common.VCIError; import com.vci.corba.workflow.data.TaskCCInfo; public class TaskCCClientDelegate extends ClientBaseDelegate { /** * */ private static final long serialVersionUID = 1L; public TaskCCClientDelegate() { } public TaskCCClientDelegate(UserEntityObject userEntityObject) { super(userEntityObject); } public boolean saveTaskCCInfo(TaskCCClientObject[] object) throws VCIException { try { return ClientSession.getWorkflowService().saveTaskCCInfo(objectsToInfos(object)); } catch (VCIError e) { throw convertVCIErrorToVCIException(e); } } public List getTaskCCInfos(String jbpmDeploymentId) throws VCIException { TaskCCInfo[] taskCCInfos; try { taskCCInfos = ClientSession.getWorkflowService().getTaskCCInfos(jbpmDeploymentId); List list = infosToObjects(taskCCInfos); return list; } catch (VCIError e) { throw convertVCIErrorToVCIException(e); } } private List infosToObjects(TaskCCInfo[] taskCCInfos) { List list = new ArrayList(); for(int i = 0 ; i < taskCCInfos.length ; i ++){ TaskCCInfo taskCCInfo = taskCCInfos[i]; TaskCCClientObject o = infoToObject(taskCCInfo); list.add(o); } return list; } private TaskCCClientObject infoToObject(TaskCCInfo taskCCInfo) { TaskCCClientObject o = new TaskCCClientObject(); o.setAssigner(taskCCInfo.assigner==null?"":taskCCInfo.assigner); o.setCc(taskCCInfo.cc==null?"":taskCCInfo.cc); o.setJbpmdeploymentid(taskCCInfo.pljbpmdeploymentid==null?"":taskCCInfo.pljbpmdeploymentid); o.setId(taskCCInfo.id==null?"":taskCCInfo.id); o.setTaskname(taskCCInfo.taskname==null?"":taskCCInfo.taskname); return o; } private TaskCCInfo[] objectsToInfos(TaskCCClientObject[] o){ TaskCCInfo[] infos = new TaskCCInfo[o.length]; for(int i = 0 ; i < o.length ; i ++){ TaskCCClientObject taskCCClientObject = o[i]; TaskCCInfo info = objectToInfo(taskCCClientObject); infos[i] = info; } return infos; } private TaskCCInfo objectToInfo(TaskCCClientObject taskCCClientObject) { TaskCCInfo info = new TaskCCInfo(); info.assigner = taskCCClientObject.getAssigner() == null ? "" : taskCCClientObject.getAssigner(); info.cc = taskCCClientObject.getCc() == null ? "" : taskCCClientObject.getCc(); info.pljbpmdeploymentid = taskCCClientObject.getJbpmdeploymentid() == null ? "" : taskCCClientObject.getJbpmdeploymentid(); info.id = taskCCClientObject.getId() == null ? "" : taskCCClientObject.getId(); info.taskname = taskCCClientObject.getTaskname() == null ? "" : taskCCClientObject.getTaskname(); return info; } }