djencks 2004/01/19 22:13:39
Modified: . maven.xml modules/core/src/java/org/apache/geronimo/connector BootstrapContext.java modules/core/src/java/org/apache/geronimo/connector/outbound ConnectionManagerDeployment.java modules/core/src/java/org/apache/geronimo/connector/outbound/security PasswordCredentialRealm.java modules/core/src/java/org/apache/geronimo/connector/work GeronimoWorkManager.java modules/core/src/test/org/apache/geronimo/connector/outbound ConnectionManagerTest.java modules/deployment/src/test-resources/etc bootstrapped-service.xml Log: gbean-ify the easy connector beans Revision Changes Path 1.52 +9 -1 incubator-geronimo/maven.xml Index: maven.xml =================================================================== RCS file: /home/cvs/incubator-geronimo/maven.xml,v retrieving revision 1.51 retrieving revision 1.52 diff -u -r1.51 -r1.52 --- maven.xml 20 Jan 2004 01:36:58 -0000 1.51 +++ maven.xml 20 Jan 2004 06:13:38 -0000 1.52 @@ -663,6 +663,10 @@ <fileset dir="${maven.repo.local}/regexp/jars"> <include name="regexp-1.3-dev.jar"/> </fileset> + <!-- connector work manager --> + <fileset dir="${maven.repo.local}/concurrent/jars"> + <include name="concurrent-1.3.2.jar"/> + </fileset> </classpath> <arg value="file:${run.dir}/deployment/src/test-resources/etc/bootstrapped-service.xml"/> @@ -735,6 +739,10 @@ <!-- security --> <fileset dir="${maven.repo.local}/regexp/jars"> <include name="regexp-1.3-dev.jar"/> + </fileset> + <!-- connector work manager --> + <fileset dir="${maven.repo.local}/concurrent/jars"> + <include name="concurrent-1.3.2.jar"/> </fileset> </classpath> 1.3 +24 -1 incubator-geronimo/modules/core/src/java/org/apache/geronimo/connector/BootstrapContext.java Index: BootstrapContext.java =================================================================== RCS file: /home/cvs/incubator-geronimo/modules/core/src/java/org/apache/geronimo/connector/BootstrapContext.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- BootstrapContext.java 26 Nov 2003 02:17:40 -0000 1.2 +++ BootstrapContext.java 20 Jan 2004 06:13:38 -0000 1.3 @@ -64,12 +64,19 @@ import org.apache.geronimo.kernel.service.GeronimoMBeanEndpoint; import org.apache.geronimo.kernel.service.GeronimoMBeanInfo; +import org.apache.geronimo.gbean.GBeanInfo; +import org.apache.geronimo.gbean.GBeanInfoFactory; +import org.apache.geronimo.gbean.GOperationInfo; +import org.apache.geronimo.gbean.GEndpointInfo; +import org.apache.geronimo.gbean.GConstructorInfo; /** * @version $Revision$ $Date$ */ public class BootstrapContext implements javax.resource.spi.BootstrapContext { + private static final GBeanInfo GBEAN_INFO; + private WorkManager workManager; private XATerminator xATerminator; @@ -117,6 +124,22 @@ return new Timer(); } + static { + GBeanInfoFactory infoFactory = new GBeanInfoFactory(BootstrapContext.class.getName()); + infoFactory.addOperation(new GOperationInfo("getWorkManager")); + infoFactory.addOperation(new GOperationInfo("getXATerminator")); + infoFactory.addOperation(new GOperationInfo("createTimer")); + infoFactory.addEndpoint(new GEndpointInfo("WorkManager", WorkManager.class.getName())); + infoFactory.addEndpoint(new GEndpointInfo("XATerminator", XATerminator.class.getName())); + infoFactory.setConstructor(new GConstructorInfo( + new String[] {"WorkManager", "XATerminator"}, + new Class[] {WorkManager.class, XATerminator.class})); + GBEAN_INFO = infoFactory.getBeanInfo(); + } + + public static GBeanInfo getGBeanInfo() { + return GBEAN_INFO; + } public static GeronimoMBeanInfo getGeronimoMBeanInfo() throws Exception { GeronimoMBeanInfo rc = new GeronimoMBeanInfo(); 1.11 +89 -26 incubator-geronimo/modules/core/src/java/org/apache/geronimo/connector/outbound/ConnectionManagerDeployment.java Index: ConnectionManagerDeployment.java =================================================================== RCS file: /home/cvs/incubator-geronimo/modules/core/src/java/org/apache/geronimo/connector/outbound/ConnectionManagerDeployment.java,v retrieving revision 1.10 retrieving revision 1.11 diff -u -r1.10 -r1.11 --- ConnectionManagerDeployment.java 15 Jan 2004 01:20:53 -0000 1.10 +++ ConnectionManagerDeployment.java 20 Jan 2004 06:13:38 -0000 1.11 @@ -57,12 +57,22 @@ package org.apache.geronimo.connector.outbound; import javax.management.MBeanOperationInfo; +import javax.management.MBeanServer; +import javax.management.MalformedObjectNameException; import javax.management.ObjectName; import javax.resource.ResourceException; import javax.resource.spi.ManagedConnectionFactory; import org.apache.geronimo.connector.deployment.ConnectionManagerFactory; import org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTracker; +import org.apache.geronimo.gbean.GAttributeInfo; +import org.apache.geronimo.gbean.GBean; +import org.apache.geronimo.gbean.GBeanInfo; +import org.apache.geronimo.gbean.GBeanInfoFactory; +import org.apache.geronimo.gbean.GConstructorInfo; +import org.apache.geronimo.gbean.GEndpointInfo; +import org.apache.geronimo.gbean.GOperationInfo; +import org.apache.geronimo.kernel.KernelMBean; import org.apache.geronimo.kernel.service.GeronimoAttributeInfo; import org.apache.geronimo.kernel.service.GeronimoMBeanContext; import org.apache.geronimo.kernel.service.GeronimoMBeanEndpoint; @@ -79,9 +89,9 @@ * * @version $Revision$ $Date$ * */ -public class ConnectionManagerDeployment +public class ConnectionManagerDeployment implements GeronimoMBeanTarget, ConnectionManagerFactory, GBean { - implements GeronimoMBeanTarget, ConnectionManagerFactory { + private static final GBeanInfo GBEAN_INFO; private final static String MBEAN_SERVER_DELEGATE = "JMImplementation:type=MBeanServerDelegate"; @@ -103,12 +113,11 @@ /** * Identifying string used by unshareable resource detection */ - private String jndiName; + private String name; //dependencies private RealmBridge realmBridge; private ConnectionTracker connectionTracker; - - private String globalJNDIName; + private KernelMBean kernel; //GeronimoMBeanTarget support. private GeronimoMBeanContext context; @@ -117,17 +126,17 @@ public ConnectionManagerDeployment() { } - //constructor primarily for testing. Connection manager/connection factory will not be serializable. public ConnectionManagerDeployment(boolean useConnectionRequestInfo, - boolean useSubject, - boolean useTransactionCaching, - boolean useLocalTransactions, - boolean useTransactions, - int maxSize, - int blockingTimeout, - RealmBridge realmBridge, - String jndiName, - ConnectionTracker connectionTracker) { + boolean useSubject, + boolean useTransactionCaching, + boolean useLocalTransactions, + boolean useTransactions, + int maxSize, + int blockingTimeout, + String name, + RealmBridge realmBridge, + ConnectionTracker connectionTracker, + KernelMBean kernel) { this.useConnectionRequestInfo = useConnectionRequestInfo; this.useLocalTransactions = useLocalTransactions; this.useSubject = useSubject; @@ -136,9 +145,9 @@ this.maxSize = maxSize; this.blockingTimeout = blockingTimeout; this.realmBridge = realmBridge; - this.jndiName = jndiName; + this.name = name; this.connectionTracker = connectionTracker; - setUpConnectionManager(null, null); + this.kernel = kernel; } public void setMBeanContext(GeronimoMBeanContext context) { @@ -150,14 +159,29 @@ } public void doStart() { - ObjectName connectionManagerName = context.getObjectName(); + MBeanServer mbeanServer = null; + if (kernel != null) { + mbeanServer = kernel.getMBeanServer(); + } else if (context != null) { + mbeanServer = context.getServer(); + } else { + throw new IllegalStateException("Neither kernel nor context is set, but you're trying to start"); + } + String agentID; try { ObjectName name = ObjectName.getInstance(MBEAN_SERVER_DELEGATE); - agentID = (String) context.getServer().getAttribute(name, "MBeanServerId"); + agentID = (String) mbeanServer.getAttribute(name, "MBeanServerId"); } catch (Exception e) { throw new RuntimeException("Problem getting agentID from MBeanServerDelegate", e); } + + ObjectName connectionManagerName = null; + try { + connectionManagerName = ObjectName.getInstance("geronimo.management:j2eeType=ConnectionManager,name=" + name); + } catch (MalformedObjectNameException e) { + throw new RuntimeException("could not construct an object name for ConnectionManagerDeployment mbean", e); + } setUpConnectionManager(agentID, connectionManagerName); } @@ -217,7 +241,7 @@ if (connectionTracker != null) { stack = new ConnectionTrackingInterceptor( stack, - jndiName, + name, connectionTracker, realmBridge); } @@ -267,12 +291,12 @@ this.connectionTracker = connectionTracker; } - public String getJndiName() { - return jndiName; + public String getName() { + return name; } - public void setJndiName(String jndiName) { - this.jndiName = jndiName; + public void setName(String name) { + this.name = name; } public int getMaxSize() { @@ -334,6 +358,45 @@ this.useTransactionCaching = useTransactionCaching; } + public KernelMBean getKernel() { + return kernel; + } + + public void setKernel(KernelMBean kernel) { + this.kernel = kernel; + } + + static { + GBeanInfoFactory infoFactory = new GBeanInfoFactory(ConnectionManagerDeployment.class.getName()); + + infoFactory.addAttribute(new GAttributeInfo("BlockingTimeout", true)); + infoFactory.addAttribute(new GAttributeInfo("Name", true)); + infoFactory.addAttribute(new GAttributeInfo("MaxSize", true)); + infoFactory.addAttribute(new GAttributeInfo("UseConnectionRequestInfo", true)); + infoFactory.addAttribute(new GAttributeInfo("UseTransactions", true)); + infoFactory.addAttribute(new GAttributeInfo("UseLocalTransactions", true)); + infoFactory.addAttribute(new GAttributeInfo("UseTransactionCaching", true)); + infoFactory.addAttribute(new GAttributeInfo("UseSubject", true)); + + infoFactory.addOperation(new GOperationInfo("getStack")); + infoFactory.addOperation(new GOperationInfo("createConnectionFactory", new String[]{ManagedConnectionFactory.class.getName()})); + + infoFactory.addEndpoint(new GEndpointInfo("ConnectionTracker", ConnectionTracker.class.getName())); + infoFactory.addEndpoint(new GEndpointInfo("RealmBridge", RealmBridge.class.getName())); + infoFactory.addEndpoint(new GEndpointInfo("Kernel", KernelMBean.class.getName())); + + infoFactory.setConstructor(new GConstructorInfo( + new String[]{"UseConnectionRequestInfo", "UseSubject", "UseTransactionCaching", "UseLocalTransactions", "UseTransactions", + "MaxSize", "BlockingTimeout", "Name", "RealmBridge", "ConnectionTracker", "Kernel"}, + new Class[]{Boolean.TYPE, Boolean.TYPE, Boolean.TYPE, Boolean.TYPE, Boolean.TYPE, + Integer.TYPE, Integer.TYPE, String.class, RealmBridge.class, ConnectionTracker.class, KernelMBean.class})); + GBEAN_INFO = infoFactory.getBeanInfo(); + } + + public static GBeanInfo getGBeanInfo() { + return GBEAN_INFO; + } + public static GeronimoMBeanInfo getGeronimoMBeanInfo() throws Exception { GeronimoMBeanInfo mBeanInfo = new GeronimoMBeanInfo(); @@ -353,7 +416,7 @@ mBeanInfo.addOperationInfo(new GeronimoOperationInfo("getStack")); mBeanInfo.addOperationInfo(new GeronimoOperationInfo("createConnectionFactory", - new GeronimoParameterInfo[] {new GeronimoParameterInfo("ManagedConnectionFactory", ManagedConnectionFactory.class, "ManagedConnectionFactory that will create the ConnectionFactory")}, + new GeronimoParameterInfo[]{new GeronimoParameterInfo("ManagedConnectionFactory", ManagedConnectionFactory.class, "ManagedConnectionFactory that will create the ConnectionFactory")}, MBeanOperationInfo.ACTION, "PRIVATE OPERATION. Have the supplied ManagedConnectionFactory create a connection factory")); return mBeanInfo; 1.2 +21 -9 incubator-geronimo/modules/core/src/java/org/apache/geronimo/connector/outbound/security/PasswordCredentialRealm.java Index: PasswordCredentialRealm.java =================================================================== RCS file: /home/cvs/incubator-geronimo/modules/core/src/java/org/apache/geronimo/connector/outbound/security/PasswordCredentialRealm.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- PasswordCredentialRealm.java 11 Jan 2004 08:28:15 -0000 1.1 +++ PasswordCredentialRealm.java 20 Jan 2004 06:13:38 -0000 1.2 @@ -59,14 +59,15 @@ import java.util.HashMap; import java.util.Map; import java.util.Set; -import java.security.Principal; import javax.resource.spi.ManagedConnectionFactory; -import javax.resource.spi.security.PasswordCredential; import javax.security.auth.login.AppConfigurationEntry; +import org.apache.geronimo.gbean.GBeanInfo; +import org.apache.geronimo.gbean.GBeanInfoFactory; import org.apache.geronimo.kernel.service.GeronimoAttributeInfo; import org.apache.geronimo.kernel.service.GeronimoMBeanInfo; +import org.apache.geronimo.security.AbstractSecurityRealm; import org.apache.geronimo.security.GeronimoSecurityException; import org.apache.geronimo.security.SecurityRealm; import org.apache.regexp.RE; @@ -79,18 +80,14 @@ * */ public class PasswordCredentialRealm implements SecurityRealm { + private static final GBeanInfo GBEAN_INFO; + private String realmName; ManagedConnectionFactory managedConnectionFactory; static final String REALM_INSTANCE = "org.apache.connector.outbound.security.PasswordCredentialRealm"; - public static GeronimoMBeanInfo getGeronimoMBeanInfo() { - GeronimoMBeanInfo mbeanInfo = new GeronimoMBeanInfo(); - mbeanInfo.setTargetClass(PasswordCredentialRealm.class); - mbeanInfo.addAttributeInfo(new GeronimoAttributeInfo("Realm", true, true, "Name of this realm")); - return mbeanInfo; - } public void setRealmName(String realmName) { this.realmName = realmName; @@ -136,4 +133,19 @@ return managedConnectionFactory; } + static { + GBeanInfoFactory infoFactory = new GBeanInfoFactory(PasswordCredentialRealm.class.getName(), AbstractSecurityRealm.getGBeanInfo()); + GBEAN_INFO = infoFactory.getBeanInfo(); + } + + public static GBeanInfo getGBeanInfo() { + return GBEAN_INFO; + } + + public static GeronimoMBeanInfo getGeronimoMBeanInfo() { + GeronimoMBeanInfo mbeanInfo = new GeronimoMBeanInfo(); + mbeanInfo.setTargetClass(PasswordCredentialRealm.class); + mbeanInfo.addAttributeInfo(new GeronimoAttributeInfo("Realm", true, true, "Name of this realm")); + return mbeanInfo; + } } 1.6 +53 -19 incubator-geronimo/modules/core/src/java/org/apache/geronimo/connector/work/GeronimoWorkManager.java Index: GeronimoWorkManager.java =================================================================== RCS file: /home/cvs/incubator-geronimo/modules/core/src/java/org/apache/geronimo/connector/work/GeronimoWorkManager.java,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- GeronimoWorkManager.java 27 Nov 2003 02:30:21 -0000 1.5 +++ GeronimoWorkManager.java 20 Jan 2004 06:13:38 -0000 1.6 @@ -55,6 +55,7 @@ */ package org.apache.geronimo.connector.work; + import javax.resource.spi.work.ExecutionContext; import javax.resource.spi.work.Work; import javax.resource.spi.work.WorkException; @@ -67,6 +68,11 @@ import org.apache.geronimo.connector.work.pool.WorkExecutorPool; import org.apache.geronimo.kernel.service.GeronimoMBeanInfo; import org.apache.geronimo.kernel.service.GeronimoAttributeInfo; +import org.apache.geronimo.gbean.GBeanInfo; +import org.apache.geronimo.gbean.GBeanInfoFactory; +import org.apache.geronimo.gbean.GAttributeInfo; +import org.apache.geronimo.gbean.GOperationInfo; +import org.apache.geronimo.gbean.GConstructorInfo; /** * WorkManager implementation which uses under the cover three WorkExecutorPool @@ -79,13 +85,15 @@ * TODO There needs to be better lifecycle support. The individual pools can be stopped now, but * not restarted AFAIK. * -* @version $Revision$ $Date$ + * @version $Revision$ $Date$ */ public class GeronimoWorkManager implements WorkManager { private final static int DEFAULT_MIN_POOL_SIZE = 0; private final static int DEFAULT_MAX_POOL_SIZE = 10; + private static final GBeanInfo GBEAN_INFO; + /** * Pool of threads used by this WorkManager in order to process * the Work instances submitted via the doWork methods. @@ -192,13 +200,13 @@ * @see javax.resource.spi.work.WorkManager#doWork(javax.resource.spi.work.Work, long, javax.resource.spi.work.ExecutionContext, javax.resource.spi.work.WorkListener) */ public void doWork( - Work work, - long startTimeout, - ExecutionContext execContext, - WorkListener workListener) - throws WorkException { + Work work, + long startTimeout, + ExecutionContext execContext, + WorkListener workListener) + throws WorkException { WorkerContext workWrapper = - new WorkerContext(work, startTimeout, execContext, workListener); + new WorkerContext(work, startTimeout, execContext, workListener); workWrapper.setThreadPriority(Thread.currentThread().getPriority()); syncWorkExecutorPool.executeWork(workWrapper); } @@ -217,13 +225,13 @@ * @see javax.resource.spi.work.WorkManager#startWork(javax.resource.spi.work.Work, long, javax.resource.spi.work.ExecutionContext, javax.resource.spi.work.WorkListener) */ public long startWork( - Work work, - long startTimeout, - ExecutionContext execContext, - WorkListener workListener) - throws WorkException { + Work work, + long startTimeout, + ExecutionContext execContext, + WorkListener workListener) + throws WorkException { WorkerContext workWrapper = - new WorkerContext(work, startTimeout, execContext, workListener); + new WorkerContext(work, startTimeout, execContext, workListener); workWrapper.setThreadPriority(Thread.currentThread().getPriority()); startWorkExecutorPool.executeWork(workWrapper); return System.currentTimeMillis() - workWrapper.getAcceptedTime(); @@ -242,17 +250,43 @@ * @see javax.resource.spi.work.WorkManager#scheduleWork(javax.resource.spi.work.Work, long, javax.resource.spi.work.ExecutionContext, javax.resource.spi.work.WorkListener) */ public void scheduleWork( - Work work, - long startTimeout, - ExecutionContext execContext, - WorkListener workListener) - throws WorkException { + Work work, + long startTimeout, + ExecutionContext execContext, + WorkListener workListener) + throws WorkException { WorkerContext workWrapper = - new WorkerContext(work, startTimeout, execContext, workListener); + new WorkerContext(work, startTimeout, execContext, workListener); workWrapper.setThreadPriority(Thread.currentThread().getPriority()); scheduledWorkExecutorPool.executeWork(workWrapper); } + static { + GBeanInfoFactory infoFactory = new GBeanInfoFactory(GeronimoWorkManager.class.getName()); + infoFactory.addAttribute(new GAttributeInfo("SyncThreadCount", true)); + infoFactory.addAttribute(new GAttributeInfo("SyncMinimumPoolSize", true)); + infoFactory.addAttribute(new GAttributeInfo("SyncMaximumPoolSize", true)); + infoFactory.addAttribute(new GAttributeInfo("StartThreadCount", true)); + infoFactory.addAttribute(new GAttributeInfo("StartMinimumPoolSize", true)); + infoFactory.addAttribute(new GAttributeInfo("StartMaximumPoolSize", true)); + infoFactory.addAttribute(new GAttributeInfo("ScheduledThreadCount", true)); + infoFactory.addAttribute(new GAttributeInfo("ScheduledMinimumPoolSize", true)); + infoFactory.addAttribute(new GAttributeInfo("ScheduledMaximumPoolSize", true)); + infoFactory.addOperation(new GOperationInfo("doWork", new String[]{Work.class.getName()})); + infoFactory.addOperation(new GOperationInfo("doWork", new String[]{Work.class.getName(), Long.TYPE.getName(), ExecutionContext.class.getName(), WorkListener.class.getName()})); + infoFactory.addOperation(new GOperationInfo("startWork", new String[]{Work.class.getName()})); + infoFactory.addOperation(new GOperationInfo("startWork", new String[]{Work.class.getName(), Long.TYPE.getName(), ExecutionContext.class.getName(), WorkListener.class.getName()})); + infoFactory.addOperation(new GOperationInfo("scheduleWork", new String[]{Work.class.getName()})); + infoFactory.addOperation(new GOperationInfo("scheduleWork", new String[]{Work.class.getName(), Long.TYPE.getName(), ExecutionContext.class.getName(), WorkListener.class.getName()})); + infoFactory.setConstructor(new GConstructorInfo( + new String[] {"SyncMinimumPoolSize", "SyncMaximumPoolSize", "StartMinimumPoolSize", "StartMaximumPoolSize", "ScheduledMinimumPoolSize", "ScheduledMaximumPoolSize"}, + new Class[] {Integer.TYPE, Integer.TYPE, Integer.TYPE, Integer.TYPE, Integer.TYPE, Integer.TYPE})); + GBEAN_INFO = infoFactory.getBeanInfo(); + } + + public static GBeanInfo getGBeanInfo() { + return GBEAN_INFO; + } /** * Provides the GeronimoMBean description for this class 1.3 +12 -4 incubator-geronimo/modules/core/src/test/org/apache/geronimo/connector/outbound/ConnectionManagerTest.java Index: ConnectionManagerTest.java =================================================================== RCS file: /home/cvs/incubator-geronimo/modules/core/src/test/org/apache/geronimo/connector/outbound/ConnectionManagerTest.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- ConnectionManagerTest.java 11 Jan 2004 08:28:15 -0000 1.2 +++ ConnectionManagerTest.java 20 Jan 2004 06:13:38 -0000 1.3 @@ -74,6 +74,7 @@ import org.apache.geronimo.connector.outbound.connectiontracking.defaultimpl.DefaultInterceptor; import org.apache.geronimo.security.bridge.RealmBridge; import org.apache.geronimo.transaction.manager.TransactionManagerImpl; +import org.apache.geronimo.kernel.Kernel; /** * @@ -90,10 +91,11 @@ protected boolean useTransactions = true; protected int maxSize = 5; protected int blockingTimeout = 100; - protected String jndiName = "testCF"; + protected String name = "testCF"; //dependencies protected RealmBridge realmBridge = this; protected ConnectionTrackingCoordinator connectionTrackingCoordinator; + protected Kernel kernel; protected TransactionManager transactionManager; protected ConnectionManagerDeployment connectionManagerDeployment; @@ -107,6 +109,8 @@ protected void setUp() throws Exception { connectionTrackingCoordinator = new ConnectionTrackingCoordinator(); + kernel = new Kernel("testdomain"); + kernel.boot(); transactionManager = new TransactionManagerImpl(); mockManagedConnectionFactory = new MockManagedConnectionFactory(); subject = new Subject(); @@ -117,9 +121,11 @@ useTransactions, maxSize, blockingTimeout, + name, realmBridge, - jndiName, - connectionTrackingCoordinator); + connectionTrackingCoordinator, + kernel); + connectionManagerDeployment.doStart(); connectionFactory = (MockConnectionFactory)connectionManagerDeployment.createConnectionFactory(mockManagedConnectionFactory); defaultComponentContext = new DefaultComponentContext(); defaultComponentInterceptor = new DefaultComponentInterceptor(this, connectionTrackingCoordinator, unshareableResources, transactionManager); @@ -127,6 +133,8 @@ protected void tearDown() throws Exception { connectionTrackingCoordinator = null; + kernel.shutdown(); + kernel = null; transactionManager = null; mockManagedConnectionFactory = null; connectionManagerDeployment = null; 1.4 +64 -3 incubator-geronimo/modules/deployment/src/test-resources/etc/bootstrapped-service.xml Index: bootstrapped-service.xml =================================================================== RCS file: /home/cvs/incubator-geronimo/modules/deployment/src/test-resources/etc/bootstrapped-service.xml,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- bootstrapped-service.xml 20 Jan 2004 01:36:59 -0000 1.3 +++ bootstrapped-service.xml 20 Jan 2004 06:13:39 -0000 1.4 @@ -35,6 +35,70 @@ <default attribute="GroupsURI" type="java.net.URI">file:./core/src/test-data/data/groups.properties</default> </gbean> + <gbean class="org.apache.geronimo.security.bridge.CallerIdentityUserPasswordRealmBridge" objectName="geronimo.security:service=RealmBridge,type=CallerIdentity"> + <default attribute="TargetRealm" type="java.lang.String">Foo</default> + </gbean> + + <gbean class="org.apache.geronimo.security.bridge.ConfiguredIdentityUserPasswordRealmBridge" objectName="geronimo.security:service=RealmBridge,type=ConfiguredIdentity"> + <default attribute="TargetRealm" type="java.lang.String">Foo</default> + <default attribute="ConfiguredUser" type="java.lang.String">user</default> + <default attribute="ConfiguredPassword" type="java.lang.String">password</default> + </gbean> + + <gbean class="org.apache.geronimo.security.bridge.PropertiesFilePrincipalMappingUserPasswordRealmBridge" objectName="geronimo.security:service=RealmBridge,type=MappedIdentity"> + <default attribute="TargetRealm" type="java.lang.String">Foo</default> + <default attribute="PrincipalSourceType" type="java.lang.Class">org.apache.geronimo.security.providers.PropertiesFileUserPrincipal</default> + <default attribute="PrincipalTargetCallbackName" type="java.lang.String">user name</default> + <default attribute="UserNameSourceType" type="java.lang.Class">org.apache.geronimo.security.providers.PropertiesFileUserPrincipal</default> + <default attribute="UserNameTargetCallbackName" type="java.lang.String">user name</default> + <default attribute="PasswordSourceType" type="java.lang.Class">org.apache.geronimo.security.providers.PropertiesFileUserPrincipal</default> + <default attribute="PropertyFileURL" type="java.net.URL">file:./core/src/test-data/data/mapping.properties</default> + </gbean> + + <!-- transaction --> + <gbean class="org.apache.geronimo.transaction.TransactionManagerProxy" objectName="geronimo.transaction:service=TransactionManager"/> + + <!-- connector --> + <gbean class="org.apache.geronimo.connector.work.GeronimoWorkManager" objectName="geronimo.connector:service=WorkManager"> + <default attribute="SyncMinimumPoolSize" type="int">0</default> + <default attribute="SyncMaximumPoolSize" type="int">10</default> + <default attribute="StartMinimumPoolSize" type="int">0</default> + <default attribute="StartMaximumPoolSize" type="int">10</default> + <default attribute="ScheduledMinimumPoolSize" type="int">0</default> + <default attribute="ScheduledMaximumPoolSize" type="int">10</default> + </gbean> + + <gbean class="org.apache.geronimo.connector.BootstrapContext" objectName="geronimo.connector:role=BootstrapContext"> + <endpoint name="WorkManager"> + <pattern>geronimo.connector:service=WorkManager</pattern> + </endpoint> + <endpoint name="XATerminator"> + <pattern>geronimo.transaction:service=TransactionManager</pattern> + </endpoint> + </gbean> + + <gbean class="org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator" objectName="geronimo.connector:service=ConnectionTrackingCoordinator"/> + + <gbean class="org.apache.geronimo.connector.outbound.ConnectionManagerDeployment" objectName="geronimo.management:j2eeType=ConnectionManager,name=test"> + <default attribute="UseConnectionRequestInfo" type="boolean">false</default> + <default attribute="UseSubject" type="boolean">false</default> + <default attribute="UseTransactionCaching" type="boolean">true</default> + <default attribute="UseLocalTransactions" type="boolean">true</default> + <default attribute="UseTransactions" type="boolean">true</default> + <default attribute="MaxSize" type="int">10</default> + <default attribute="BlockingTimeout" type="int">1000</default> + <default attribute="Name" type="java.lang.String">test</default> + <endpoint name="RealmBridge"> + <pattern>geronimo.security:service=RealmBridge,type=CallerIdentity</pattern> + </endpoint> + <endpoint name="ConnectionTracker"> + <pattern>geronimo.connector:service=ConnectionTrackingCoordinator</pattern> + </endpoint> + <endpoint name="Kernel"> + <pattern>geronimo.boot:role=Kernel</pattern> + </endpoint> + </gbean> + <!-- web --> <gbean class="org.apache.geronimo.web.jetty.JettyWebContainer" objectName="geronimo.web:type=WebContainer,container=Jetty"> @@ -72,9 +136,6 @@ </endpoint> </gbean> - <gbean class="org.apache.geronimo.transaction.TransactionManagerProxy" objectName="geronimo.transaction:service=TransactionManager"/> - - <gbean class="org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator" objectName="geronimo.connector:service=ConnectionTrackingCoordinator"/> <gbean class="org.apache.geronimo.deployment.util.ExplicitDeployment" objectName="geronimo.app:name=WebConsole"> <default attribute="ConfigID" type="java.net.URI">org/apache/geronimo/WebConsole</default>