import org.kuali.rice.kew.actiontaken.ActionTakenValue; //导入方法依赖的package包/类
public void validateActionTaken(ActionTakenValue actionTaken){
LOG.debug("Enter validateActionTaken(..)");
List errors = new ArrayList();
String documentId = actionTaken.getDocumentId();
if(documentId == null){
errors.add(new WorkflowServiceErrorImpl("ActionTaken documentid null.", "actiontaken.documentid.empty", actionTaken.getActionTakenId().toString()));
} else if(getRouteHeaderService().getRouteHeader(documentId) == null){
errors.add(new WorkflowServiceErrorImpl("ActionTaken documentid invalid.", "actiontaken.documentid.invalid", actionTaken.getActionTakenId().toString()));
}
String principalId = actionTaken.getPrincipalId();
if(StringUtils.isBlank(principalId)){
errors.add(new WorkflowServiceErrorImpl("ActionTaken personid null.", "actiontaken.personid.empty", actionTaken.getActionTakenId().toString()));
} else {
Principal principal = KimApiServiceLocator.getIdentityService().getPrincipal(principalId);
if (principal == null) {
errors.add(new WorkflowServiceErrorImpl("ActionTaken personid invalid.", "actiontaken.personid.invalid", actionTaken.getActionTakenId().toString()));
}
}
String actionTakenCd = actionTaken.getActionTaken();
if(actionTakenCd == null || actionTakenCd.trim().equals("")){
errors.add(new WorkflowServiceErrorImpl("ActionTaken cd null.", "actiontaken.actiontaken.empty", actionTaken.getActionTakenId().toString()));
} else if(!KewApiConstants.ACTION_TAKEN_CD.containsKey(actionTakenCd)){
errors.add(new WorkflowServiceErrorImpl("ActionTaken invalid.", "actiontaken.actiontaken.invalid", actionTaken.getActionTakenId().toString()));
}
if(actionTaken.getActionDate() == null){
errors.add(new WorkflowServiceErrorImpl("ActionTaken actiondate null.", "actiontaken.actiondate.empty", actionTaken.getActionTakenId().toString()));
}
if(actionTaken.getDocVersion() == null){
errors.add(new WorkflowServiceErrorImpl("ActionTaken docversion null.", "actiontaken.docverion.empty", actionTaken.getActionTakenId().toString()));
}
LOG.debug("Exit validateActionRequest(..) ");
if (!errors.isEmpty()) {
throw new WorkflowServiceErrorException("ActionRequest Validation Error", errors);
}
}