1 17 package org.apache.geronimo.clustering.wadi; 18 19 import org.apache.geronimo.gbean.GBeanInfo; 20 import org.apache.geronimo.gbean.GBeanInfoBuilder; 21 import org.apache.geronimo.gbean.GBeanLifecycle; 22 import org.apache.geronimo.j2ee.j2eeobjectnames.NameFactory; 23 import org.codehaus.wadi.replication.manager.ReplicationManager; 24 import org.codehaus.wadi.replication.manager.ReplicationManagerFactory; 25 import org.codehaus.wadi.replication.manager.basic.BasicReplicationManagerFactory; 26 import org.codehaus.wadi.replication.strategy.BackingStrategyFactory; 27 import org.codehaus.wadi.servicespace.ServiceSpace; 28 29 33 public class BasicReplicationManagerFactoryGBean implements ReplicationManagerFactory, GBeanLifecycle { 34 private ReplicationManagerFactory factory; 35 36 public ReplicationManager factory(ServiceSpace serviceSpace, BackingStrategyFactory backingStrategyFactory) { 37 return factory.factory(serviceSpace, backingStrategyFactory); 38 } 39 40 public void doFail() { 41 factory = null; 42 } 43 44 public void doStart() throws Exception { 45 factory = new BasicReplicationManagerFactory(); 46 } 47 48 public void doStop() throws Exception { 49 factory = null; 50 } 51 52 public static final GBeanInfo GBEAN_INFO; 53 54 static { 55 GBeanInfoBuilder infoBuilder = GBeanInfoBuilder.createStatic(BasicReplicationManagerFactoryGBean.class, 56 NameFactory.GERONIMO_SERVICE); 57 58 infoBuilder.addInterface(ReplicationManagerFactory.class); 59 60 infoBuilder.setConstructor(new String [0]); 61 62 GBEAN_INFO = infoBuilder.getBeanInfo(); 63 } 64 65 public static GBeanInfo getGBeanInfo() { 66 return GBEAN_INFO; 67 } 68 } 69 | Popular Tags |