package com.xcgl.activititask.util; import com.xcgl.activititask.bean.ActivitiTaskResult; import com.xcgl.activititask.entity.PActivitiTaskEntity; import com.xcgl.projecttask.entity.ProjecttaskEntity; import org.apache.commons.lang.xwork.StringUtils; import java.util.Collections; import java.util.List; public class ActivitiTaskHandlerUtil { public static ActivitiTaskHandler getHandler(String handlerClassValue){ if(StringUtils.isNotBlank(handlerClassValue)){ try { Class clazz = Class.forName(handlerClassValue); ActivitiTaskHandler handler = (ActivitiTaskHandler) clazz.newInstance(); return handler; } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (InstantiationException e) { e.printStackTrace(); } } return new NullHandler(); } private static class NullHandler implements ActivitiTaskHandler{ @Override public boolean canDo(PActivitiTaskEntity activitiTaskEntity, String table, String formId) { return false; } @Override public List createTask(PActivitiTaskEntity activitiTaskEntity, String table, String formId) { return Collections.EMPTY_LIST; } @Override public ActivitiTaskResult checkResult(ProjecttaskEntity projecttask) { ActivitiTaskResult result = new ActivitiTaskResult(); result.setDone(true); return result; } } }