001
014
015 package com.liferay.portal.workflow;
016
017 import com.liferay.portal.kernel.util.ListUtil;
018 import com.liferay.portal.kernel.workflow.WorkflowHandler;
019 import com.liferay.portal.kernel.workflow.WorkflowHandlerRegistry;
020
021 import java.util.List;
022 import java.util.Map;
023 import java.util.concurrent.ConcurrentHashMap;
024
025
029 public class WorkflowHandlerRegistryImpl implements WorkflowHandlerRegistry {
030
031 public WorkflowHandler getWorkflowHandler(String className) {
032 return _workflowHandlerMap.get(className);
033 }
034
035 public List<WorkflowHandler> getWorkflowHandlers() {
036 return ListUtil.fromCollection(_workflowHandlerMap.values());
037 }
038
039 public void register(WorkflowHandler workflowHandler) {
040 _workflowHandlerMap.put(
041 workflowHandler.getClassName(), workflowHandler);
042 }
043
044 public void unregister(WorkflowHandler workflowHandler) {
045 _workflowHandlerMap.remove(workflowHandler.getClassName());
046 }
047
048 private Map<String, WorkflowHandler> _workflowHandlerMap =
049 new ConcurrentHashMap<String, WorkflowHandler>();
050
051 }