1 16 package org.apache.cocoon.webservices; 17 18 import javax.xml.rpc.ServiceException ; 19 20 import org.apache.avalon.framework.component.ComponentException; 21 import org.apache.avalon.framework.component.ComponentManager; 22 import org.apache.avalon.framework.component.Composable; 23 import org.apache.cocoon.components.axis.providers.AvalonProvider; 24 25 41 public abstract class AbstractComposableService 42 extends AbstractLogEnabledService 43 implements Composable { 44 45 protected ComponentManager m_manager; 47 48 57 public void init(final Object context) throws ServiceException { 58 super.init(context); 59 60 try { 61 setComponentManager(); 62 63 } catch (ComponentException e) { 64 throw new ServiceException ("ComponentException generated", e); 65 } 66 } 67 68 74 public void compose(final ComponentManager manager) throws ComponentException { 75 m_manager = manager; 76 } 77 78 83 private void setComponentManager() throws ComponentException { 84 compose( 85 (ComponentManager) m_context.getProperty( 86 AvalonProvider.COMPONENT_MANAGER 87 ) 88 ); 89 } 90 91 94 public void destroy() { 95 super.destroy(); 96 97 m_manager = null; 98 } 99 } 100 | Popular Tags |