1 package nl.hippo.cms.workflows.shared; 2 3 import org.apache.avalon.framework.logger.AbstractLogEnabled; 4 import org.apache.avalon.framework.service.ServiceException; 5 import org.apache.avalon.framework.service.ServiceManager; 6 import org.apache.avalon.framework.service.Serviceable; 7 import org.apache.avalon.framework.thread.ThreadSafe; 8 9 abstract class WorkflowExtensionComponent extends AbstractLogEnabled implements Serviceable, ThreadSafe 10 { 11 protected ServiceManager m_manager; 12 13 WorkflowExtensionComponent() 14 { 15 super(); 16 } 17 18 public void service(ServiceManager manager) throws ServiceException 19 { 20 m_manager = manager; 21 } 22 23 void assertLoadedAsComponent() 24 { 25 if (!hasBeenServiced()) 26 { 27 throw new IllegalStateException ("Workflow-extension component not loaded as a component"); 28 } 29 } 30 31 private boolean hasBeenServiced() 32 { 33 return m_manager != null; 34 } 35 36 } 37 | Popular Tags |