當前位置: 首頁>>代碼示例>>Java>>正文


Java OpenExecution類代碼示例

本文整理匯總了Java中org.jbpm.api.model.OpenExecution的典型用法代碼示例。如果您正苦於以下問題:Java OpenExecution類的具體用法?Java OpenExecution怎麽用?Java OpenExecution使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


OpenExecution類屬於org.jbpm.api.model包,在下文中一共展示了OpenExecution類的8個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: getTaskPrincipals

import org.jbpm.api.model.OpenExecution; //導入依賴的package包/類
public Collection<PrincipalDef> getTaskPrincipals(String assignmentDefId,OpenExecution execution) {
	String hql="from "+InternalAssignment.class.getName()+" where assignmentDefId=:assignmentDefId";
	Map<String,Object> map=new HashMap<String,Object>();
	map.put("assignmentDefId", assignmentDefId);
	List<InternalAssignment> internals=this.query(hql, map);
	List<PrincipalDef> result=new ArrayList<PrincipalDef>();
	for(InternalAssignment internal:internals){
		PrincipalDef def=new PrincipalDef();
		def.setId(internal.getValue());
		result.add(def);
	}
	return result;
}
 
開發者ID:bsteker,項目名稱:bdf2,代碼行數:14,代碼來源:SpecifyUserAssignmentProvider.java

示例2: getTaskPrincipals

import org.jbpm.api.model.OpenExecution; //導入依賴的package包/類
public Collection<PrincipalDef> getTaskPrincipals(String assignmentDefId,OpenExecution execution) {
	List<PrincipalDef> usernames=new ArrayList<PrincipalDef>();
	String username=(String)execution.getVariable(IBpmService.PROCESS_INSTANCE_PROMOTER);
	if(StringUtils.isEmpty(username)){
		throw new RuntimeException("Variable not found ["+IBpmService.PROCESS_INSTANCE_PROMOTER+"] in current process instance");
	}
	PrincipalDef p=new PrincipalDef();
	p.setId(username);
	usernames.add(p);
	return usernames;
}
 
開發者ID:bsteker,項目名稱:bdf2,代碼行數:12,代碼來源:PromoterAssignmentProvider.java

示例3: decide

import org.jbpm.api.model.OpenExecution; //導入依賴的package包/類
/**
 * To decide which transition will execute.
 * 
 * @param execution OpenExecution
 * @return String
 */
public String decide(OpenExecution execution) {

	Map<String, Object> map = execution.getVariables();
	BatchInstanceID batchInstanceID = null;
	boolean isReviewRequired = true;

	if (null != map) {
		batchInstanceID = (BatchInstanceID) map.get(WorkFlowConstants.BATCH_INSTANCE_ID);
	}

	final String batchInstanceIdentifier = batchInstanceID.getID();
	try {
		BatchSchemaService batchSchemaService = EnvironmentImpl.getCurrent().get(BatchSchemaService.class);
		isReviewRequired = batchSchemaService.isReviewRequired(batchInstanceIdentifier);

	} catch (DCMAApplicationException e) {
		LOGGER.error(e.getMessage(), e);
	}

	String content = WorkFlowConstants.YES_STRING;
	if (isReviewRequired) {
		content = WorkFlowConstants.YES_STRING;

	} else {
		content = WorkFlowConstants.NO_STRING;

		// Explicitly copy the batch xml for "resume" batch functionality
		BackUpFileService.backUpBatch(batchInstanceIdentifier, WorkFlowConstants.REVIEW_DOCUMENT_PLUGIN, batchInstanceService
				.getSystemFolderForBatchInstanceId(batchInstanceIdentifier));
	}

	return content;
}
 
開發者ID:kuzavas,項目名稱:ephesoft,代碼行數:40,代碼來源:ReviewEvaluation.java

示例4: decide

import org.jbpm.api.model.OpenExecution; //導入依賴的package包/類
/**
 * To decide which transition will execute.
 * 
 * @param execution OpenExecution
 * @return String
 */
public String decide(OpenExecution execution) {

	Map<String, Object> map = execution.getVariables();
	BatchInstanceID batchInstanceID = null;
	boolean isValidationRequired = true;

	if (null != map) {
		batchInstanceID = (BatchInstanceID) map.get(WorkFlowConstants.BATCH_INSTANCE_ID);
	}
	final String batchInstanceIdentifier = batchInstanceID.getID();
	try {
		BatchSchemaService batchSchemaService = EnvironmentImpl.getCurrent().get(BatchSchemaService.class);
		isValidationRequired = batchSchemaService.isValidationRequired(batchInstanceIdentifier);

	} catch (DCMAApplicationException e) {
		LOGGER.error(e.getMessage(), e);
	}

	String content = WorkFlowConstants.YES_STRING;
	if (isValidationRequired) {
		content = WorkFlowConstants.YES_STRING;
	} else {
		content = WorkFlowConstants.NO_STRING;

		// Explicitly copy the batch xml for "resume" batch functionality
		BackUpFileService.backUpBatch(batchInstanceIdentifier, WorkFlowConstants.VALIDATE_DOCUMENT_PLUGIN, batchInstanceService
				.getSystemFolderForBatchInstanceId(batchInstanceIdentifier));
	}

	return content;
}
 
開發者ID:kuzavas,項目名稱:ephesoft,代碼行數:38,代碼來源:ValidationEvaluation.java

示例5: decide

import org.jbpm.api.model.OpenExecution; //導入依賴的package包/類
/**
 * To decide which transition will execute.
 * 
 * @param execution OpenExecution
 * @return String
 */
public String decide(OpenExecution execution) {

	Map<String, Object> map = execution.getVariables();
	String resumeOption = null;
	if (null != map) {
		resumeOption = (String) map.get(WorkFlowConstants.RESTART_WORKFLOW);
	}
	if (resumeOption == null) {
		resumeOption = WorkFlowConstants.WORKFLOW_STATUS_RUNNING;
	}
	return resumeOption;
}
 
開發者ID:kuzavas,項目名稱:ephesoft,代碼行數:19,代碼來源:ResumeEvaluation.java

示例6: assign

import org.jbpm.api.model.OpenExecution; //導入依賴的package包/類
@SuppressWarnings("unchecked")
public void assign(Assignable assignable, OpenExecution execution) throws Exception {
	String hql="from "+TaskAssignment.class.getName()+" where processDefinitionId=:processDefinitionId and taskName=:taskName";
	IBpmService bpmService=ContextHolder.getBean(IBpmService.BEAN_ID);
	String processDefinitionId=execution.getProcessDefinitionId();
	String nodeName=execution.getActivity().getName();
	Session session=bpmService.getSessionFactory().openSession();
	try{
		List<TaskAssignment> list=session.createQuery(hql).setString("processDefinitionId", processDefinitionId).setString("taskName", nodeName).list();
		if(list.size()>0){
			List<String> principals=new ArrayList<String>();
			for(TaskAssignment assignment:list){
				String assignmentDefId=assignment.getAssignmentDefId();
				AssignmentDef def=(AssignmentDef)session.get(AssignmentDef.class, assignmentDefId);
				String type=def.getType();
				for(IAssignmentProvider provider:bpmService.getApplicationContext().getBeansOfType(IAssignmentProvider.class).values()){
					if(provider.getTypeId().equals(type)){
						Collection<PrincipalDef> p=provider.getTaskPrincipals(assignmentDefId, execution);
						if(p!=null && p.size()>0){
							for(PrincipalDef principalDef:p){
								String principal=principalDef.getId();
								if(!principals.contains(principal)){
									principals.add(principal);
								}
							}
						}
					}
				}
			}
			if(principals.size()>0){
				if(principals.size()==1){
					assignable.setAssignee(principals.get(0));
				}else{
					for(String id:principals){
						assignable.addCandidateUser(id);													
					}
				}
				createReminderJob(principals,session,(TaskImpl)assignable,execution.getProcessDefinitionId());
			}else{
				throw new RuntimeException("Task node ["+nodeName+"] in process "+processDefinitionId+" was not found any principal!");					
			}
		}else{
			throw new RuntimeException("Task node ["+nodeName+"] in process "+processDefinitionId+" was not found assignment info!");
		}
	}finally{
		session.flush();
		session.close();
	}
}
 
開發者ID:bsteker,項目名稱:bdf2,代碼行數:50,代碼來源:GenericTaskAssignmentHandler.java

示例7: decide

import org.jbpm.api.model.OpenExecution; //導入依賴的package包/類
@Override
public String decide(OpenExecution execution) {
	// TODO Auto-generated method stub
	
	System.out.println(execution.getId()+"************************************");
	
	
	Map map=JbpmUtil.getVariablesByexeIdtoMap(execution.getId(), JbpmUtil.getVariablesByexeIdtoSet(execution.getId()));
	
	
	String appboss=(String)map.get("approveBoss");
	
	String appfboss=(String)map.get("approvefBoss");
	
	if(appboss.equals(CONSTANT.OUTCOMEPZ) && appfboss.equals(CONSTANT.OUTCOMEPZ)){
		
		return CONSTANT.OUTCOMEPZ;
		
	}else if(appboss.equals(CONSTANT.OUTCOMEBH) || appfboss.equals(CONSTANT.OUTCOMEBH)){
		
	    return CONSTANT.OUTCOMEBH;
	    
	}else if(appboss.equals(CONSTANT.OUTCOMEBPZ) || appfboss.equals(CONSTANT.OUTCOMEBPZ)){
		
		return CONSTANT.OUTCOMEBPZ;
	}
	
	
	return CONSTANT.OUTCOMEPZ;
}
 
開發者ID:kider,項目名稱:jbpm4ssh,代碼行數:31,代碼來源:BossDecisionImpl.java

示例8: getTaskPrincipals

import org.jbpm.api.model.OpenExecution; //導入依賴的package包/類
/**
 * @param assignmentDefId 任務分配定義的ID
 * @param execution	當前流程實例執行上下文對象
 * @return 根據任務分配定義的ID返回所有與之對應的任務處理人的PrincipalDef集合
 */
Collection<PrincipalDef> getTaskPrincipals(String assignmentDefId,OpenExecution execution);
 
開發者ID:bsteker,項目名稱:bdf2,代碼行數:7,代碼來源:IAssignmentProvider.java


注:本文中的org.jbpm.api.model.OpenExecution類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。