User: starksm Date: 02/02/18 15:54:34 Added: src/main/org/jboss/test/jbossmx/implementation/server/support ContextCL.java ContextCLMBean.java TestClassLoader.java TestClassLoaderMBean.java TestData.java Log: Add test case for an mbean requiring its loader to be used as the operation thread context class loader. Revision Changes Path 1.1 jbosstest/src/main/org/jboss/test/jbossmx/implementation/server/support/ContextCL.java Index: ContextCL.java =================================================================== package org.jboss.test.jbossmx.implementation.server.support; import java.io.IOException; import java.rmi.MarshalledObject; import org.apache.log4j.Category; /** The ContextCL standard MBean interface * * @author [EMAIL PROTECTED] * @version $Revision: 1.1 $ */ public class ContextCL implements ContextCLMBean { private static Category log = Category.getInstance(ContextCL.class); private MarshalledObject data; public ContextCL() throws IOException { ClassLoader cl = Thread.currentThread().getContextClassLoader(); log.info("ctor ClassLoader: "+cl); TestData test = new TestData(); data = new MarshalledObject(test); } /** An operation that retrieves a TestData object from a MarshalledObject *created during the ContextCL MBean ctor */ public void useTestData() throws Exception { ClassLoader cl = Thread.currentThread().getContextClassLoader(); log.info("useTestData ClassLoader: "+cl); Object test = data.get(); TestData testData = (TestData) test; } } 1.1 jbosstest/src/main/org/jboss/test/jbossmx/implementation/server/support/ContextCLMBean.java Index: ContextCLMBean.java =================================================================== package org.jboss.test.jbossmx.implementation.server.support; /** The standard MBean interface for ContextCL * * @author [EMAIL PROTECTED] */ public interface ContextCLMBean { /** An operation that retrieves a TestData object from a MarshalledObject *created during the ContextCL MBean ctor */ public void useTestData() throws Exception; } 1.1 jbosstest/src/main/org/jboss/test/jbossmx/implementation/server/support/TestClassLoader.java Index: TestClassLoader.java =================================================================== package org.jboss.test.jbossmx.implementation.server.support; import java.net.URL; import java.net.URLClassLoader; /** An URLClassLoader MBean * * @author [EMAIL PROTECTED] * @version $Revision: 1.1 $ */ public class TestClassLoader extends URLClassLoader implements TestClassLoaderMBean { /** Creates a new instance of ServiceCreator */ public TestClassLoader(URL[] urls) { super(urls); } } 1.1 jbosstest/src/main/org/jboss/test/jbossmx/implementation/server/support/TestClassLoaderMBean.java Index: TestClassLoaderMBean.java =================================================================== package org.jboss.test.jbossmx.implementation.server.support; /** An empty interface to tag the TestClassLoader as an MBean * * @author [EMAIL PROTECTED] * @version $Revision: 1.1 $ */ public interface TestClassLoaderMBean { } 1.1 jbosstest/src/main/org/jboss/test/jbossmx/implementation/server/support/TestData.java Index: TestData.java =================================================================== package org.jboss.test.jbossmx.implementation.server.support; import java.io.Serializable; /** A trival Serializable data class used by the ContextCLMBean * * @author [EMAIL PROTECTED] */ public class TestData implements Serializable { /** Creates a new instance of TestData */ public TestData() { } }
_______________________________________________ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development