[jboss-cvs] JBossAS SVN: r99677 - in branches/vfs3-int: build and 108 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Jan 20 15:47:02 EST 2010
Author: johnbailey
Date: 2010-01-20 15:46:46 -0500 (Wed, 20 Jan 2010)
New Revision: 99677
Added:
branches/vfs3-int/ejb3/src/resources/META-INF/ejb3-as-deployers-jboss-beans.xml
branches/vfs3-int/resteasy-int/
branches/vfs3-int/resteasy-int/.classpath
branches/vfs3-int/resteasy-int/.project
branches/vfs3-int/resteasy-int/.settings/
branches/vfs3-int/resteasy-int/.settings/org.eclipse.jdt.core.prefs
branches/vfs3-int/resteasy-int/.settings/org.maven.ide.eclipse.prefs
branches/vfs3-int/resteasy-int/jar/
branches/vfs3-int/resteasy-int/jar/pom.xml
branches/vfs3-int/resteasy-int/jar/src/
branches/vfs3-int/resteasy-int/jar/src/main/
branches/vfs3-int/resteasy-int/jar/src/main/java/
branches/vfs3-int/resteasy-int/jar/src/main/java/org/
branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/
branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/
branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/
branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/
branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyIntegrationDeployer.java
branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyScannerDeployer.java
branches/vfs3-int/resteasy-int/jar/src/main/resources/
branches/vfs3-int/resteasy-int/pom.xml
branches/vfs3-int/resteasy-int/test/
branches/vfs3-int/resteasy-int/test/application-war/
branches/vfs3-int/resteasy-int/test/application-war/pom.xml
branches/vfs3-int/resteasy-int/test/application-war/src/
branches/vfs3-int/resteasy-int/test/application-war/src/main/
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/AppConfig.java
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/MyApplicationConfig.java
branches/vfs3-int/resteasy-int/test/application-war/src/main/resources/
branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/
branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/WEB-INF/
branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/WEB-INF/web.xml
branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/index.jsp
branches/vfs3-int/resteasy-int/test/application-war/src/test/
branches/vfs3-int/resteasy-int/test/application-war/src/test/java/
branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/
branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/
branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/
branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test/
branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test/jboss/
branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test/jboss/AppConfigTest.java
branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/
branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/jndi.properties
branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/log4j.xml
branches/vfs3-int/resteasy-int/test/pom.xml
branches/vfs3-int/resteasy-int/test/scanned-war/
branches/vfs3-int/resteasy-int/test/scanned-war/pom.xml
branches/vfs3-int/resteasy-int/test/scanned-war/scanned-test.iml
branches/vfs3-int/resteasy-int/test/scanned-war/src/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy/test/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy/test/MyResource.java
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/WEB-INF/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/WEB-INF/web.xml
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/index.jsp
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test/jboss/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test/jboss/ScanningTest.java
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/jndi.properties
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/log4j.xml
branches/vfs3-int/resteasy-int/zip/
branches/vfs3-int/resteasy-int/zip/assembly.xml
branches/vfs3-int/resteasy-int/zip/pom.xml
branches/vfs3-int/resteasy-int/zip/resteasy-jboss-beans.xml
branches/vfs3-int/server/src/main/java/org/jboss/kernel/
branches/vfs3-int/server/src/main/java/org/jboss/kernel/KernelInstaller.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManager.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManagerBean.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/Calculator.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/unit/
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/unit/EJB31NoInterfaceViewTestCase.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CalculatorInWEBINFClasses.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/Counter.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterBeanInWEBINFLibJar.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterDelegateBeanInWarEjbJarXml.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/unit/
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/unit/Ejb3WarDeploymentTestCase.java
branches/vfs3-int/testsuite/src/resources/deployers/seam/
branches/vfs3-int/testsuite/src/resources/deployers/seam/booking/
branches/vfs3-int/testsuite/src/resources/deployers/seam/booking/jboss-seam-booking-ds.xml
branches/vfs3-int/testsuite/src/resources/deployers/seam/booking/jboss-seam-booking.ear
branches/vfs3-int/testsuite/src/resources/deployers/seam/dvd/
branches/vfs3-int/testsuite/src/resources/deployers/seam/dvd/jboss-seam-dvd-ds.xml
branches/vfs3-int/testsuite/src/resources/deployers/seam/dvd/jboss-seam-dvd.ear
branches/vfs3-int/testsuite/src/resources/deployers/seam/jpa-example/
branches/vfs3-int/testsuite/src/resources/deployers/seam/jpa-example/jboss-seam-jpa.war
branches/vfs3-int/testsuite/src/resources/deployers/seam/numberguess/
branches/vfs3-int/testsuite/src/resources/deployers/seam/numberguess/jboss-seam-numberguess.ear
branches/vfs3-int/testsuite/src/resources/ejb3/war/
branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/
branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/ejb-jar.xml
branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/web.xml
Removed:
branches/vfs3-int/ejb3/src/resources/META-INF/ejb3-deployers-jboss-beans.xml
branches/vfs3-int/resteasy-int/.classpath
branches/vfs3-int/resteasy-int/.project
branches/vfs3-int/resteasy-int/.settings/
branches/vfs3-int/resteasy-int/.settings/org.eclipse.jdt.core.prefs
branches/vfs3-int/resteasy-int/.settings/org.maven.ide.eclipse.prefs
branches/vfs3-int/resteasy-int/jar/
branches/vfs3-int/resteasy-int/jar/pom.xml
branches/vfs3-int/resteasy-int/jar/src/
branches/vfs3-int/resteasy-int/jar/src/main/
branches/vfs3-int/resteasy-int/jar/src/main/java/
branches/vfs3-int/resteasy-int/jar/src/main/java/org/
branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/
branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/
branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/
branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/
branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyIntegrationDeployer.java
branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyScannerDeployer.java
branches/vfs3-int/resteasy-int/jar/src/main/resources/
branches/vfs3-int/resteasy-int/pom.xml
branches/vfs3-int/resteasy-int/test/
branches/vfs3-int/resteasy-int/test/application-war/
branches/vfs3-int/resteasy-int/test/application-war/pom.xml
branches/vfs3-int/resteasy-int/test/application-war/src/
branches/vfs3-int/resteasy-int/test/application-war/src/main/
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/AppConfig.java
branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/MyApplicationConfig.java
branches/vfs3-int/resteasy-int/test/application-war/src/main/resources/
branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/
branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/WEB-INF/
branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/WEB-INF/web.xml
branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/index.jsp
branches/vfs3-int/resteasy-int/test/application-war/src/test/
branches/vfs3-int/resteasy-int/test/application-war/src/test/java/
branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/
branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/
branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/
branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test/
branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test/jboss/
branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test/jboss/AppConfigTest.java
branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/
branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/jndi.properties
branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/log4j.xml
branches/vfs3-int/resteasy-int/test/pom.xml
branches/vfs3-int/resteasy-int/test/scanned-war/
branches/vfs3-int/resteasy-int/test/scanned-war/pom.xml
branches/vfs3-int/resteasy-int/test/scanned-war/scanned-test.iml
branches/vfs3-int/resteasy-int/test/scanned-war/src/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy/test/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy/test/MyResource.java
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/WEB-INF/
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/WEB-INF/web.xml
branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/index.jsp
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test/jboss/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test/jboss/ScanningTest.java
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/jndi.properties
branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/log4j.xml
branches/vfs3-int/resteasy-int/zip/
branches/vfs3-int/resteasy-int/zip/assembly.xml
branches/vfs3-int/resteasy-int/zip/pom.xml
branches/vfs3-int/resteasy-int/zip/resteasy-jboss-beans.xml
branches/vfs3-int/server/src/main/java/org/jboss/kernel/KernelInstaller.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/BarrierController.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/BarrierControllerMBean.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ConfigurationException.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/InterceptorServiceMBean.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/InterceptorServiceMBeanSupport.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/InvalidAttributeException.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ListenerServiceMBean.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ListenerServiceMBeanSupport.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/MissingAttributeException.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/NotificationFilterFactory.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/SecurityActions.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceBinding.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceConfigurator.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceContext.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceController.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceControllerMBean.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceCreator.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceDynamicMBeanSupport.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceFactory.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceInstance.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceMBean.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceMBeanState.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceMBeanSupport.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/LoaderRepositoryConfigHelper.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/SARArchiveFilter.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/SARDeployer.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceClassLoaderDeployer.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceDeployer.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceDeploymentDeployer.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceXSLDeployer.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/filterfactory/
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/metadata/
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ConfigureAction.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/CreateDestroyLifecycleAction.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/DescribeAction.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/InstallAction.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/InstantiateAction.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/LifecycleDependencyItem.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/LifecycleInfo.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/OnlyUnregisterAction.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceControllerContext.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceControllerContextAction.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceControllerContextActions.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceProxy.java
branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/StartStopLifecycleAction.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManager.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManagerBean.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/Calculator.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/unit/
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/unit/EJB31NoInterfaceViewTestCase.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CalculatorInWEBINFClasses.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/Counter.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterBeanInWEBINFLibJar.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterDelegateBeanInWarEjbJarXml.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/unit/
branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/unit/Ejb3WarDeploymentTestCase.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/compliance/timer/JBossTimerBasicTestCase.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/compliance/timer/JBossTimerPeriodTestCase.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/implementation/util/AgentIDTestCase.java
branches/vfs3-int/testsuite/src/resources/deployers/seam/booking/
branches/vfs3-int/testsuite/src/resources/deployers/seam/booking/jboss-seam-booking-ds.xml
branches/vfs3-int/testsuite/src/resources/deployers/seam/booking/jboss-seam-booking.ear
branches/vfs3-int/testsuite/src/resources/deployers/seam/dvd/
branches/vfs3-int/testsuite/src/resources/deployers/seam/dvd/jboss-seam-dvd-ds.xml
branches/vfs3-int/testsuite/src/resources/deployers/seam/dvd/jboss-seam-dvd.ear
branches/vfs3-int/testsuite/src/resources/deployers/seam/jpa-example/
branches/vfs3-int/testsuite/src/resources/deployers/seam/jpa-example/jboss-seam-jpa.war
branches/vfs3-int/testsuite/src/resources/deployers/seam/numberguess/
branches/vfs3-int/testsuite/src/resources/deployers/seam/numberguess/jboss-seam-numberguess.ear
branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/
branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/ejb-jar.xml
branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/web.xml
Modified:
branches/vfs3-int/build/build.xml
branches/vfs3-int/build/docs/readme.html
branches/vfs3-int/build/pom.xml
branches/vfs3-int/build/src/assembly/jboss-dist.xml
branches/vfs3-int/client/pom.xml
branches/vfs3-int/component-matrix/pom.xml
branches/vfs3-int/connector/src/resources/jca-sar/jca-jboss-beans.xml
branches/vfs3-int/ejb3/pom.xml
branches/vfs3-int/ejb3/src/main/java/org/jboss/ejb3/deployers/Ejb3DependenciesDeployer.java
branches/vfs3-int/jmx-remoting/src/main/java/javax/management/remote/rmi/RMIConnector.java
branches/vfs3-int/main/pom.xml
branches/vfs3-int/pom.xml
branches/vfs3-int/server/pom.xml
branches/vfs3-int/server/src/etc/conf/all/bootstrap/deployers.xml
branches/vfs3-int/server/src/etc/conf/all/bootstrap/jmx.xml
branches/vfs3-int/server/src/etc/conf/all/bootstrap/kernel.xml
branches/vfs3-int/server/src/etc/deploy/naming-jboss-beans.xml
branches/vfs3-int/server/src/etc/deploy/thread-pool-jboss-beans.xml
branches/vfs3-int/server/src/main/java/org/jboss/deployment/JBossEjbParsingDeployer.java
branches/vfs3-int/server/src/main/java/org/jboss/deployment/MappedReferenceMetaDataResolverDeployer.java
branches/vfs3-int/server/src/main/java/org/jboss/web/WebServer.java
branches/vfs3-int/system-jmx/pom.xml
branches/vfs3-int/system/pom.xml
branches/vfs3-int/testsuite/.classpath
branches/vfs3-int/testsuite/build.xml
branches/vfs3-int/testsuite/imports/config/tests-jts-propagation.xml
branches/vfs3-int/testsuite/imports/sections/ejb3.xml
branches/vfs3-int/testsuite/imports/sections/seam.xml
branches/vfs3-int/testsuite/imports/server-config.xml
branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/implementation/util/MBeanProxyTestCase.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/JTSContextPropagation01/TestContextPropagation.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/recovery/ASFailureMode.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/recovery/ASFailureType.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/recovery/ASTestResource.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/EJBUtils.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/ORBWrapper.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/ejb3/TxPropagationBean.java
branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/ejb3/TxPropagationRem.java
branches/vfs3-int/testsuite/src/resources/aop/mcdefaultannotation/META-INF/jboss-beans.xml
branches/vfs3-int/testsuite/src/resources/aop/mcjmx/META-INF/has-dependency-jboss-beans.xml
branches/vfs3-int/testsuite/src/resources/aop/mcjmx/META-INF/jboss-beans.xml
branches/vfs3-int/testsuite/src/resources/aop/scopeddependency/scoped/META-INF/jboss-beans.xml
branches/vfs3-int/testsuite/src/resources/cluster/ejb2/passexp/META-INF/partition-passexp-jboss-beans.xml
branches/vfs3-int/testsuite/src/resources/cluster/partition/partition-restart-jboss-beans.xml
branches/vfs3-int/testsuite/src/resources/jbossts/scripts/as-tests.xml
branches/vfs3-int/testsuite/src/resources/jbossts/scripts/imports/test-config.xml
branches/vfs3-int/testsuite/src/resources/naming/restart/naming-restart-jboss-beans.xml
branches/vfs3-int/tomcat/src/main/java/org/jboss/web/tomcat/service/deployers/TomcatDeployment.java
branches/vfs3-int/varia/src/resources/xnio/xnio-jboss-beans.xml
branches/vfs3-int/webservices/pom.xml
Log:
[JBAS-7342] - Merging changes from trunk -r 99317:99666
Modified: branches/vfs3-int/build/build.xml
===================================================================
--- branches/vfs3-int/build/build.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/build/build.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -86,7 +86,7 @@
<property name="dist.module.name" value="jboss"/>
<property name="dist.module.Name" value="JBoss Build"/>
<property name="dist.module.version" value="${pom.project.version}"/>
- <property name="dist.module.output" value="${basedir}/output"/>
+ <property name="dist.module.output" value="${basedir}/target"/>
<!-- Install/Release structure -->
<property name="install.id" value="${dist.module.name}-${dist.module.version}"/>
@@ -432,6 +432,7 @@
<include name="jboss-javaee.jar"/>
<include name="jboss-integration.jar"/>
<include name="jboss-j2se.jar"/>
+ <include name="jboss-jmx-annotations.jar"/>
<include name="jboss-jmx.jar"/>
<include name="jboss-remoting.jar"/>
<include name="jboss-security-spi.jar"/>
@@ -727,6 +728,11 @@
<fileset dir="${ejb3.module.output}">
<include name="ejb3.deployer/**"/>
</fileset>
+ <fileset dir="${ejb3.module.output}">
+ <include name="ejb3-deployers-jboss-beans.xml"/>
+ <include name="ejb3-nointerface-jboss-beans.xml"/>
+ <include name="ejb3-metadata-deployers-jboss-beans.xml"/>
+ </fileset>
</copy>
</target>
@@ -1806,8 +1812,7 @@
<target name="install-jbossws-to-endorsed">
<!-- Endorse JBossWS jars on JDK1.6 and above -->
<copy todir="${install.lib}/endorsed" flatten="true" overwrite="true">
- <fileset refid="org.jboss.ws.native:jbossws-native-jaxws:jar"/>
- <fileset refid="org.jboss.ws.native:jbossws-native-saaj:jar"/>
+ <fileset refid="org.jboss.ws.native:jbossws-native-factories:jar"/>
<mapper refid="remove-versions" />
</copy>
</target>
@@ -1943,10 +1948,9 @@
<fileset refid="org.jboss.xnio:xnio-api:jar"/>
<fileset refid="javax.xml.ws:jaxws-api:jar"/>
<fileset refid="javax.jws:jsr181-api:jar"/>
- <fileset refid="org.jboss.ws.native:jbossws-native-jaxrpc:jar"/>
- <fileset refid="org.jboss.ws.native:jbossws-native-jaxws:jar"/>
- <fileset refid="org.jboss.ws.native:jbossws-native-jaxws-ext:jar"/>
- <fileset refid="org.jboss.ws.native:jbossws-native-saaj:jar"/>
+ <fileset refid="javax.xml:jaxrpc-api:jar"/>
+ <fileset refid="javax.xml.soap:saaj-api:jar"/>
+ <fileset refid="org.jboss.ws.native:jbossws-native-factories:jar"/>
<fileset refid="org.jboss.ws:jbossws-common:jar"/>
<fileset refid="org.jboss.ws:jbossws-framework:jar"/>
<fileset refid="org.jboss.ws:jbossws-spi:jar"/>
@@ -1996,13 +2000,16 @@
<fileset refid="org.jboss.ejb3:jboss-ejb3-interceptors:jar"/>
<fileset refid="org.jboss.ejb3:jboss-ejb3-jpa-int:jar"/>
<fileset refid="org.jboss.ejb3:jboss-ejb3-metadata:jar"/>
+ <fileset refid="org.jboss.ejb3:jboss-ejb3-metadata-deployers:jar"/>
<fileset refid="org.jboss.ejb3:jboss-ejb3-mc-int:jar"/>
+ <fileset refid="org.jboss.ejb3:jboss-ejb3-nointerface:jar"/>
<fileset refid="org.jboss.ejb3:jboss-ejb3-proxy-impl:jar"/>
<fileset refid="org.jboss.ejb3:jboss-ejb3-proxy-spi:jar"/>
<fileset refid="org.jboss.ejb3:jboss-ejb3-proxy-clustered:jar"/>
<fileset refid="org.jboss.ejb3:jboss-ejb3-security:jar"/>
<fileset refid="org.jboss.ejb3:jboss-ejb3-timerservice-spi:jar"/>
<fileset refid="org.jboss.ejb3:jboss-ejb3-transactions:jar"/>
+ <fileset refid="org.jboss.ejb3:jboss-ejb3_1:jar"/>
<fileset refid="org.jboss.reloaded:jboss-reloaded-naming:jar"/>
<fileset refid="org.jboss.reloaded:jboss-reloaded-naming-deployers:jar"/>
<fileset refid="org.hibernate:hibernate-core:jar"/>
@@ -2081,7 +2088,9 @@
<fileset refid="oswego-concurrent:concurrent:jar"/>
<fileset refid="dom4j:dom4j:jar"/>
<fileset refid="org.jboss.mx:jboss-j2se:jar"/>
+ <fileset refid="org.jboss.mx:jboss-jmx-annotations:jar"/>
<fileset refid="org.jboss.mx:jboss-mbeans:jar"/>
+ <fileset refid="org.jboss.mx:jboss-mbeanserver:jar"/>
<fileset refid="org.jboss.mx:jboss-jmx:jar"/>
<fileset refid="org.jboss.cl:jboss-classloader:jar"/>
<fileset refid="org.jboss.cl:jboss-classloading:jar"/>
@@ -2091,6 +2100,7 @@
<fileset refid="org.jboss.deployers:jboss-deployers-core:jar"/>
<fileset refid="org.jboss.deployers:jboss-deployers-core-spi:jar"/>
<fileset refid="org.jboss.deployers:jboss-deployers-impl:jar"/>
+ <fileset refid="org.jboss.deployers:jboss-deployers-jmx:jar"/>
<fileset refid="org.jboss.deployers:jboss-deployers-spi:jar"/>
<fileset refid="org.jboss.deployers:jboss-deployers-structure-spi:jar"/>
<fileset refid="org.jboss.deployers:jboss-deployers-vfs:jar"/>
@@ -2099,6 +2109,7 @@
<fileset refid="org.jboss.kernel:jboss-aop-mc-int:jar"/>
<fileset refid="org.jboss.kernel:jboss-dependency:jar"/>
<fileset refid="org.jboss.kernel:jboss-kernel:jar"/>
+ <fileset refid="org.jboss.kernel:jboss-jmx-mc-int:jar"/>
<fileset refid="javax.inject:javax.inject:jar"/>
<fileset refid="org.jboss:jboss-vfs:jar"/>
<fileset refid="org.osgi:osgi_R4_core:jar"/>
@@ -2145,6 +2156,7 @@
<fileset refid="org.jboss.naming:jnp-client:jar"/>
<fileset refid="org.jboss.security:jbosssx-client:jar"/>
<fileset refid="org.jboss.mx:jboss-j2se:jar"/>
+ <fileset refid="org.jboss.mx:jboss-jmx-annotations:jar"/>
<fileset refid="org.jboss.mx:jboss-jmx:jar"/>
<fileset refid="org.jboss.metadata:jboss-metadata-common:jar"/>
<fileset refid="org.jboss.metadata:jboss-metadata-client:jar"/>
@@ -2164,10 +2176,9 @@
<fileset refid="javax.jws:jsr181-api:jar"/>
<fileset refid="org.jboss.ws.native:jbossws-native-client:jar"/>
<fileset refid="org.jboss.ws.native:jbossws-native-core:jar"/>
- <fileset refid="org.jboss.ws.native:jbossws-native-jaxrpc:jar"/>
- <fileset refid="org.jboss.ws.native:jbossws-native-jaxws-ext:jar"/>
- <fileset refid="org.jboss.ws.native:jbossws-native-jaxws:jar"/>
- <fileset refid="org.jboss.ws.native:jbossws-native-saaj:jar"/>
+ <fileset refid="org.jboss.ws.native:jbossws-native-factories:jar"/>
+ <fileset refid="javax.xml:jaxrpc-api:jar"/>
+ <fileset refid="javax.xml.soap:saaj-api:jar"/>
<fileset refid="org.jboss.ws:jbossws-common:jar"/>
<fileset refid="org.jboss.ws:jbossws-framework:jar"/>
<fileset refid="org.jboss.ws:jbossws-spi:jar"/>
Modified: branches/vfs3-int/build/docs/readme.html
===================================================================
--- branches/vfs3-int/build/docs/readme.html 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/build/docs/readme.html 2010-01-20 20:46:46 UTC (rev 99677)
@@ -112,10 +112,10 @@
<h2><a name="Compatibility">Compatibility Issues</a></h2>JBossAS 5.0.0.CR2 can be compiled with both Java5 & Java6. The Java5 compiled
binary is our primary/recommended binary distribution. It has undergone rigorous
testing and can run under both a Java 5 and a Java 6 runtime. When running under
-Java 6 you need to manually copy the following libraries from the
+Java 6 you need to manually copy the following library from the
JBOSS_HOME/client directory to the JBOSS_HOME/lib/endorsed directory, so that
-the JAX-WS 2.0 apis supported by JBossWS are used:
-<ul><li>jbossws-native-saaj.jar</li><li>jbossws-native-jaxrpc.jar</li><li>jbossws-native-jaxws.jar</li><li>jbossws-native-jaxws-ext.jar</li></ul>The
+the JAX-WS 2.2 apis supported by JBossWS are used:
+<ul><li>jbossws-native-factories.jar</li></ul>The
other option is to download the jdk6 distribution
(jboss-5.0.0.CR2-jdk6.zip) in which case no configuration changes are
required. If you still have problems using JBoss with a Sun Java 6
Modified: branches/vfs3-int/build/pom.xml
===================================================================
--- branches/vfs3-int/build/pom.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/build/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -529,6 +529,11 @@
<optional>true</optional>
</dependency>
<dependency>
+ <groupId>org.jboss.mx</groupId>
+ <artifactId>jboss-mbeanserver</artifactId>
+ <optional>true</optional>
+ </dependency>
+ <dependency>
<groupId>org.jboss.netty</groupId>
<artifactId>netty</artifactId>
<optional>true</optional>
@@ -537,6 +542,12 @@
<groupId>org.jboss.seam.integration</groupId>
<artifactId>jboss-seam-int-jbossas</artifactId>
<optional>true</optional>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-dependency</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.jboss.security</groupId>
@@ -602,30 +613,25 @@
</dependency>
<dependency>
<groupId>org.jboss.ws.native</groupId>
- <artifactId>jbossws-native-jaxrpc</artifactId>
+ <artifactId>jbossws-native-factories</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.jboss.ws.native</groupId>
- <artifactId>jbossws-native-jaxws</artifactId>
+ <artifactId>jbossws-native-resources</artifactId>
<optional>true</optional>
</dependency>
<dependency>
- <groupId>org.jboss.ws.native</groupId>
- <artifactId>jbossws-native-jaxws-ext</artifactId>
+ <groupId>javax.xml</groupId>
+ <artifactId>jaxrpc-api</artifactId>
<optional>true</optional>
</dependency>
<dependency>
- <groupId>org.jboss.ws.native</groupId>
- <artifactId>jbossws-native-resources</artifactId>
+ <groupId>javax.xml.soap</groupId>
+ <artifactId>saaj-api</artifactId>
<optional>true</optional>
</dependency>
<dependency>
- <groupId>org.jboss.ws.native</groupId>
- <artifactId>jbossws-native-saaj</artifactId>
- <optional>true</optional>
- </dependency>
- <dependency>
<groupId>org.jboss.xnio</groupId>
<artifactId>xnio-api</artifactId>
<optional>true</optional>
@@ -705,14 +711,14 @@
<artifactId>xercesImpl</artifactId>
<optional>true</optional>
</dependency>
- <dependency>
- <groupId>org.jboss.classpool</groupId>
- <artifactId>jboss-classpool</artifactId>
- </dependency>
- <dependency>
- <groupId>org.jboss.classpool</groupId>
- <artifactId>jboss-classpool-jbosscl</artifactId>
- </dependency>
+ <dependency>
+ <groupId>org.jboss.classpool</groupId>
+ <artifactId>jboss-classpool</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.classpool</groupId>
+ <artifactId>jboss-classpool-jbosscl</artifactId>
+ </dependency>
<!-- End dist dependencies -->
</dependencies>
@@ -739,8 +745,8 @@
<goal>download-licenses</goal>
</goals>
<configuration>
- <outputDirectory>output/jboss-${project.version}/docs/licenses</outputDirectory>
- <licenseSummaryFile>output/jboss-${project.version}/docs/licenses/licenses.xml</licenseSummaryFile>
+ <outputDirectory>${project.build.directory}/jboss-${project.version}/docs/licenses</outputDirectory>
+ <licenseSummaryFile>${project.build.directory}/jboss-${project.version}/docs/licenses/licenses.xml</licenseSummaryFile>
</configuration>
</execution>
</executions>
@@ -764,20 +770,6 @@
</tasks>
</configuration>
</execution>
- <execution>
- <id>clean</id>
- <goals>
- <goal>run</goal>
- </goals>
- <phase>clean</phase>
- <configuration>
- <tasks>
- <ant antfile="build.xml">
- <target name="clean-dist"/>
- </ant>
- </tasks>
- </configuration>
- </execution>
</executions>
</plugin>
</plugins>
Modified: branches/vfs3-int/build/src/assembly/jboss-dist.xml
===================================================================
--- branches/vfs3-int/build/src/assembly/jboss-dist.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/build/src/assembly/jboss-dist.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -17,7 +17,7 @@
</excludes>
</fileSet>
<fileSet>
- <directory>output/jboss-${project.version}</directory>
+ <directory>${project.build.directory}/jboss-${project.version}</directory>
<outputDirectory>/jboss-${project.version}</outputDirectory>
<includes>
<include>bin/*</include>
Modified: branches/vfs3-int/client/pom.xml
===================================================================
--- branches/vfs3-int/client/pom.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/client/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -51,6 +51,12 @@
</dependency>
<dependency>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-profileservice</artifactId>
+ <classifier>client</classifier>
+ </dependency>
+
+ <dependency>
<groupId>org.jboss</groupId>
<artifactId>jboss-common-core</artifactId>
</dependency>
Modified: branches/vfs3-int/component-matrix/pom.xml
===================================================================
--- branches/vfs3-int/component-matrix/pom.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/component-matrix/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -37,14 +37,18 @@
<version.javassist>3.11.0.GA</version.javassist>
<version.javax.faces>2.0.2-FCS</version.javax.faces>
<version.javax.validation>1.0.0.GA</version.javax.validation>
+ <version.jboss.jbossts>4.9.0.GA</version.jboss.jbossts>
<version.jboss.jaxr>2.0.1</version.jboss.jaxr>
- <version.jboss.jbossts>4.9.0.GA</version.jboss.jbossts>
- <version.jaxws.api>2.1</version.jaxws.api>
+ <version.sun-jaxws>2.1.7</version.sun-jaxws>
+ <version.sun.jaxb>2.2</version.sun.jaxb>
+ <version.jaxws.api>2.2</version.jaxws.api>
+ <version.jaxrpc.api>1.1</version.jaxrpc.api>
+ <version.saaj.api>1.3</version.saaj.api>
<version.jsr181.api>1.0-MR1</version.jsr181.api>
- <version.jboss.jbossws-common>1.2.2.GA</version.jboss.jbossws-common>
- <version.jboss.jbossws-framework>3.2.2.GA</version.jboss.jbossws-framework>
- <version.jboss.jbossws-spi>1.2.2.GA</version.jboss.jbossws-spi>
- <version.jboss.jbossws>3.2.2.GA</version.jboss.jbossws>
+ <version.jboss.jbossws-spi>1.3.0.Beta1</version.jboss.jbossws-spi>
+ <version.jboss.jbossws-common>1.3.0.Beta1</version.jboss.jbossws-common>
+ <version.jboss.jbossws-framework>3.3.0.Beta1</version.jboss.jbossws-framework>
+ <version.jboss.jbossws>3.3.0.Beta1</version.jboss.jbossws>
<version.commons.beanutils>1.8.0</version.commons.beanutils>
<version.fastinfoset>1.2.2</version.fastinfoset>
<version.jboss.jms-integration-tests>1.0.1.GA</version.jboss.jms-integration-tests>
@@ -52,13 +56,13 @@
<version.jboss.web>3.0.0-beta-1</version.jboss.web>
<version.jgroups>2.6.13.GA</version.jgroups>
<version.junit>3.8.2</version.junit>
- <version.org.hibernate.annotations>3.5.0-Beta-2</version.org.hibernate.annotations>
+ <version.org.hibernate.annotations>3.5.0-Beta-3</version.org.hibernate.annotations>
<version.org.hibernate.commons.annotations>3.2.0.Beta1</version.org.hibernate.commons.annotations>
<version.org.hibernate.java-persistence>2.0-cr-1</version.org.hibernate.java-persistence>
- <version.org.hibernate.jbosscache>3.5.0-Beta-2</version.org.hibernate.jbosscache>
- <version.org.hibernate.entity.manager>3.5.0-Beta-2</version.org.hibernate.entity.manager>
+ <version.org.hibernate.jbosscache>3.5.0-Beta-3</version.org.hibernate.jbosscache>
+ <version.org.hibernate.entity.manager>3.5.0-Beta-3</version.org.hibernate.entity.manager>
<version.org.hibernate.validator>4.0.2.GA</version.org.hibernate.validator>
- <version.org.hibernate>3.5.0-Beta-2</version.org.hibernate>
+ <version.org.hibernate>3.5.0-Beta-3</version.org.hibernate>
<version.org.jboss.aop>2.1.0-SNAPSHOT</version.org.jboss.aop>
<version.org.jboss.aspects.currentinvocation>1.0.1</version.org.jboss.aspects.currentinvocation>
<version.org.jboss.aspects.remoting>1.0.1.GA</version.org.jboss.aspects.remoting>
@@ -84,8 +88,8 @@
<version.org.jboss.common.core>2.2.17.GA</version.org.jboss.common.core>
<version.org.jboss.deployers>2.2.0-SNAPSHOT</version.org.jboss.deployers>
<version.org.jboss.ejb.api>1.0-alpha-1</version.org.jboss.ejb.api>
- <version.org.jboss.ejb3.common.client>1.0.2-SNAPSHOT</version.org.jboss.ejb3.common.client>
- <version.org.jboss.ejb3.core.client>1.1.23-SNAPSHOT</version.org.jboss.ejb3.core.client>
+ <version.org.jboss.ejb3.common.client>1.0.1</version.org.jboss.ejb3.common.client>
+ <version.org.jboss.ejb3.core.client>1.2.1-SNAPSHOT</version.org.jboss.ejb3.core.client>
<version.org.jboss.ejb3.endpoint.deployer>0.1.4</version.org.jboss.ejb3.endpoint.deployer>
<version.org.jboss.ejb3.jpa.int>2.0.0-alpha-1</version.org.jboss.ejb3.jpa.int>
<version.org.jboss.ejb3.mc.int>1.0.2</version.org.jboss.ejb3.mc.int>
@@ -94,28 +98,28 @@
<version.org.jboss.ejb3.proxy.spi.client>1.0.0</version.org.jboss.ejb3.proxy.spi.client>
<version.org.jboss.ejb3.proxy.clustered.client>1.0.2</version.org.jboss.ejb3.proxy.clustered.client>
<version.org.jboss.ejb3.security.client>1.0.0</version.org.jboss.ejb3.security.client>
- <version.org.jboss.ejb3>1.0.1-SNAPSHOT</version.org.jboss.ejb3>
- <version.org.jboss.integration>6.0.0-SNAPSHOT</version.org.jboss.integration>
+ <version.org.jboss.ejb3>1.0.1</version.org.jboss.ejb3>
+ <version.org.jboss.integration>6.0.0-SNAPSHOT</version.org.jboss.integration>
<version.org.jboss.jbossxb>2.0.2.Beta3</version.org.jboss.jbossxb>
<version.org.jboss.jpa.deployers>1.0.2-SNAPSHOT</version.org.jboss.jpa.deployers>
<version.org.jboss.jpa.impl>2.0.0</version.org.jboss.jpa.impl>
<version.org.jboss.jpa.spi>1.0.0</version.org.jboss.jpa.spi>
- <version.org.jboss.kernel>2.2.0.Alpha1</version.org.jboss.kernel>
+ <version.org.jboss.kernel>2.2.0.Alpha2</version.org.jboss.kernel>
<version.org.jboss.logging>2.2.0.CR1</version.org.jboss.logging>
<version.org.jboss.logmanager>1.1.1.GA</version.org.jboss.logmanager>
<version.org.jboss.logging-service-metadata>1.0.0.CR5</version.org.jboss.logging-service-metadata>
<version.org.jboss.man>2.1.1.SP1</version.org.jboss.man>
- <version.org.jboss.mcann>1.0.0.Alpha1</version.org.jboss.mcann>
+ <version.org.jboss.mcann>1.0.0-SNAPSHOT</version.org.jboss.mcann>
<version.org.jboss.mc-int>2.2.0.Alpha2</version.org.jboss.mc-int>
- <version.org.jboss.mdr>2.0.2.GA</version.org.jboss.mdr>
+ <version.org.jboss.mdr>2.2.0-SNAPSHOT</version.org.jboss.mdr>
<version.org.jboss.metadata.common>2.0.0-SNAPSHOT</version.org.jboss.metadata.common>
- <version.org.jboss.metadata.client>2.0.0-SNAPSHOT</version.org.jboss.metadata.client>
- <version.org.jboss.metadata.ear>2.0.0-SNAPSHOT</version.org.jboss.metadata.ear>
- <version.org.jboss.metadata.ejb>2.0.0-SNAPSHOT</version.org.jboss.metadata.ejb>
- <version.org.jboss.metadata.rar>2.0.0-SNAPSHOT</version.org.jboss.metadata.rar>
- <version.org.jboss.metadata.war>2.0.0-SNAPSHOT</version.org.jboss.metadata.war>
+ <version.org.jboss.metadata.client>2.0.0.Alpha</version.org.jboss.metadata.client>
+ <version.org.jboss.metadata.ear>2.0.0.Alpha</version.org.jboss.metadata.ear>
+ <version.org.jboss.metadata.ejb>2.0.0-alpha-5</version.org.jboss.metadata.ejb>
+ <version.org.jboss.metadata.rar>2.0.0.Alpha</version.org.jboss.metadata.rar>
+ <version.org.jboss.metadata.war>2.0.0.Alpha13</version.org.jboss.metadata.war>
<version.org.jboss.mod_cluster>1.1.0.Beta1</version.org.jboss.mod_cluster>
- <version.org.jboss.mx>6.0.0.Beta1</version.org.jboss.mx>
+ <version.org.jboss.mx>6.0.0.Beta5</version.org.jboss.mx>
<version.org.jboss.naming>5.0.4.GA</version.org.jboss.naming>
<version.org.jboss.reflect>2.2.0.Alpha2</version.org.jboss.reflect>
<version.org.jboss.reloaded.naming>0.1.0-alpha-2</version.org.jboss.reloaded.naming>
@@ -124,7 +128,7 @@
<version.org.jboss.security>2.1.0.20091223</version.org.jboss.security>
<version.org.jboss.service.binding>1.0.0.GA</version.org.jboss.service.binding>
<version.org.jboss.stdio>1.0.0.CR1</version.org.jboss.stdio>
- <version.org.jboss.threads>1.0.0.GA</version.org.jboss.threads>
+ <version.org.jboss.threads>2.0.0.CR1</version.org.jboss.threads>
<version.org.jboss.vfs>3.0.0.CR1-SNAPSHOT</version.org.jboss.vfs>
<version.org.jboss.security.negotiation>2.0.3.SP1</version.org.jboss.security.negotiation>
<version.org.jboss.slf4j>1.0.2.GA</version.org.jboss.slf4j>
@@ -138,9 +142,7 @@
<version.staxex>2.1.1</version.staxex>
<version.streambuffer>0.9</version.streambuffer>
<version.suffix.org.jboss.javaee>.GA</version.suffix.org.jboss.javaee>
- <version.sun-jaxws>2.1.7</version.sun-jaxws>
- <version.sun.jaxb>2.1.9</version.sun.jaxb>
- <version.weld.integration>5.2.0.Beta5</version.weld.integration>
+ <version.weld.integration>6.0.0-SNAPSHOT</version.weld.integration>
<version.xdoclet>1.2.3</version.xdoclet>
<version.weld.api>1.0</version.weld.api>
<version.spring.integration>1.0.0.CR2</version.spring.integration>
@@ -162,6 +164,12 @@
<groupId>org.jboss.seam.integration</groupId>
<artifactId>jboss-seam-int-microcontainer</artifactId>
<version>${version.seam.integration}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-dependency</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -566,6 +574,10 @@
<groupId>org.jboss.aop</groupId>
<artifactId>jboss-aop</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
</exclusions>
</dependency>
@@ -603,6 +615,12 @@
<groupId>org.jboss.logging</groupId>
<artifactId>logging-service-metadata</artifactId>
<version>${version.org.jboss.logging-service-metadata}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -680,6 +698,10 @@
<groupId>jboss</groupId>
<artifactId>jboss-test</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-dependency</artifactId>
+ </exclusion>
</exclusions>
</dependency>
@@ -693,6 +715,16 @@
<groupId>org.jboss.aop</groupId>
<artifactId>jboss-aop-deployers</artifactId>
<version>${version.org.jboss.aop}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-aop-mc-int</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -796,6 +828,14 @@
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-dependency</artifactId>
+ </exclusion>
</exclusions>
</dependency>
@@ -807,9 +847,21 @@
<dependency>
<groupId>org.jboss.mx</groupId>
+ <artifactId>jboss-jmx-annotations</artifactId>
+ <version>${version.org.jboss.mx}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.mx</groupId>
<artifactId>jboss-mbeans</artifactId>
<version>${version.org.jboss.mx}</version>
</dependency>
+
+ <dependency>
+ <groupId>org.jboss.mx</groupId>
+ <artifactId>jboss-mbeanserver</artifactId>
+ <version>${version.org.jboss.mx}</version>
+ </dependency>
<dependency>
<groupId>org.jboss.mx</groupId>
@@ -875,6 +927,12 @@
<dependency>
<groupId>org.jboss.ws.native</groupId>
+ <artifactId>jbossws-native-factories</artifactId>
+ <version>${version.jboss.jbossws}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.ws.native</groupId>
<artifactId>jbossws-native-client</artifactId>
<version>${version.jboss.jbossws}</version>
</dependency>
@@ -915,37 +973,31 @@
</dependency>
<dependency>
- <groupId>org.jboss.ws.native</groupId>
- <artifactId>jbossws-native-jaxrpc</artifactId>
- <version>${version.jboss.jbossws}</version>
+ <groupId>javax.xml</groupId>
+ <artifactId>jaxrpc-api</artifactId>
+ <version>${version.jaxrpc.api}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>javax.xml.soap</groupId>
+ <artifactId>saaj-api</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
-
+
<dependency>
- <groupId>org.jboss.ws.native</groupId>
- <artifactId>jbossws-native-jaxws</artifactId>
- <version>${version.jboss.jbossws}</version>
+ <groupId>javax.xml.soap</groupId>
+ <artifactId>saaj-api</artifactId>
+ <version>${version.saaj.api}</version>
<exclusions>
<exclusion>
- <groupId>javax.xml.bind</groupId>
- <artifactId>jaxb-api</artifactId>
+ <groupId>javax.activation</groupId>
+ <artifactId>activation</artifactId>
</exclusion>
</exclusions>
</dependency>
-
+
<dependency>
<groupId>org.jboss.ws.native</groupId>
- <artifactId>jbossws-native-jaxws-ext</artifactId>
- <version>${version.jboss.jbossws}</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.ws.native</groupId>
- <artifactId>jbossws-native-saaj</artifactId>
- <version>${version.jboss.jbossws}</version>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.ws.native</groupId>
<artifactId>jbossws-native-resources</artifactId>
<version>${version.jboss.jbossws}</version>
</dependency>
@@ -960,6 +1012,12 @@
<groupId>org.jboss.ws</groupId>
<artifactId>jbossws-framework</artifactId>
<version>${version.jboss.jbossws-framework}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -1336,7 +1394,7 @@
<artifactId>jboss-deployment-spi</artifactId>
<version>${version.org.jboss.integration}</version>
</dependency>
-
+
<!-- Combined integration jar. Maybe this can be removed when we just use the
- individual compoennts -->
<dependency>
@@ -1398,6 +1456,12 @@
<groupId>org.jboss.reloaded</groupId>
<artifactId>jboss-reloaded-naming-deployers</artifactId>
<version>${version.org.jboss.reloaded.naming.deployers}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -1409,7 +1473,7 @@
<dependency>
<groupId>org.jboss.test</groupId>
<artifactId>jboss-test</artifactId>
- <version>1.1.4.GA</version>
+ <version>1.1.5.GA</version>
<exclusions>
<exclusion>
<groupId>apache-log4j</groupId>
@@ -1421,7 +1485,7 @@
<dependency>
<groupId>org.jboss.jbossas</groupId>
<artifactId>jboss-server-manager</artifactId>
- <version>1.0.2.GA</version>
+ <version>1.0.3.GA</version>
<exclusions>
<exclusion>
<groupId>org.jboss.jbossas</groupId>
@@ -1586,6 +1650,12 @@
<groupId>org.jboss.cl</groupId>
<artifactId>jboss-classloading</artifactId>
<version>${version.org.jboss.cl}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-dependency</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -1759,11 +1829,17 @@
<artifactId>jboss-deployers-vfs-spi</artifactId>
<version>${version.org.jboss.deployers}</version>
</dependency>
+
+ <dependency>
+ <groupId>org.jboss.deployers</groupId>
+ <artifactId>jboss-deployers-jmx</artifactId>
+ <version>${version.org.jboss.deployers}</version>
+ </dependency>
<dependency>
- <groupId>org.jboss.javaee</groupId>
- <artifactId>jboss-ejb-api_3.1</artifactId>
- <version>${version.org.jboss.ejb.api}</version>
+ <groupId>org.jboss.javaee</groupId>
+ <artifactId>jboss-ejb-api_3.1</artifactId>
+ <version>${version.org.jboss.ejb.api}</version>
</dependency>
<dependency>
@@ -1771,13 +1847,30 @@
<artifactId>jboss-ejb3-common</artifactId>
<version>${version.org.jboss.ejb3.common.client}</version>
<classifier>client</classifier>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
+
+ <dependency>
+ <groupId>org.jboss.ejb3</groupId>
+ <artifactId>jboss-ejb3-common</artifactId>
+ <version>${version.org.jboss.ejb3.common.client}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
<dependency>
<groupId>org.jboss.ejb3</groupId>
<artifactId>jboss-ejb3_1</artifactId>
<version>${version.org.jboss.ejb3}</version>
- <type>pom</type>
<exclusions>
<exclusion>
<groupId>org.hibernate</groupId>
@@ -1815,6 +1908,18 @@
<groupId>org.jboss.javaee</groupId>
<artifactId>jboss-servlet-api</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-aop-mc-int</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-dependency</artifactId>
+ </exclusion>
</exclusions>
</dependency>
@@ -1856,6 +1961,14 @@
<groupId>org.jboss.javaee</groupId>
<artifactId>jboss-servlet-api</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-aop-mc-int</artifactId>
+ </exclusion>
</exclusions>
</dependency>
@@ -1869,6 +1982,10 @@
<groupId>org.jboss.ejb3</groupId>
<artifactId>jboss-ejb3-core</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
</exclusions>
</dependency>
@@ -1876,6 +1993,12 @@
<groupId>org.jboss.ejb3</groupId>
<artifactId>jboss-ejb3-jpa-int</artifactId>
<version>${version.org.jboss.ejb3.jpa.int}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -1894,6 +2017,10 @@
<groupId>org.jboss.ejb3</groupId>
<artifactId>jboss-ejb3-core</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-jmx-mc-int</artifactId>
+ </exclusion>
</exclusions>
</dependency>
@@ -1909,6 +2036,10 @@
<groupId>org.jboss.ejb3</groupId>
<artifactId>jboss-ejb3-interceptors</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-aop-mc-int</artifactId>
+ </exclusion>
</exclusions>
</dependency>
@@ -1976,6 +2107,12 @@
<groupId>org.jboss.bootstrap</groupId>
<artifactId>jboss-bootstrap-api-mc</artifactId>
<version>${version.org.jboss.bootstrap.api.mc}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -1994,6 +2131,12 @@
<groupId>org.jboss.bootstrap</groupId>
<artifactId>jboss-bootstrap-impl-mc</artifactId>
<version>${version.org.jboss.bootstrap.impl.mc}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -2012,6 +2155,12 @@
<groupId>org.jboss.bootstrap</groupId>
<artifactId>jboss-bootstrap-spi-mc</artifactId>
<version>${version.org.jboss.bootstrap.spi.mc}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -2096,6 +2245,12 @@
<groupId>org.jboss.jpa</groupId>
<artifactId>jboss-jpa-deployers</artifactId>
<version>${version.org.jboss.jpa.deployers}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-aop-mc-int</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -2108,6 +2263,12 @@
<groupId>org.jboss.jpa</groupId>
<artifactId>jboss-jpa-spi</artifactId>
<version>${version.org.jboss.jpa.spi}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-aop-mc-int</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -2124,6 +2285,12 @@
<dependency>
<groupId>org.jboss.kernel</groupId>
+ <artifactId>jboss-jmx-mc-int</artifactId>
+ <version>${version.org.jboss.kernel}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.kernel</groupId>
<artifactId>jboss-aop-mc-int</artifactId>
<version>${version.org.jboss.kernel}</version>
<exclusions>
@@ -2151,9 +2318,19 @@
</dependency>
<dependency>
- <groupId>org.jboss.mcann</groupId>
- <artifactId>mcann-core</artifactId>
- <version>${version.org.jboss.mcann}</version>
+ <groupId>org.jboss.mcann</groupId>
+ <artifactId>mcann-core</artifactId>
+ <version>${version.org.jboss.mcann}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-dependency</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -2228,6 +2405,12 @@
<groupId>org.jboss.integration</groupId>
<artifactId>jboss-profileservice-spi</artifactId>
<version>${version.org.jboss.integration}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-dependency</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -2264,6 +2447,16 @@
<groupId>org.jboss.threads</groupId>
<artifactId>jboss-threads-metadata</artifactId>
<version>${version.org.jboss.threads}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-aop-mc-int</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -2282,6 +2475,12 @@
<groupId>org.jboss.xnio</groupId>
<artifactId>xnio-metadata</artifactId>
<version>${version.org.jboss.xnio.metadata}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
@@ -2610,9 +2809,16 @@
<exclude>sun-jaxws:jaxws-rt</exclude>
<exclude>sun-jaxb:jaxb-xjc</exclude>
<exclude>sun-jaxws:streambuffer</exclude>
- <!-- JBAS-7531 org.jboss.ejb3:jboss-ejb3-as-int is retired.
- Use org.jboss.ejb3:jboss-ejb3_1 instead -->
- <exclude>org.jboss.ejb3:jboss-ejb3-as-int</exclude>
+ <!-- JBAS-7531 org.jboss.ejb3:jboss-ejb3-as-int is retired.
+ Use org.jboss.ejb3:jboss-ejb3_1 instead -->
+ <exclude>org.jboss.ejb3:jboss-ejb3-as-int</exclude>
+ <exclude>org.jboss.microcontainer:jboss-aop-mc-int</exclude>
+ <exclude>org.jboss.microcontainer:jboss-dependency</exclude>
+ <exclude>org.jboss.microcontainer:jboss-guice-int</exclude>
+ <exclude>org.jboss.microcontainer:jboss-jmx-aop-mc-int</exclude>
+ <exclude>org.jboss.microcontainer:jboss-jmx-mc-int</exclude>
+ <exclude>org.jboss.microcontainer:jboss-kernel</exclude>
+ <exclude>org.jboss.microcontainer:jboss-spring-int</exclude>
</excludes>
</bannedDependencies>
</rules>
Modified: branches/vfs3-int/connector/src/resources/jca-sar/jca-jboss-beans.xml
===================================================================
--- branches/vfs3-int/connector/src/resources/jca-sar/jca-jboss-beans.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/connector/src/resources/jca-sar/jca-jboss-beans.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -5,15 +5,20 @@
<!-- ==================================================================== -->
<!-- THREAD POOL -->
- <threads xmlns="urn:jboss:threads:1.0">
+ <threads xmlns="urn:jboss:threads:2.0">
<thread-group name="WorkManagerThreadGroup" group-name="workmanager-threads"/>
- <thread-factory name="WorkManagerThreadFactory" group="WorkManagerThreadGroup"/>
- <thread-pool-executor name="WorkManagerThreadPool" thread-factory="WorkManagerThreadFactory" queue-length="1024">
- <core-pool-size count="20"/>
- <max-pool-size count="100"/>
+
+ <thread-factory name="WorkManagerThreadFactory">
+ <thread-group name="WorkManagerThreadGroup"/>
+ </thread-factory>
+
+ <bounded-queue-thread-pool-executor name="WorkManagerThreadPool" blocking="true">
+ <thread-factory name="WorkManagerThreadFactory"/>
+ <queue-length count="1024"/>
+ <core-threads count="20"/>
+ <max-threads count="100"/>
<keepalive-time time="60" unit="seconds"/>
- <reject-policy name="block"/>
- </thread-pool-executor>
+ </bounded-queue-thread-pool-executor>
</threads>
<!-- WORK MANAGER -->
Modified: branches/vfs3-int/ejb3/pom.xml
===================================================================
--- branches/vfs3-int/ejb3/pom.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/ejb3/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -75,24 +75,46 @@
<include name="**"/>
</fileset>
</copy>
-
<unjar src="${maven.dependency.org.jboss.ejb3.jboss-ejb3-core.jar.path}" dest="target/resources">
<patternset>
<include name="*.xml" />
- <exclude name="META-INF/*.xml" />
+ <include name="META-INF/ejb3-deployers-jboss-beans.xml" />
+ <exclude name="META-INF/jpa-deployers-jboss-beans.xml" />
<include name="META-INF/*.properties" />
</patternset>
</unjar>
-
+
+ <mkdir dir="target/resources/deployers"/>
+ <unjar src="${maven.dependency.org.jboss.ejb3.jboss-ejb3-deployers.jar.path}" dest="target/resources/deployers">
+ <patternset>
+ <include name="META-INF/ejb3-deployers-jboss-beans.xml" />
+ </patternset>
+ </unjar>
+ <unjar src="${maven.dependency.org.jboss.ejb3.jboss-ejb3-nointerface.jar.path}" dest="target/resources">
+ <patternset>
+ <include name="META-INF/ejb3-nointerface-jboss-beans.xml" />
+ </patternset>
+ </unjar>
+ <unjar src="${maven.dependency.org.jboss.ejb3.jboss-ejb3-metadata-deployers.jar.path}" dest="target/resources">
+ <patternset>
+ <include name="META-INF/ejb3-metadata-deployers-jboss-beans.xml" />
+ </patternset>
+ </unjar>
+
<mkdir dir="target/ejb3.deployer"/>
<copy todir="target/ejb3.deployer">
<fileset dir="target">
<include name="jboss-as-ejb3-deployer.jar"/>
</fileset>
<fileset dir="target/resources">
- <include name="META-INF/ejb3-deployers-jboss-beans.xml"/>
+ <include name="META-INF/ejb3-as-deployers-jboss-beans.xml"/>
<include name="META-INF/jpa-deployers-jboss-beans.xml"/>
+
</fileset>
+ <fileset dir="target/resources">
+ <!-- the one from ejb3-core/META-INF -->
+ <include name="META-INF/ejb3-deployers-jboss-beans.xml"/>
+ </fileset>
<fileset dir="target/resources">
<include name="META-INF/persistence.properties"/>
</fileset>
@@ -104,6 +126,14 @@
<include name="ejb3-connectors-jboss-beans.xml"/>
<include name="ejb3-interceptors-aop.xml"/>
</fileset>
+ <fileset dir="target/resources/META-INF">
+ <include name="ejb3-nointerface-jboss-beans.xml" />
+ <include name="ejb3-metadata-deployers-jboss-beans.xml" />
+ </fileset>
+ <fileset dir="target/resources/deployers/META-INF">
+ <include name="ejb3-deployers-jboss-beans.xml" />
+ </fileset>
+
</copy>
</tasks>
@@ -196,7 +226,6 @@
<dependency>
<groupId>org.jboss.ejb3</groupId>
<artifactId>jboss-ejb3_1</artifactId>
- <type>pom</type>
<exclusions>
<!-- JBAS-679, may be removed when as-int is >= 1.1.5 -->
<exclusion>
@@ -211,6 +240,10 @@
<groupId>org.jboss.metadata</groupId>
<artifactId>jboss-metadata</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>org.jboss.ejb3</groupId>
+ <artifactId>jboss-ejb3-core</artifactId>
+ </exclusion>
</exclusions>
</dependency>
@@ -218,8 +251,26 @@
<groupId>org.jboss.ejb3</groupId>
<artifactId>jboss-ejb3-core</artifactId>
<classifier>client</classifier>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-dependency</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
-
+
+ <dependency>
+ <groupId>org.jboss.ejb3</groupId>
+ <artifactId>jboss-ejb3-core</artifactId>
+ <version>${version.org.jboss.ejb3.core.client}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-dependency</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
<dependency>
<groupId>org.jboss.javaee</groupId>
<artifactId>jboss-ejb-api</artifactId>
@@ -233,6 +284,12 @@
<dependency>
<groupId>org.jboss.jbossas</groupId>
<artifactId>jboss-as-connector</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-dependency</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
Modified: branches/vfs3-int/ejb3/src/main/java/org/jboss/ejb3/deployers/Ejb3DependenciesDeployer.java
===================================================================
--- branches/vfs3-int/ejb3/src/main/java/org/jboss/ejb3/deployers/Ejb3DependenciesDeployer.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/ejb3/src/main/java/org/jboss/ejb3/deployers/Ejb3DependenciesDeployer.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -64,7 +64,7 @@
unit.getTopLevel().addAttachment(DependenciesMetaData.class, dependencies);
*/
//ControllerContext context = unit.getAttachment(ControllerContext.class);
- unit.addIDependOn(new AbstractDependencyItem(unit.getName(), TransactionManager.class, new ControllerState("Real"), ControllerState.INSTALLED));
+ unit.addIDependOn(new AbstractDependencyItem(unit.getName(), TransactionManager.class, ControllerState.getInstance("Real"), ControllerState.INSTALLED));
}
private DependencyItemMetaData createDependencyItemMetaData(String name)
@@ -73,7 +73,7 @@
item.setValue(name);
// This is ugly, MC checks on String value
//item.setWhenRequired(new ControllerState(DeploymentStages.REAL.toString()));
- item.setWhenRequired(new ControllerState("Real"));
+ item.setWhenRequired(ControllerState.getInstance("Real"));
item.setDependentState(ControllerState.INSTALLED);
return item;
}
Copied: branches/vfs3-int/ejb3/src/resources/META-INF/ejb3-as-deployers-jboss-beans.xml (from rev 99666, trunk/ejb3/src/resources/META-INF/ejb3-as-deployers-jboss-beans.xml)
===================================================================
--- branches/vfs3-int/ejb3/src/resources/META-INF/ejb3-as-deployers-jboss-beans.xml (rev 0)
+++ branches/vfs3-int/ejb3/src/resources/META-INF/ejb3-as-deployers-jboss-beans.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,259 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ EJB3 Deployers
+-->
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+
+ <bean name="Ejb3DependenciesDeployer" class="org.jboss.ejb3.deployers.Ejb3DependenciesDeployer">
+ <!-- TODO: allow for configuration
+ <property name="dependencies">
+ <dependency xmlns="urn:jboss:dependency:1.0">
+ <item>javax.transaction.TransactionManager</item>
+ </dependency>
+ </property>
+ -->
+ </bean>
+
+ <bean name="Ejb3Deployer" class="org.jboss.ejb3.deployers.Ejb3Deployer">
+ <install bean="ManagedDeploymentCreator" method="addVersionedAttachmentType">
+ <parameter>
+ <value>org.jboss.metadata.ejb.jboss.JBossMetaData</value>
+ </parameter>
+ <parameter>
+ <value>ejb3x</value>
+ </parameter>
+ <parameter>
+ <value>3.*</value>
+ </parameter>
+ <parameter>
+ <value>getEjbVersion</value>
+ </parameter>
+ </install>
+ <uninstall bean="ManagedDeploymentCreator" method="removeVersionedAttachmentType">
+ <parameter>
+ <value>org.jboss.metadata.ejb.jboss.JBossMetaData</value>
+ </parameter>
+ <parameter>
+ <value>ejb3x</value>
+ </parameter>
+ </uninstall>
+ <property name="kernel"><inject bean="jboss.kernel:service=Kernel"/></property>
+ <property name="mbeanServer"><inject bean="JMXKernel" property="mbeanServer"/></property>
+ <property name="cacheFactoryRegistry"><inject bean="EJB3CacheFactoryRegistry" /></property>
+ <property name="poolFactoryRegistry"><inject bean="EJB3PoolFactoryRegistry" /></property>
+ <property name="persistenceManagerFactoryRegistry"><inject bean="EJB3PersistenceManagerFactoryRegistry" /></property>
+ <!-- Should war deployments be scanned for annotated ejbs -->
+ <property name="scanWars">false</property>
+
+ <!--
+
+ Configure the deployer to optionally require a deployment
+ descriptor for deployable units. By turning this switch to "true",
+ "META-INF/jboss.xml" or the EJB3 Deployment Descriptor "META-INF/ejb-jar.xml"
+ will be required for deployment, enabling a performance increace in deployment by
+ not scanning for annotations in non-deployable EJB3 JARs.
+
+ Default for this value is "false".
+
+ -->
+ <property name="deploymentDescriptorRequired">false</property>
+
+ <property name="ignoredJarsSet">
+ <set elementClass="java.lang.String">
+ <value>snmp-adaptor.jar</value>
+ <value>otherimages.jar</value>
+ <value>applet.jar</value>
+ <value>jcommon.jar</value>
+ <value>console-mgr-classes.jar</value>
+ <value>jfreechart.jar</value>
+ <value>juddi-service.jar</value>
+ <value>wsdl4j.jar</value>
+ <value>commons-collections.jar</value>
+ <value>commons-pool.jar</value>
+ <value>juddi.jar</value>
+ <value>commons-discovery.jar</value>
+ <value>uddi4j.jar</value>
+ <value>axis.jar</value>
+ <value>commons-dbcp.jar</value>
+ <value>jboss-juddiaxis.jar</value>
+ <value>trove.jar</value>
+ <value>javassist.jar</value>
+ <value>jboss-aop-jdk50.jar</value>
+ <value>jboss-aspect-library-jdk50.jar</value>
+ <value>jpa-api.jar</value>
+ <value>commons-validator-1.1.3.jar</value>
+ <value>commons-collections.jar</value>
+ <value>commons-fileupload.jar</value>
+ <value>commons-pool.jar</value>
+ <value>hibernate-entitymanager.jar</value>
+ <value>jboss-ejb3x.jar</value>
+ <value>commons-digester-1.6.jar</value>
+ <value>cglib-2.1.1.jar</value>
+ <value>commons-discovery.jar</value>
+ <value>jboss-annotations-ejb3.jar</value>
+ <value>jaxen-1.1-beta-4.jar</value>
+ <value>hibernate-annotations.jar</value>
+ <value>commons-httpclient.jar</value>
+ <value>commons-logging.jar</value>
+ <value>commons-vfs.jar</value>
+ <value>hibernate3.jar</value>
+ <value>commons-logging-api.jar</value>
+ <value>asm.jar</value>
+ <value>asm-attrs.jar</value>
+ <value>commons-lang-2.0.jar</value>
+ <value>jboss-ejb3.jar</value>
+ <value>dom4j.jar</value>
+ <value>commons-codec-1.2.jar</value>
+ <value>wsdl4j.jar</value>
+ <value>xmlsec.jar</value>
+ <value>jbossws.jar</value>
+ <value>jboss-bean-deployer.jar</value>
+ <value>jboss-microcontainer.jar</value>
+ <value>jboss-dependency.jar</value>
+ <value>jboss-container.jar</value>
+ <value>tomcat-coyote.jar</value>
+ <value>commons-collections.jar</value>
+ <value>myfaces.jar</value>
+ <value>jstl.jar</value>
+ <value>commons-digester-1.6.jar</value>
+ <value>myfaces-impl.jar</value>
+ <value>commons-beanutils.jar</value>
+ <value>myfaces-jsf-api.jar</value>
+ <value>commons-codec-1.2.jar</value>
+ <value>catalina-optional.jar</value>
+ <value>tomcat-util.jar</value>
+ <value>jasper-compiler.jar</value>
+ <value>commons-el.jar</value>
+ <value>jasper-compiler-jdt.jar</value>
+ <value>tomcat-http.jar</value>
+ <value>catalina-manager.jar</value>
+ <value>jasper-runtime.jar</value>
+ <value>tomcat55-service.jar</value>
+ <value>servlets-invoker.jar</value>
+ <value>catalina.jar</value>
+ <value>naming-resources.jar</value>
+ <value>servlets-default.jar</value>
+ <value>tomcat-ajp.jar</value>
+ <value>commons-modeler.jar</value>
+ <value>tomcat-apr.jar</value>
+ <value>servlets-webdav.jar</value>
+ </set>
+ </property>
+ <depends>AspectLibrary</depends>
+ </bean>
+
+ <bean name="AppClientParsingDeployer" class="org.jboss.ejb3.deployers.AppClientParsingDeployer">
+ <!-- TODO: check depends -->
+ <depends>AspectLibrary</depends>
+ </bean>
+
+ <bean name="JBossClientParsingDeployer" class="org.jboss.ejb3.deployers.JBossClientParsingDeployer">
+ <depends>AppClientParsingDeployer</depends>
+ </bean>
+ <bean name="MergedJBossClientMetaDataDeployer" class="org.jboss.ejb3.deployers.MergedJBossClientMetaDataDeployer">
+ <depends>AppClientParsingDeployer</depends>
+ </bean>
+
+ <bean name="Ejb3ClientDeployer" class="org.jboss.ejb3.deployers.Ejb3ClientDeployer">
+ <install bean="ManagedDeploymentCreator" method="addAttachmentType">
+ <parameter>
+ <value>org.jboss.metadata.client.jboss.JBossClientMetaData</value>
+ </parameter>
+ <parameter>
+ <value>car</value>
+ </parameter>
+ </install>
+ <uninstall bean="ManagedDeploymentCreator" method="removeAttachmentType">
+ <parameter>
+ <value>org.jboss.metadata.client.jboss.JBossClientMetaData</value>
+ </parameter>
+ </uninstall>
+ <property name="kernel"><inject bean="jboss.kernel:service=Kernel"/></property>
+ <property name="mbeanServer"><inject bean="JMXKernel" property="mbeanServer"/></property>
+ <!-- TODO: check depends -->
+ <depends>AspectLibrary</depends>
+ </bean>
+
+ <!-- EJB3 Cache Factory Registry -->
+ <bean name="EJB3CacheFactoryRegistry" class="org.jboss.ejb3.cache.CacheFactoryRegistry">
+ <property name="factories">
+ <!-- Define each of the registered factories -->
+ <map class="java.util.HashMap" keyClass="java.lang.String"
+ valueClass="java.lang.Class">
+ <!-- NoPassivationCache -->
+ <entry>
+ <key>NoPassivationCache</key>
+ <value>org.jboss.ejb3.cache.NoPassivationCacheFactory</value>
+ </entry>
+ <!-- SimpleStatefulCache -->
+ <entry>
+ <key>SimpleStatefulCache</key>
+ <value>org.jboss.ejb3.cache.simple.SimpleStatefulCacheFactory</value>
+ </entry>
+ <!-- StatefulTreeCache -->
+ <entry>
+ <key>StatefulTreeCache</key>
+ <value>org.jboss.ejb3.cache.tree.StatefulTreeCacheFactory</value>
+ </entry>
+ </map>
+ </property>
+ </bean>
+
+ <!-- EJB3 Pool Factory Registry -->
+ <bean name="EJB3PoolFactoryRegistry" class="org.jboss.ejb3.pool.PoolFactoryRegistry">
+ <property name="factories">
+ <!-- Define each of the registered factories -->
+ <map class="java.util.HashMap" keyClass="java.lang.String"
+ valueClass="java.lang.Class">
+ <!-- ThreadlocalPool -->
+ <entry>
+ <key>ThreadlocalPool</key>
+ <value>org.jboss.ejb3.pool.ThreadlocalPoolFactory</value>
+ </entry>
+ <!-- StrictMaxPool -->
+ <entry>
+ <key>StrictMaxPool</key>
+ <value>org.jboss.ejb3.pool.StrictMaxPoolFactory</value>
+ </entry>
+ </map>
+ </property>
+ </bean>
+
+ <!-- EJB3 Persistence Manager Factory Registry -->
+ <bean name="EJB3PersistenceManagerFactoryRegistry" class="org.jboss.ejb3.cache.persistence.PersistenceManagerFactoryRegistry">
+ <property name="factories">
+ <!-- Define each of the registered factories -->
+ <map class="java.util.HashMap" keyClass="java.lang.String"
+ valueClass="java.lang.Class">
+ <!-- StatefulSessionFilePersistenceManager -->
+ <entry>
+ <key>StatefulSessionFilePersistenceManager</key>
+ <value>org.jboss.ejb3.cache.simple.StatefulSessionFilePersistenceManagerFactory</value>
+ </entry>
+ </map>
+ </property>
+ </bean>
+
+
+ <!-- Persistence Unit deployers -->
+ <bean name="PersistenceUnitParsingDeployer" class="org.jboss.ejb3.deployers.PersistenceUnitParsingDeployer">
+ <install bean="ManagedDeploymentCreator" method="addAttachmentType">
+ <parameter>
+ <value>org.jboss.metadata.jpa.spec.PersistenceMetaData</value>
+ </parameter>
+ <parameter>
+ <value>par</value>
+ </parameter>
+ </install>
+ <uninstall bean="ManagedDeploymentCreator" method="removeAttachmentType">
+ <parameter>
+ <value>org.jboss.metadata.jpa.spec.PersistenceMetaData</value>
+ </parameter>
+ </uninstall>
+ </bean>
+
+
+
+</deployment>
Deleted: branches/vfs3-int/ejb3/src/resources/META-INF/ejb3-deployers-jboss-beans.xml
===================================================================
--- branches/vfs3-int/ejb3/src/resources/META-INF/ejb3-deployers-jboss-beans.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/ejb3/src/resources/META-INF/ejb3-deployers-jboss-beans.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,355 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
- EJB3 Deployers
--->
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
-
- <bean name="MessageDestinationReferenceResolver" class="org.jboss.ejb3.resolvers.DefaultMessageDestinationReferenceResolver"/>
-
- <bean name="Ejb3DependenciesDeployer" class="org.jboss.ejb3.deployers.Ejb3DependenciesDeployer">
- <!-- TODO: allow for configuration
- <property name="dependencies">
- <dependency xmlns="urn:jboss:dependency:1.0">
- <item>javax.transaction.TransactionManager</item>
- </dependency>
- </property>
- -->
- </bean>
-
- <bean name="Ejb3Deployer" class="org.jboss.ejb3.deployers.Ejb3Deployer">
- <install bean="ManagedDeploymentCreator" method="addVersionedAttachmentType">
- <parameter>
- <value>org.jboss.metadata.ejb.jboss.JBossMetaData</value>
- </parameter>
- <parameter>
- <value>ejb3x</value>
- </parameter>
- <parameter>
- <value>3.*</value>
- </parameter>
- <parameter>
- <value>getEjbVersion</value>
- </parameter>
- </install>
- <uninstall bean="ManagedDeploymentCreator" method="removeVersionedAttachmentType">
- <parameter>
- <value>org.jboss.metadata.ejb.jboss.JBossMetaData</value>
- </parameter>
- <parameter>
- <value>ejb3x</value>
- </parameter>
- </uninstall>
- <property name="kernel"><inject bean="jboss.kernel:service=Kernel"/></property>
- <property name="mbeanServer"><inject bean="JMXKernel" property="mbeanServer"/></property>
- <property name="cacheFactoryRegistry"><inject bean="EJB3CacheFactoryRegistry" /></property>
- <property name="poolFactoryRegistry"><inject bean="EJB3PoolFactoryRegistry" /></property>
- <property name="persistenceManagerFactoryRegistry"><inject bean="EJB3PersistenceManagerFactoryRegistry" /></property>
- <!-- Should war deployments be scanned for annotated ejbs -->
- <property name="scanWars">false</property>
-
- <!--
-
- Configure the deployer to optionally require a deployment
- descriptor for deployable units. By turning this switch to "true",
- "META-INF/jboss.xml" or the EJB3 Deployment Descriptor "META-INF/ejb-jar.xml"
- will be required for deployment, enabling a performance increace in deployment by
- not scanning for annotations in non-deployable EJB3 JARs.
-
- Default for this value is "false".
-
- -->
- <property name="deploymentDescriptorRequired">false</property>
-
- <property name="ignoredJarsSet">
- <set elementClass="java.lang.String">
- <value>snmp-adaptor.jar</value>
- <value>otherimages.jar</value>
- <value>applet.jar</value>
- <value>jcommon.jar</value>
- <value>console-mgr-classes.jar</value>
- <value>jfreechart.jar</value>
- <value>juddi-service.jar</value>
- <value>wsdl4j.jar</value>
- <value>commons-collections.jar</value>
- <value>commons-pool.jar</value>
- <value>juddi.jar</value>
- <value>commons-discovery.jar</value>
- <value>uddi4j.jar</value>
- <value>axis.jar</value>
- <value>commons-dbcp.jar</value>
- <value>jboss-juddiaxis.jar</value>
- <value>trove.jar</value>
- <value>javassist.jar</value>
- <value>jboss-aop-jdk50.jar</value>
- <value>jboss-aspect-library-jdk50.jar</value>
- <value>jpa-api.jar</value>
- <value>commons-validator-1.1.3.jar</value>
- <value>commons-collections.jar</value>
- <value>commons-fileupload.jar</value>
- <value>commons-pool.jar</value>
- <value>hibernate-entitymanager.jar</value>
- <value>jboss-ejb3x.jar</value>
- <value>commons-digester-1.6.jar</value>
- <value>cglib-2.1.1.jar</value>
- <value>commons-discovery.jar</value>
- <value>jboss-annotations-ejb3.jar</value>
- <value>jaxen-1.1-beta-4.jar</value>
- <value>hibernate-annotations.jar</value>
- <value>commons-httpclient.jar</value>
- <value>commons-logging.jar</value>
- <value>commons-vfs.jar</value>
- <value>hibernate3.jar</value>
- <value>commons-logging-api.jar</value>
- <value>asm.jar</value>
- <value>asm-attrs.jar</value>
- <value>commons-lang-2.0.jar</value>
- <value>jboss-ejb3.jar</value>
- <value>dom4j.jar</value>
- <value>commons-codec-1.2.jar</value>
- <value>wsdl4j.jar</value>
- <value>xmlsec.jar</value>
- <value>jbossws.jar</value>
- <value>jboss-bean-deployer.jar</value>
- <value>jboss-microcontainer.jar</value>
- <value>jboss-dependency.jar</value>
- <value>jboss-container.jar</value>
- <value>tomcat-coyote.jar</value>
- <value>commons-collections.jar</value>
- <value>myfaces.jar</value>
- <value>jstl.jar</value>
- <value>commons-digester-1.6.jar</value>
- <value>myfaces-impl.jar</value>
- <value>commons-beanutils.jar</value>
- <value>myfaces-jsf-api.jar</value>
- <value>commons-codec-1.2.jar</value>
- <value>catalina-optional.jar</value>
- <value>tomcat-util.jar</value>
- <value>jasper-compiler.jar</value>
- <value>commons-el.jar</value>
- <value>jasper-compiler-jdt.jar</value>
- <value>tomcat-http.jar</value>
- <value>catalina-manager.jar</value>
- <value>jasper-runtime.jar</value>
- <value>tomcat55-service.jar</value>
- <value>servlets-invoker.jar</value>
- <value>catalina.jar</value>
- <value>naming-resources.jar</value>
- <value>servlets-default.jar</value>
- <value>tomcat-ajp.jar</value>
- <value>commons-modeler.jar</value>
- <value>tomcat-apr.jar</value>
- <value>servlets-webdav.jar</value>
- </set>
- </property>
- <depends>AspectLibrary</depends>
- </bean>
-
- <bean name="AppClientParsingDeployer" class="org.jboss.ejb3.deployers.AppClientParsingDeployer">
- <!-- TODO: check depends -->
- <depends>AspectLibrary</depends>
- </bean>
-
- <bean name="JBossClientParsingDeployer" class="org.jboss.ejb3.deployers.JBossClientParsingDeployer">
- <depends>AppClientParsingDeployer</depends>
- </bean>
- <bean name="MergedJBossClientMetaDataDeployer" class="org.jboss.ejb3.deployers.MergedJBossClientMetaDataDeployer">
- <depends>AppClientParsingDeployer</depends>
- </bean>
-
- <bean name="Ejb3ClientDeployer" class="org.jboss.ejb3.deployers.Ejb3ClientDeployer">
- <install bean="ManagedDeploymentCreator" method="addAttachmentType">
- <parameter>
- <value>org.jboss.metadata.client.jboss.JBossClientMetaData</value>
- </parameter>
- <parameter>
- <value>car</value>
- </parameter>
- </install>
- <uninstall bean="ManagedDeploymentCreator" method="removeAttachmentType">
- <parameter>
- <value>org.jboss.metadata.client.jboss.JBossClientMetaData</value>
- </parameter>
- </uninstall>
- <property name="kernel"><inject bean="jboss.kernel:service=Kernel"/></property>
- <property name="mbeanServer"><inject bean="JMXKernel" property="mbeanServer"/></property>
- <!-- TODO: check depends -->
- <depends>AspectLibrary</depends>
- </bean>
-
- <!-- EJB3 Cache Factory Registry -->
- <bean name="EJB3CacheFactoryRegistry" class="org.jboss.ejb3.cache.CacheFactoryRegistry">
- <property name="factories">
- <!-- Define each of the registered factories -->
- <map class="java.util.HashMap" keyClass="java.lang.String"
- valueClass="java.lang.Class">
- <!-- NoPassivationCache -->
- <entry>
- <key>NoPassivationCache</key>
- <value>org.jboss.ejb3.cache.NoPassivationCacheFactory</value>
- </entry>
- <!-- SimpleStatefulCache -->
- <entry>
- <key>SimpleStatefulCache</key>
- <value>org.jboss.ejb3.cache.simple.SimpleStatefulCacheFactory</value>
- </entry>
- <!-- StatefulTreeCache -->
- <entry>
- <key>StatefulTreeCache</key>
- <value>org.jboss.ejb3.cache.tree.StatefulTreeCacheFactory</value>
- </entry>
- </map>
- </property>
- </bean>
-
- <!-- EJB3 Pool Factory Registry -->
- <bean name="EJB3PoolFactoryRegistry" class="org.jboss.ejb3.pool.PoolFactoryRegistry">
- <property name="factories">
- <!-- Define each of the registered factories -->
- <map class="java.util.HashMap" keyClass="java.lang.String"
- valueClass="java.lang.Class">
- <!-- ThreadlocalPool -->
- <entry>
- <key>ThreadlocalPool</key>
- <value>org.jboss.ejb3.pool.ThreadlocalPoolFactory</value>
- </entry>
- <!-- StrictMaxPool -->
- <entry>
- <key>StrictMaxPool</key>
- <value>org.jboss.ejb3.pool.StrictMaxPoolFactory</value>
- </entry>
- </map>
- </property>
- </bean>
-
- <!-- EJB3 Persistence Manager Factory Registry -->
- <bean name="EJB3PersistenceManagerFactoryRegistry" class="org.jboss.ejb3.cache.persistence.PersistenceManagerFactoryRegistry">
- <property name="factories">
- <!-- Define each of the registered factories -->
- <map class="java.util.HashMap" keyClass="java.lang.String"
- valueClass="java.lang.Class">
- <!-- StatefulSessionFilePersistenceManager -->
- <entry>
- <key>StatefulSessionFilePersistenceManager</key>
- <value>org.jboss.ejb3.cache.simple.StatefulSessionFilePersistenceManagerFactory</value>
- </entry>
- </map>
- </property>
- </bean>
-
- <bean name="JNDIKernelRegistryPlugin" class="org.jboss.ejb3.kernel.JNDIKernelRegistryPlugin"/>
-
- <!-- Persistence Unit deployers -->
- <bean name="PersistenceUnitParsingDeployer" class="org.jboss.ejb3.deployers.PersistenceUnitParsingDeployer">
- <install bean="ManagedDeploymentCreator" method="addAttachmentType">
- <parameter>
- <value>org.jboss.metadata.jpa.spec.PersistenceMetaData</value>
- </parameter>
- <parameter>
- <value>par</value>
- </parameter>
- </install>
- <uninstall bean="ManagedDeploymentCreator" method="removeAttachmentType">
- <parameter>
- <value>org.jboss.metadata.jpa.spec.PersistenceMetaData</value>
- </parameter>
- </uninstall>
- </bean>
-
- <!--
-
- JNDI Registrars
-
-
- The JNDI Registrar is responsible for all JNDI Bindings for
- an EJB.
-
- -->
-
- <!-- SLSB JNDI Registrar -->
- <bean name="org.jboss.ejb3.JndiRegistrar.Session.SLSBJndiRegistrar"
- class="org.jboss.ejb3.proxy.impl.jndiregistrar.JndiStatelessSessionRegistrar">
- <constructor>
- <parameter>
- org.jboss.ejb3.proxy.impl.objectfactory.session.stateless.StatelessSessionProxyObjectFactory
- </parameter>
- </constructor>
- </bean>
-
- <!-- SFSB JNDI Registrar -->
- <bean name="org.jboss.ejb3.JndiRegistrar.Session.SFSBJndiRegistrar"
- class="org.jboss.ejb3.proxy.impl.jndiregistrar.JndiStatefulSessionRegistrar">
- <constructor>
- <parameter>
- org.jboss.ejb3.proxy.impl.objectfactory.session.stateful.StatefulSessionProxyObjectFactory
- </parameter>
- </constructor>
- </bean>
-
- <!-- @Service JNDI Registrar -->
- <bean name="org.jboss.ejb3.JndiRegistrar.Session.ServiceJndiRegistrar"
- class="org.jboss.ejb3.proxy.impl.jndiregistrar.JndiServiceRegistrar">
- <constructor>
- <parameter>
- org.jboss.ejb3.proxy.impl.objectfactory.session.service.ServiceProxyObjectFactory
- </parameter>
- </constructor>
- </bean>
-
- <bean name="org.jboss.ejb3.ProxyClusteringRegistry"
- class="org.jboss.ejb3.proxy.clustered.registry.ProxyClusteringRegistry"/>
-
- <!-- Clustered SLSB JNDI Registrar -->
- <bean name="org.jboss.ejb3.JndiRegistrar.Session.ClusteredSLSBJndiRegistrar"
- class="org.jboss.ejb3.proxy.clustered.jndiregistrar.JndiClusteredStatelessSessionRegistrar">
- <constructor>
- <parameter>
- org.jboss.ejb3.proxy.clustered.objectfactory.session.stateless.StatelessSessionClusteredProxyObjectFactory
- </parameter>
- <parameter><inject bean="org.jboss.ejb3.ProxyClusteringRegistry"/></parameter>
- </constructor>
- </bean>
-
- <!-- Clustered SFSB JNDI Registrar -->
- <bean name="org.jboss.ejb3.JndiRegistrar.Session.ClusteredSFSBJndiRegistrar"
- class="org.jboss.ejb3.proxy.clustered.jndiregistrar.JndiClusteredStatefulSessionRegistrar">
- <constructor>
- <parameter>
- org.jboss.ejb3.proxy.clustered.objectfactory.session.stateful.StatefulSessionClusteredProxyObjectFactory
- </parameter>
- <parameter><inject bean="org.jboss.ejb3.ProxyClusteringRegistry"/></parameter>
- </constructor>
- </bean>
-
- <!-- EJB3 ProcessorChain Deployer -->
- <bean name="Ejb3MetadataProcessingDeployer"
- class="org.jboss.ejb3.deployers.Ejb3MetadataProcessingDeployer" />
- <!-- EJB3 JNDI Policy Decorator Deployer -->
- <bean name="EjbMetadataJndiPolicyDecoratorDeployer"
- class="org.jboss.ejb3.deployers.EjbMetadataJndiPolicyDecoratorDeployer" />
-
- <!-- EJB Reference Resolver -->
- <bean name="org.jboss.ejb3.EjbReferenceResolver" class="org.jboss.ejb3.common.resolvers.spi.EjbReferenceResolver">
- <constructor factoryClass="org.jboss.ejb3.common.resolvers.spi.EjbReferenceResolverFactory"
- factoryMethod="newInstance">
- <parameter>org.jboss.ejb3.common.resolvers.plugins.FirstMatchEjbReferenceResolver</parameter>
- </constructor>
- </bean>
-
- <!-- Add Annotation Plugins upon installation -->
- <bean name="org.jboss.ejb3.AddAnnotationPluginOnBeanAnnotationAdaptorCallbackService"
- class="org.jboss.ejb3.mcint.annotationadaptor.AddAnnotationPluginOnBeanAnnotationAdaptorCallbackService">
- <constructor>
- <parameter><inject bean="jboss.kernel:service=Kernel"/></parameter>
- </constructor>
- </bean>
-
- <!-- EJB Reference Annotation Plugin -->
- <bean name="org.jboss.ejb3.EjbReferenceAnnotationPlugin"
- class="org.jboss.ejb3.mcint.metadata.plugins.EjbReferenceAnnotationPlugin">
- <constructor>
- <parameter><inject bean="org.jboss.ejb3.EjbReferenceResolver" /></parameter>
- </constructor>
- </bean>
-
-</deployment>
Modified: branches/vfs3-int/jmx-remoting/src/main/java/javax/management/remote/rmi/RMIConnector.java
===================================================================
--- branches/vfs3-int/jmx-remoting/src/main/java/javax/management/remote/rmi/RMIConnector.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/jmx-remoting/src/main/java/javax/management/remote/rmi/RMIConnector.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -47,7 +47,7 @@
import org.jboss.mx.remoting.rmi.ClientMBeanServerConnection;
import org.jboss.mx.remoting.rmi.ConnectionNotifier;
import org.jboss.mx.remoting.rmi.ClientNotifier;
-import org.jboss.mx.server.ObjectInputStreamWithClassLoader;
+import org.jboss.remoting.loading.ObjectInputStreamWithClassLoader;
import org.jboss.util.Base64;
/**
@@ -352,4 +352,4 @@
objectOutputStream.defaultWriteObject();
}
-}
\ No newline at end of file
+}
Modified: branches/vfs3-int/main/pom.xml
===================================================================
--- branches/vfs3-int/main/pom.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/main/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -37,6 +37,23 @@
</executions>
</plugin>
<plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>buildnumber-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>today-date</id>
+ <goals>
+ <goal>create</goal>
+ </goals>
+ <phase>validate</phase>
+ <configuration>
+ <timestampFormat>{0, date, yyyyMMdd}</timestampFormat>
+ <timestampPropertyName>today</timestampPropertyName>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
@@ -54,6 +71,7 @@
<manifestEntries>
<Main-Class>org.jboss.Main</Main-Class>
<Class-Path>../client/getopt.jar</Class-Path>
+ <Implementation-Version>${project.version} (Build SVNTag:JBoss_${project.version} date:${today})</Implementation-Version>
</manifestEntries>
</archive>
</configuration>
Modified: branches/vfs3-int/pom.xml
===================================================================
--- branches/vfs3-int/pom.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -401,6 +401,12 @@
</dependency>
<dependency>
<groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-profileservice</artifactId>
+ <version>${project.version}</version>
+ <classifier>client</classifier>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.jbossas</groupId>
<artifactId>jboss-as-security</artifactId>
<version>${project.version}</version>
</dependency>
@@ -581,6 +587,7 @@
<module>ejb3</module>
<module>tomcat</module>
<module>webservices</module>
+ <module>resteasy-int</module>
<module>hibernate-int</module>
<module>console</module>
<module>client</module>
Copied: branches/vfs3-int/resteasy-int (from rev 99666, trunk/resteasy-int)
Deleted: branches/vfs3-int/resteasy-int/.classpath
===================================================================
--- trunk/resteasy-int/.classpath 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/.classpath 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" output="target/classes" path="src/main/java"/>
- <classpathentry excluding="**" kind="src" output="target/classes" path="src/resources/jbossws-jboss.jar"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
- <classpathentry kind="output" path="target/classes"/>
-</classpath>
Copied: branches/vfs3-int/resteasy-int/.classpath (from rev 99666, trunk/resteasy-int/.classpath)
===================================================================
--- branches/vfs3-int/resteasy-int/.classpath (rev 0)
+++ branches/vfs3-int/resteasy-int/.classpath 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" output="target/classes" path="src/main/java"/>
+ <classpathentry excluding="**" kind="src" output="target/classes" path="src/resources/jbossws-jboss.jar"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
+ <classpathentry kind="output" path="target/classes"/>
+</classpath>
Deleted: branches/vfs3-int/resteasy-int/.project
===================================================================
--- trunk/resteasy-int/.project 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/.project 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>jboss-as-webservices</name>
- <comment>JBoss Application Server (webservices module)</comment>
- <projects>
- <project>jboss-as-deployment</project>
- <project>jboss-as-security</project>
- <project>jboss-as-server</project>
- <project>jboss-as-system</project>
- <project>jboss-as-system-jmx</project>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.maven.ide.eclipse.maven2Builder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.maven.ide.eclipse.maven2Nature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- </natures>
-</projectDescription>
Copied: branches/vfs3-int/resteasy-int/.project (from rev 99666, trunk/resteasy-int/.project)
===================================================================
--- branches/vfs3-int/resteasy-int/.project (rev 0)
+++ branches/vfs3-int/resteasy-int/.project 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>jboss-as-webservices</name>
+ <comment>JBoss Application Server (webservices module)</comment>
+ <projects>
+ <project>jboss-as-deployment</project>
+ <project>jboss-as-security</project>
+ <project>jboss-as-server</project>
+ <project>jboss-as-system</project>
+ <project>jboss-as-system-jmx</project>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.maven.ide.eclipse.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.maven.ide.eclipse.maven2Nature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
Copied: branches/vfs3-int/resteasy-int/.settings (from rev 99666, trunk/resteasy-int/.settings)
Deleted: branches/vfs3-int/resteasy-int/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/resteasy-int/.settings/org.eclipse.jdt.core.prefs 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/.settings/org.eclipse.jdt.core.prefs 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,5 +0,0 @@
-#Mon May 18 14:12:19 CEST 2009
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.source=1.5
-org.eclipse.jdt.core.compiler.compliance=1.5
Copied: branches/vfs3-int/resteasy-int/.settings/org.eclipse.jdt.core.prefs (from rev 99666, trunk/resteasy-int/.settings/org.eclipse.jdt.core.prefs)
===================================================================
--- branches/vfs3-int/resteasy-int/.settings/org.eclipse.jdt.core.prefs (rev 0)
+++ branches/vfs3-int/resteasy-int/.settings/org.eclipse.jdt.core.prefs 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,5 @@
+#Mon May 18 14:12:19 CEST 2009
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.source=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
Deleted: branches/vfs3-int/resteasy-int/.settings/org.maven.ide.eclipse.prefs
===================================================================
--- trunk/resteasy-int/.settings/org.maven.ide.eclipse.prefs 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/.settings/org.maven.ide.eclipse.prefs 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,8 +0,0 @@
-#Mon Aug 03 19:49:17 PDT 2009
-activeProfiles=
-eclipse.preferences.version=1
-fullBuildGoals=process-test-resources
-includeModules=false
-resolveWorkspaceProjects=true
-resourceFilterGoals=process-resources resources\:testResources
-version=1
Copied: branches/vfs3-int/resteasy-int/.settings/org.maven.ide.eclipse.prefs (from rev 99666, trunk/resteasy-int/.settings/org.maven.ide.eclipse.prefs)
===================================================================
--- branches/vfs3-int/resteasy-int/.settings/org.maven.ide.eclipse.prefs (rev 0)
+++ branches/vfs3-int/resteasy-int/.settings/org.maven.ide.eclipse.prefs 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,8 @@
+#Mon Aug 03 19:49:17 PDT 2009
+activeProfiles=
+eclipse.preferences.version=1
+fullBuildGoals=process-test-resources
+includeModules=false
+resolveWorkspaceProjects=true
+resourceFilterGoals=process-resources resources\:testResources
+version=1
Copied: branches/vfs3-int/resteasy-int/jar (from rev 99666, trunk/resteasy-int/jar)
Deleted: branches/vfs3-int/resteasy-int/jar/pom.xml
===================================================================
--- trunk/resteasy-int/jar/pom.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/jar/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,144 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
- <parent>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-parent</artifactId>
- <version>6.0.0-SNAPSHOT</version>
- </parent>
-
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-resteasy</artifactId>
- <packaging>jar</packaging>
- <name>JBoss Application Server Resteasy</name>
- <url>http://www.jboss.org/jbossas</url>
- <description>JBoss Application Server (resteasy module)</description>
-
- <build>
- <plugins>
-<plugin>
- <artifactId>maven-jar-plugin</artifactId>
- <configuration>
- <archive>
- <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
- </archive>
- </configuration>
-</plugin>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <version>2.0.1</version>
- <executions>
- <execution>
- <id>bundle-manifest</id>
- <phase>process-classes</phase>
- <goals>
- <goal>manifest</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-
- <!-- Dependencies -->
- <dependencies>
- <dependency>
- <groupId>org.jboss.resteasy</groupId>
- <artifactId>resteasy-jaxrs</artifactId>
- <version>1.2.1.GA</version>
- <exclusions>
- <exclusion>
- <groupId>javax.xml.bind</groupId>
- <artifactId>jaxb-api</artifactId>
- </exclusion>
- <exclusion>
- <groupId>javax.xml.stream</groupId>
- <artifactId>stax-api</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-server</artifactId>
- <scope>provided</scope>
- <exclusions>
- <exclusion>
- <groupId>javax.xml.bind</groupId>
- <artifactId>jaxb-api</artifactId>
- </exclusion>
- <exclusion>
- <groupId>javax.xml.stream</groupId>
- <artifactId>stax-api</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-system</artifactId>
- <scope>provided</scope>
- <exclusions>
- <exclusion>
- <groupId>javax.xml.bind</groupId>
- <artifactId>jaxb-api</artifactId>
- </exclusion>
- <exclusion>
- <groupId>javax.xml.stream</groupId>
- <artifactId>stax-api</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <!--
- <dependency>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-system-jmx</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.cl</groupId>
- <artifactId>jboss-classloading</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-vfs</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-reflect</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.microcontainer</groupId>
- <artifactId>jboss-dependency</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.microcontainer</groupId>
- <artifactId>jboss-kernel</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.metadata</groupId>
- <artifactId>jboss-metadata-common</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.deployers</groupId>
- <artifactId>jboss-deployers-vfs</artifactId>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.jboss.security</groupId>
- <artifactId>jboss-security-spi</artifactId>
- <scope>provided</scope>
- </dependency>
- -->
- </dependencies>
-
-</project>
Copied: branches/vfs3-int/resteasy-int/jar/pom.xml (from rev 99666, trunk/resteasy-int/jar/pom.xml)
===================================================================
--- branches/vfs3-int/resteasy-int/jar/pom.xml (rev 0)
+++ branches/vfs3-int/resteasy-int/jar/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,144 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+ <parent>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-parent</artifactId>
+ <version>6.0.0-SNAPSHOT</version>
+ </parent>
+
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-resteasy</artifactId>
+ <packaging>jar</packaging>
+ <name>JBoss Application Server Resteasy</name>
+ <url>http://www.jboss.org/jbossas</url>
+ <description>JBoss Application Server (resteasy module)</description>
+
+ <build>
+ <plugins>
+<plugin>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <archive>
+ <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
+ </archive>
+ </configuration>
+</plugin>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <version>2.0.1</version>
+ <executions>
+ <execution>
+ <id>bundle-manifest</id>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>manifest</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+
+ <!-- Dependencies -->
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.resteasy</groupId>
+ <artifactId>resteasy-jaxrs</artifactId>
+ <version>1.2.1.GA</version>
+ <exclusions>
+ <exclusion>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>javax.xml.stream</groupId>
+ <artifactId>stax-api</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-server</artifactId>
+ <scope>provided</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>javax.xml.stream</groupId>
+ <artifactId>stax-api</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <dependency>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-system</artifactId>
+ <scope>provided</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>javax.xml.stream</groupId>
+ <artifactId>stax-api</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <!--
+ <dependency>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-system-jmx</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.cl</groupId>
+ <artifactId>jboss-classloading</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-vfs</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss</groupId>
+ <artifactId>jboss-reflect</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-dependency</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.metadata</groupId>
+ <artifactId>jboss-metadata-common</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.deployers</groupId>
+ <artifactId>jboss-deployers-vfs</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.security</groupId>
+ <artifactId>jboss-security-spi</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ -->
+ </dependencies>
+
+</project>
Copied: branches/vfs3-int/resteasy-int/jar/src (from rev 99666, trunk/resteasy-int/jar/src)
Copied: branches/vfs3-int/resteasy-int/jar/src/main (from rev 99666, trunk/resteasy-int/jar/src/main)
Copied: branches/vfs3-int/resteasy-int/jar/src/main/java (from rev 99666, trunk/resteasy-int/jar/src/main/java)
Copied: branches/vfs3-int/resteasy-int/jar/src/main/java/org (from rev 99666, trunk/resteasy-int/jar/src/main/java/org)
Copied: branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss (from rev 99666, trunk/resteasy-int/jar/src/main/java/org/jboss)
Copied: branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy (from rev 99666, trunk/resteasy-int/jar/src/main/java/org/jboss/resteasy)
Copied: branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration (from rev 99666, trunk/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration)
Copied: branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers (from rev 99666, trunk/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers)
Deleted: branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyIntegrationDeployer.java
===================================================================
--- trunk/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyIntegrationDeployer.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyIntegrationDeployer.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,124 +0,0 @@
-package org.jboss.resteasy.integration.deployers;
-
-import org.jboss.deployers.spi.DeploymentException;
-import org.jboss.deployers.spi.deployer.DeploymentStages;
-import org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer;
-import org.jboss.deployers.structure.spi.DeploymentUnit;
-import org.jboss.logging.Logger;
-import org.jboss.metadata.javaee.spec.ParamValueMetaData;
-import org.jboss.metadata.web.jboss.JBossServletMetaData;
-import org.jboss.metadata.web.jboss.JBossWebMetaData;
-import org.jboss.metadata.web.spec.ServletMappingMetaData;
-import org.jboss.metadata.web.spec.ServletMetaData;
-import org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher;
-import org.jboss.resteasy.plugins.server.servlet.ResteasyContextParameters;
-import org.jboss.resteasy.spi.ResteasyDeployment;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>
- * @version $Revision: 1 $
- */
-public class ResteasyIntegrationDeployer extends AbstractRealDeployer
-{
- private static final Logger LOGGER = Logger.getLogger(ResteasyIntegrationDeployer.class);
-
- public ResteasyIntegrationDeployer()
- {
- super();
-
- addRequiredInput(JBossWebMetaData.class);
- addRequiredInput(ResteasyDeployment.class);
- addOutput(JBossWebMetaData.class);
- setStage(DeploymentStages.PRE_REAL); // TODO -- right stage?
- }
-
- protected void populateWebMetadata()
- {
-
- }
-
- protected void setInitParam(ServletMetaData servlet, String name, String value)
- {
- ParamValueMetaData param = new ParamValueMetaData();
- param.setParamName(name);
- param.setParamValue(value);
- List<ParamValueMetaData> params = servlet.getInitParam();
- if (params == null)
- {
- params = new ArrayList<ParamValueMetaData>();
- servlet.setInitParam(params);
- }
- params.add(param);
-
- }
-
- protected void internalDeploy(DeploymentUnit du) throws DeploymentException
- {
- if (du.isAttachmentPresent(ResteasyScannerDeployer.JAXRS_APPLICATION_CLASS_DEPLOYMENT))
- {
- // do not do this deployer if there is an application class a previous deployer will handle it
- return;
- }
-
- JBossWebMetaData webdata = du.getAttachment(JBossWebMetaData.class);
- ResteasyDeployment resteasy = du.getAttachment(ResteasyDeployment.class);
-
- JBossServletMetaData servlet = new JBossServletMetaData();
- servlet.setServletClass(HttpServletDispatcher.class.getName());
- servlet.setName("Resteasy");
-
- if (!resteasy.getResourceClasses().isEmpty())
- {
- StringBuffer buf = null;
- for (String resource : resteasy.getResourceClasses())
- {
- if (buf == null)
- {
- buf = new StringBuffer();
- buf.append(resource);
- }
- else
- {
- buf.append(",").append(resource);
- }
- }
- String resources = buf.toString();
- setInitParam(servlet, ResteasyContextParameters.RESTEASY_RESOURCES, resources);
- }
- if (!resteasy.getProviderClasses().isEmpty())
- {
- StringBuffer buf = null;
- for (String provider : resteasy.getProviderClasses())
- {
- if (buf == null)
- {
- buf = new StringBuffer();
- buf.append(provider);
- }
- else
- {
- buf.append(",").append(provider);
- }
- }
- setInitParam(servlet, ResteasyContextParameters.RESTEASY_PROVIDERS, buf.toString());
- }
- ServletMappingMetaData mapping = new ServletMappingMetaData();
- mapping.setServletName("Resteasy");
- List<String> patterns = new ArrayList<String>();
- patterns.add("/*");
- mapping.setUrlPatterns(patterns);
-
- webdata.getServlets().add(servlet);
- List<ServletMappingMetaData> mappings = webdata.getServletMappings();
- if (mappings == null)
- {
- mappings = new ArrayList<ServletMappingMetaData>();
- webdata.setServletMappings(mappings);
- }
- mappings.add(mapping);
- }
-
-}
\ No newline at end of file
Copied: branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyIntegrationDeployer.java (from rev 99666, trunk/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyIntegrationDeployer.java)
===================================================================
--- branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyIntegrationDeployer.java (rev 0)
+++ branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyIntegrationDeployer.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,124 @@
+package org.jboss.resteasy.integration.deployers;
+
+import org.jboss.deployers.spi.DeploymentException;
+import org.jboss.deployers.spi.deployer.DeploymentStages;
+import org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer;
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+import org.jboss.logging.Logger;
+import org.jboss.metadata.javaee.spec.ParamValueMetaData;
+import org.jboss.metadata.web.jboss.JBossServletMetaData;
+import org.jboss.metadata.web.jboss.JBossWebMetaData;
+import org.jboss.metadata.web.spec.ServletMappingMetaData;
+import org.jboss.metadata.web.spec.ServletMetaData;
+import org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher;
+import org.jboss.resteasy.plugins.server.servlet.ResteasyContextParameters;
+import org.jboss.resteasy.spi.ResteasyDeployment;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>
+ * @version $Revision: 1 $
+ */
+public class ResteasyIntegrationDeployer extends AbstractRealDeployer
+{
+ private static final Logger LOGGER = Logger.getLogger(ResteasyIntegrationDeployer.class);
+
+ public ResteasyIntegrationDeployer()
+ {
+ super();
+
+ addRequiredInput(JBossWebMetaData.class);
+ addRequiredInput(ResteasyDeployment.class);
+ addOutput(JBossWebMetaData.class);
+ setStage(DeploymentStages.PRE_REAL); // TODO -- right stage?
+ }
+
+ protected void populateWebMetadata()
+ {
+
+ }
+
+ protected void setInitParam(ServletMetaData servlet, String name, String value)
+ {
+ ParamValueMetaData param = new ParamValueMetaData();
+ param.setParamName(name);
+ param.setParamValue(value);
+ List<ParamValueMetaData> params = servlet.getInitParam();
+ if (params == null)
+ {
+ params = new ArrayList<ParamValueMetaData>();
+ servlet.setInitParam(params);
+ }
+ params.add(param);
+
+ }
+
+ protected void internalDeploy(DeploymentUnit du) throws DeploymentException
+ {
+ if (du.isAttachmentPresent(ResteasyScannerDeployer.JAXRS_APPLICATION_CLASS_DEPLOYMENT))
+ {
+ // do not do this deployer if there is an application class a previous deployer will handle it
+ return;
+ }
+
+ JBossWebMetaData webdata = du.getAttachment(JBossWebMetaData.class);
+ ResteasyDeployment resteasy = du.getAttachment(ResteasyDeployment.class);
+
+ JBossServletMetaData servlet = new JBossServletMetaData();
+ servlet.setServletClass(HttpServletDispatcher.class.getName());
+ servlet.setName("Resteasy");
+
+ if (!resteasy.getResourceClasses().isEmpty())
+ {
+ StringBuffer buf = null;
+ for (String resource : resteasy.getResourceClasses())
+ {
+ if (buf == null)
+ {
+ buf = new StringBuffer();
+ buf.append(resource);
+ }
+ else
+ {
+ buf.append(",").append(resource);
+ }
+ }
+ String resources = buf.toString();
+ setInitParam(servlet, ResteasyContextParameters.RESTEASY_RESOURCES, resources);
+ }
+ if (!resteasy.getProviderClasses().isEmpty())
+ {
+ StringBuffer buf = null;
+ for (String provider : resteasy.getProviderClasses())
+ {
+ if (buf == null)
+ {
+ buf = new StringBuffer();
+ buf.append(provider);
+ }
+ else
+ {
+ buf.append(",").append(provider);
+ }
+ }
+ setInitParam(servlet, ResteasyContextParameters.RESTEASY_PROVIDERS, buf.toString());
+ }
+ ServletMappingMetaData mapping = new ServletMappingMetaData();
+ mapping.setServletName("Resteasy");
+ List<String> patterns = new ArrayList<String>();
+ patterns.add("/*");
+ mapping.setUrlPatterns(patterns);
+
+ webdata.getServlets().add(servlet);
+ List<ServletMappingMetaData> mappings = webdata.getServletMappings();
+ if (mappings == null)
+ {
+ mappings = new ArrayList<ServletMappingMetaData>();
+ webdata.setServletMappings(mappings);
+ }
+ mappings.add(mapping);
+ }
+
+}
\ No newline at end of file
Deleted: branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyScannerDeployer.java
===================================================================
--- trunk/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyScannerDeployer.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyScannerDeployer.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,169 +0,0 @@
-package org.jboss.resteasy.integration.deployers;
-
-import org.jboss.deployers.spi.DeploymentException;
-import org.jboss.deployers.spi.deployer.DeploymentStages;
-import org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer;
-import org.jboss.deployers.structure.spi.DeploymentUnit;
-import org.jboss.logging.Logger;
-import org.jboss.mcann.AnnotationRepository;
-import org.jboss.mcann.Element;
-import org.jboss.metadata.javaee.spec.ParamValueMetaData;
-import org.jboss.metadata.web.jboss.JBossWebMetaData;
-import org.jboss.metadata.web.spec.ServletMetaData;
-import org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher;
-import org.jboss.resteasy.plugins.server.servlet.ResteasyContextParameters;
-import org.jboss.resteasy.spi.ResteasyDeployment;
-
-import javax.ws.rs.Path;
-import javax.ws.rs.core.Application;
-import javax.ws.rs.ext.Provider;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Set;
-
-/**
- * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>
- * @version $Revision: 1 $
- */
-public class ResteasyScannerDeployer extends AbstractRealDeployer
-{
- private static final Logger LOGGER = Logger.getLogger(ResteasyScannerDeployer.class);
- public static final String JAXRS_APPLICATION_CLASS_DEPLOYMENT = ResteasyScannerDeployer.class.getName() + "-JAXRS_APPLICATION_CLASS_DEPLOYMENT";
-
- public ResteasyScannerDeployer()
- {
- super();
-
- addRequiredInput(JBossWebMetaData.class);
- addInput(AnnotationRepository.class);
- addInput(ResteasyDeployment.class);
- addOutput(JBossWebMetaData.class);
- addOutput(JAXRS_APPLICATION_CLASS_DEPLOYMENT);
- addOutput(ResteasyDeployment.class);
- setStage(DeploymentStages.PRE_REAL); // TODO -- right stage?
- }
-
- protected void internalDeploy(DeploymentUnit du) throws DeploymentException
- {
- JBossWebMetaData webdata = du.getAttachment(JBossWebMetaData.class);
- boolean applicationClassDeployed = deployApplicationClass(du, webdata);
-
- // If an Application class is present, we assume the user wants to totally control deployment
- if (applicationClassDeployed) return;
-
- scan(du, webdata);
-
- }
-
- protected boolean deployApplicationClass(DeploymentUnit du, JBossWebMetaData webdata) throws DeploymentException
- {
- ClassLoader loader = du.getClassLoader();
- for (ServletMetaData servlet : webdata.getServlets())
- {
- String servletClass = servlet.getServletClass();
- if (servletClass == null) continue;
- Class clazz = null;
- try
- {
- clazz = loader.loadClass(servletClass);
- }
- catch (ClassNotFoundException e)
- {
- throw new DeploymentException(e);
- }
- if (Application.class.isAssignableFrom(clazz))
- {
- du.addAttachment(JAXRS_APPLICATION_CLASS_DEPLOYMENT, servletClass);
- servlet.setServletClass(HttpServletDispatcher.class.getName());
- ParamValueMetaData param = new ParamValueMetaData();
- param.setParamName("javax.ws.rs.Application");
- param.setParamValue(servletClass);
- List<ParamValueMetaData> params = servlet.getInitParam();
- if (params == null)
- {
- params = new ArrayList<ParamValueMetaData>();
- servlet.setInitParam(params);
- }
- params.add(param);
- return true;
- }
- }
- return false;
-
- }
-
- protected void scan(DeploymentUnit du, JBossWebMetaData webdata)
- throws DeploymentException
- {
- boolean scanAll = true;
- boolean scanProviders = true;
- boolean scanResources = true;
-
- // check resteasy configuration flags
-
- List<ParamValueMetaData> contextParams = webdata.getContextParams();
- if (contextParams != null)
- {
- for (ParamValueMetaData param : contextParams)
- {
- if (param.getParamName().equals(ResteasyContextParameters.RESTEASY_SCAN))
- {
- scanAll = Boolean.valueOf(param.getParamValue());
- }
- else if (param.getParamName().equals(ResteasyContextParameters.RESTEASY_SCAN_PROVIDERS))
- {
- scanProviders = Boolean.valueOf(param.getParamValue());
- }
- else if (param.getParamName().equals(ResteasyContextParameters.RESTEASY_SCAN_RESOURCES))
- {
- scanResources = Boolean.valueOf(param.getParamValue());
- }
- }
- }
-
- if (scanAll == false) return;
-
- AnnotationRepository env = du.getAttachment(AnnotationRepository.class);
- if (env == null)
- {
- LOGGER.debug("Expecting AnnotationRepository class for scanning WAR for JAX-RS classes");
- return;
- }
-
- Set<Element<Path, Class<?>>> resources = null;
- Set<Element<Provider, Class<?>>> providers = null;
- if (scanResources)
- {
- resources = env.classIsAnnotatedWith(Path.class);
- }
- if (scanProviders)
- {
- providers = env.classIsAnnotatedWith(Provider.class);
- }
-
- if ((resources == null || resources.isEmpty()) && (providers == null || providers.isEmpty())) return;
-
- ResteasyDeployment resteasy = du.getAttachment(ResteasyDeployment.class);
- if (resteasy == null)
- {
- resteasy = new ResteasyDeployment();
- du.addAttachment(ResteasyDeployment.class, resteasy);
- }
-
- if (resources != null)
- {
- for (Element e : resources)
- {
- resteasy.getResourceClasses().add(e.getOwnerClassName());
- }
- }
- if (providers != null)
- {
- for (Element e : providers)
- {
- resteasy.getProviderClasses().add(e.getOwnerClassName());
- }
- }
- }
-
-}
Copied: branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyScannerDeployer.java (from rev 99666, trunk/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyScannerDeployer.java)
===================================================================
--- branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyScannerDeployer.java (rev 0)
+++ branches/vfs3-int/resteasy-int/jar/src/main/java/org/jboss/resteasy/integration/deployers/ResteasyScannerDeployer.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,169 @@
+package org.jboss.resteasy.integration.deployers;
+
+import org.jboss.deployers.spi.DeploymentException;
+import org.jboss.deployers.spi.deployer.DeploymentStages;
+import org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer;
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+import org.jboss.logging.Logger;
+import org.jboss.mcann.AnnotationRepository;
+import org.jboss.mcann.Element;
+import org.jboss.metadata.javaee.spec.ParamValueMetaData;
+import org.jboss.metadata.web.jboss.JBossWebMetaData;
+import org.jboss.metadata.web.spec.ServletMetaData;
+import org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher;
+import org.jboss.resteasy.plugins.server.servlet.ResteasyContextParameters;
+import org.jboss.resteasy.spi.ResteasyDeployment;
+
+import javax.ws.rs.Path;
+import javax.ws.rs.core.Application;
+import javax.ws.rs.ext.Provider;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+/**
+ * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>
+ * @version $Revision: 1 $
+ */
+public class ResteasyScannerDeployer extends AbstractRealDeployer
+{
+ private static final Logger LOGGER = Logger.getLogger(ResteasyScannerDeployer.class);
+ public static final String JAXRS_APPLICATION_CLASS_DEPLOYMENT = ResteasyScannerDeployer.class.getName() + "-JAXRS_APPLICATION_CLASS_DEPLOYMENT";
+
+ public ResteasyScannerDeployer()
+ {
+ super();
+
+ addRequiredInput(JBossWebMetaData.class);
+ addInput(AnnotationRepository.class);
+ addInput(ResteasyDeployment.class);
+ addOutput(JBossWebMetaData.class);
+ addOutput(JAXRS_APPLICATION_CLASS_DEPLOYMENT);
+ addOutput(ResteasyDeployment.class);
+ setStage(DeploymentStages.PRE_REAL); // TODO -- right stage?
+ }
+
+ protected void internalDeploy(DeploymentUnit du) throws DeploymentException
+ {
+ JBossWebMetaData webdata = du.getAttachment(JBossWebMetaData.class);
+ boolean applicationClassDeployed = deployApplicationClass(du, webdata);
+
+ // If an Application class is present, we assume the user wants to totally control deployment
+ if (applicationClassDeployed) return;
+
+ scan(du, webdata);
+
+ }
+
+ protected boolean deployApplicationClass(DeploymentUnit du, JBossWebMetaData webdata) throws DeploymentException
+ {
+ ClassLoader loader = du.getClassLoader();
+ for (ServletMetaData servlet : webdata.getServlets())
+ {
+ String servletClass = servlet.getServletClass();
+ if (servletClass == null) continue;
+ Class clazz = null;
+ try
+ {
+ clazz = loader.loadClass(servletClass);
+ }
+ catch (ClassNotFoundException e)
+ {
+ throw new DeploymentException(e);
+ }
+ if (Application.class.isAssignableFrom(clazz))
+ {
+ du.addAttachment(JAXRS_APPLICATION_CLASS_DEPLOYMENT, servletClass);
+ servlet.setServletClass(HttpServletDispatcher.class.getName());
+ ParamValueMetaData param = new ParamValueMetaData();
+ param.setParamName("javax.ws.rs.Application");
+ param.setParamValue(servletClass);
+ List<ParamValueMetaData> params = servlet.getInitParam();
+ if (params == null)
+ {
+ params = new ArrayList<ParamValueMetaData>();
+ servlet.setInitParam(params);
+ }
+ params.add(param);
+ return true;
+ }
+ }
+ return false;
+
+ }
+
+ protected void scan(DeploymentUnit du, JBossWebMetaData webdata)
+ throws DeploymentException
+ {
+ boolean scanAll = true;
+ boolean scanProviders = true;
+ boolean scanResources = true;
+
+ // check resteasy configuration flags
+
+ List<ParamValueMetaData> contextParams = webdata.getContextParams();
+ if (contextParams != null)
+ {
+ for (ParamValueMetaData param : contextParams)
+ {
+ if (param.getParamName().equals(ResteasyContextParameters.RESTEASY_SCAN))
+ {
+ scanAll = Boolean.valueOf(param.getParamValue());
+ }
+ else if (param.getParamName().equals(ResteasyContextParameters.RESTEASY_SCAN_PROVIDERS))
+ {
+ scanProviders = Boolean.valueOf(param.getParamValue());
+ }
+ else if (param.getParamName().equals(ResteasyContextParameters.RESTEASY_SCAN_RESOURCES))
+ {
+ scanResources = Boolean.valueOf(param.getParamValue());
+ }
+ }
+ }
+
+ if (scanAll == false) return;
+
+ AnnotationRepository env = du.getAttachment(AnnotationRepository.class);
+ if (env == null)
+ {
+ LOGGER.debug("Expecting AnnotationRepository class for scanning WAR for JAX-RS classes");
+ return;
+ }
+
+ Set<Element<Path, Class<?>>> resources = null;
+ Set<Element<Provider, Class<?>>> providers = null;
+ if (scanResources)
+ {
+ resources = env.classIsAnnotatedWith(Path.class);
+ }
+ if (scanProviders)
+ {
+ providers = env.classIsAnnotatedWith(Provider.class);
+ }
+
+ if ((resources == null || resources.isEmpty()) && (providers == null || providers.isEmpty())) return;
+
+ ResteasyDeployment resteasy = du.getAttachment(ResteasyDeployment.class);
+ if (resteasy == null)
+ {
+ resteasy = new ResteasyDeployment();
+ du.addAttachment(ResteasyDeployment.class, resteasy);
+ }
+
+ if (resources != null)
+ {
+ for (Element e : resources)
+ {
+ resteasy.getResourceClasses().add(e.getOwnerClassName());
+ }
+ }
+ if (providers != null)
+ {
+ for (Element e : providers)
+ {
+ resteasy.getProviderClasses().add(e.getOwnerClassName());
+ }
+ }
+ }
+
+}
Copied: branches/vfs3-int/resteasy-int/jar/src/main/resources (from rev 99666, trunk/resteasy-int/jar/src/main/resources)
Deleted: branches/vfs3-int/resteasy-int/pom.xml
===================================================================
--- trunk/resteasy-int/pom.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,19 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-parent</artifactId>
- <version>6.0.0-SNAPSHOT</version>
- </parent>
- <name>Resteasy JBoss AS Integration</name>
- <modelVersion>4.0.0</modelVersion>
-
- <groupId>org.jboss.resteasy</groupId>
- <artifactId>resteasy-int-pom</artifactId>
- <packaging>pom</packaging>
-
- <modules>
- <module>jar</module>
- <module>zip</module>
- </modules>
-</project>
Copied: branches/vfs3-int/resteasy-int/pom.xml (from rev 99666, trunk/resteasy-int/pom.xml)
===================================================================
--- branches/vfs3-int/resteasy-int/pom.xml (rev 0)
+++ branches/vfs3-int/resteasy-int/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,19 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-parent</artifactId>
+ <version>6.0.0-SNAPSHOT</version>
+ </parent>
+ <name>Resteasy JBoss AS Integration</name>
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.jboss.resteasy</groupId>
+ <artifactId>resteasy-int-pom</artifactId>
+ <packaging>pom</packaging>
+
+ <modules>
+ <module>jar</module>
+ <module>zip</module>
+ </modules>
+</project>
Copied: branches/vfs3-int/resteasy-int/test (from rev 99666, trunk/resteasy-int/test)
Copied: branches/vfs3-int/resteasy-int/test/application-war (from rev 99666, trunk/resteasy-int/test/application-war)
Deleted: branches/vfs3-int/resteasy-int/test/application-war/pom.xml
===================================================================
--- trunk/resteasy-int/test/application-war/pom.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/application-war/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,96 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-parent</artifactId>
- <version>6.0.0-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.jbossas.resteasy.test</groupId>
- <artifactId>application-config-test</artifactId>
- <packaging>war</packaging>
- <name>Basic Integration Test</name>
- <url>http://maven.apache.org</url>
- <dependencies>
- <dependency>
- <groupId>org.jboss.resteasy</groupId>
- <artifactId>resteasy-jaxrs</artifactId>
- <version>1.2.1.GA</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>javax.ejb</groupId>
- <artifactId>ejb-api</artifactId>
- <version>3.0</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.1</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
- <build>
- <finalName>application-config-test</finalName>
- <plugins>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>jboss-maven-plugin</artifactId>
- <version>1.3.1</version>
- <configuration>
- <jbossHome>${jboss.home}</jbossHome>
- </configuration>
- <executions>
- <execution>
- <id>jboss-deploy</id>
- <phase>pre-integration-test</phase>
- <goals>
- <goal>deploy</goal>
- </goals>
- <configuration>
- <fileName>${basedir}/target/application-config-test.war</fileName>
- </configuration>
- </execution>
- <execution>
- <id>jboss-undeploy</id>
- <phase>post-integration-test</phase>
- <goals>
- <goal>undeploy</goal>
- </goals>
- <configuration>
- <fileName>${basedir}/target/application-config-test.war</fileName>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- <executions>
- <execution>
- <id>surefire-it</id>
- <phase>integration-test</phase>
- <goals>
- <goal>test</goal>
- </goals>
- <configuration>
- <skip>false</skip>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <source>1.5</source>
- <target>1.5</target>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
Copied: branches/vfs3-int/resteasy-int/test/application-war/pom.xml (from rev 99666, trunk/resteasy-int/test/application-war/pom.xml)
===================================================================
--- branches/vfs3-int/resteasy-int/test/application-war/pom.xml (rev 0)
+++ branches/vfs3-int/resteasy-int/test/application-war/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,96 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-parent</artifactId>
+ <version>6.0.0-SNAPSHOT</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.jbossas.resteasy.test</groupId>
+ <artifactId>application-config-test</artifactId>
+ <packaging>war</packaging>
+ <name>Basic Integration Test</name>
+ <url>http://maven.apache.org</url>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.resteasy</groupId>
+ <artifactId>resteasy-jaxrs</artifactId>
+ <version>1.2.1.GA</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>javax.ejb</groupId>
+ <artifactId>ejb-api</artifactId>
+ <version>3.0</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.1</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <finalName>application-config-test</finalName>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>jboss-maven-plugin</artifactId>
+ <version>1.3.1</version>
+ <configuration>
+ <jbossHome>${jboss.home}</jbossHome>
+ </configuration>
+ <executions>
+ <execution>
+ <id>jboss-deploy</id>
+ <phase>pre-integration-test</phase>
+ <goals>
+ <goal>deploy</goal>
+ </goals>
+ <configuration>
+ <fileName>${basedir}/target/application-config-test.war</fileName>
+ </configuration>
+ </execution>
+ <execution>
+ <id>jboss-undeploy</id>
+ <phase>post-integration-test</phase>
+ <goals>
+ <goal>undeploy</goal>
+ </goals>
+ <configuration>
+ <fileName>${basedir}/target/application-config-test.war</fileName>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ <executions>
+ <execution>
+ <id>surefire-it</id>
+ <phase>integration-test</phase>
+ <goals>
+ <goal>test</goal>
+ </goals>
+ <configuration>
+ <skip>false</skip>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Copied: branches/vfs3-int/resteasy-int/test/application-war/src (from rev 99666, trunk/resteasy-int/test/application-war/src)
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/main (from rev 99666, trunk/resteasy-int/test/application-war/src/main)
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/main/java (from rev 99666, trunk/resteasy-int/test/application-war/src/main/java)
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org (from rev 99666, trunk/resteasy-int/test/application-war/src/main/java/org)
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss (from rev 99666, trunk/resteasy-int/test/application-war/src/main/java/org/jboss)
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy (from rev 99666, trunk/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy)
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test (from rev 99666, trunk/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test)
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke (from rev 99666, trunk/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke)
Deleted: branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/AppConfig.java
===================================================================
--- trunk/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/AppConfig.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/AppConfig.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,58 +0,0 @@
-package org.jboss.resteasy.test.smoke;
-
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.Produces;
-import javax.ws.rs.WebApplicationException;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.ext.MessageBodyWriter;
-import javax.ws.rs.ext.Provider;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.lang.annotation.Annotation;
-import java.lang.reflect.Type;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-/**
- * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>
- * @version $Revision: 1 $
- */
-public class AppConfig
-{
- @Path("/my")
- public static class MyResource
- {
- @GET
- @Produces("text/quoted")
- public String get()
- {
- return "hello";
- }
- }
-
- @Provider
- @Produces("text/quoted")
- public static class QuotedTextWriter implements MessageBodyWriter<String>
- {
- public boolean isWriteable(Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType)
- {
- return type.equals(String.class);
- }
-
- public long getSize(String s, Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType)
- {
- return -1;
- }
-
- public void writeTo(String s, Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType, MultivaluedMap<String, Object> httpHeaders, OutputStream entityStream) throws IOException, WebApplicationException
- {
- s = "\"" + s + "\"";
- entityStream.write(s.getBytes());
- }
- }
-
-}
\ No newline at end of file
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/AppConfig.java (from rev 99666, trunk/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/AppConfig.java)
===================================================================
--- branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/AppConfig.java (rev 0)
+++ branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/AppConfig.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,58 @@
+package org.jboss.resteasy.test.smoke;
+
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.Produces;
+import javax.ws.rs.WebApplicationException;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.MultivaluedMap;
+import javax.ws.rs.ext.MessageBodyWriter;
+import javax.ws.rs.ext.Provider;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Type;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>
+ * @version $Revision: 1 $
+ */
+public class AppConfig
+{
+ @Path("/my")
+ public static class MyResource
+ {
+ @GET
+ @Produces("text/quoted")
+ public String get()
+ {
+ return "hello";
+ }
+ }
+
+ @Provider
+ @Produces("text/quoted")
+ public static class QuotedTextWriter implements MessageBodyWriter<String>
+ {
+ public boolean isWriteable(Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType)
+ {
+ return type.equals(String.class);
+ }
+
+ public long getSize(String s, Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType)
+ {
+ return -1;
+ }
+
+ public void writeTo(String s, Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType, MultivaluedMap<String, Object> httpHeaders, OutputStream entityStream) throws IOException, WebApplicationException
+ {
+ s = "\"" + s + "\"";
+ entityStream.write(s.getBytes());
+ }
+ }
+
+}
\ No newline at end of file
Deleted: branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/MyApplicationConfig.java
===================================================================
--- trunk/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/MyApplicationConfig.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/MyApplicationConfig.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,46 +0,0 @@
-package org.jboss.resteasy.test.smoke;
-
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.WebApplicationException;
-import javax.ws.rs.core.Application;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.ext.MessageBodyWriter;
-import javax.ws.rs.ext.Provider;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.lang.annotation.Annotation;
-import java.lang.reflect.Type;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-/**
- * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>
- * @version $Revision: 1 $
- */
-public class MyApplicationConfig extends Application
-{
- private Set<Class<?>> classes = new HashSet<Class<?>>();
- private Set<Object> singletons = new HashSet<Object>();
-
- public MyApplicationConfig()
- {
- classes.add(AppConfig.MyResource.class);
- singletons.add(new AppConfig.QuotedTextWriter());
- }
-
- public Set<Class<?>> getClasses()
- {
- return classes;
- }
-
- @Override
- public Set<Object> getSingletons()
- {
- return singletons;
- }
-
-}
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/MyApplicationConfig.java (from rev 99666, trunk/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/MyApplicationConfig.java)
===================================================================
--- branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/MyApplicationConfig.java (rev 0)
+++ branches/vfs3-int/resteasy-int/test/application-war/src/main/java/org/jboss/resteasy/test/smoke/MyApplicationConfig.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,46 @@
+package org.jboss.resteasy.test.smoke;
+
+import javax.ws.rs.GET;
+import javax.ws.rs.Path;
+import javax.ws.rs.WebApplicationException;
+import javax.ws.rs.core.Application;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.MultivaluedMap;
+import javax.ws.rs.ext.MessageBodyWriter;
+import javax.ws.rs.ext.Provider;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Type;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>
+ * @version $Revision: 1 $
+ */
+public class MyApplicationConfig extends Application
+{
+ private Set<Class<?>> classes = new HashSet<Class<?>>();
+ private Set<Object> singletons = new HashSet<Object>();
+
+ public MyApplicationConfig()
+ {
+ classes.add(AppConfig.MyResource.class);
+ singletons.add(new AppConfig.QuotedTextWriter());
+ }
+
+ public Set<Class<?>> getClasses()
+ {
+ return classes;
+ }
+
+ @Override
+ public Set<Object> getSingletons()
+ {
+ return singletons;
+ }
+
+}
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/main/resources (from rev 99666, trunk/resteasy-int/test/application-war/src/main/resources)
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp (from rev 99666, trunk/resteasy-int/test/application-war/src/main/webapp)
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/WEB-INF (from rev 99666, trunk/resteasy-int/test/application-war/src/main/webapp/WEB-INF)
Deleted: branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/WEB-INF/web.xml
===================================================================
--- trunk/resteasy-int/test/application-war/src/main/webapp/WEB-INF/web.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/WEB-INF/web.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,15 +0,0 @@
-<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
- <display-name>Archetype Created Web Application</display-name>
-
- <servlet>
- <servlet-name>Resteasy</servlet-name>
- <servlet-class>org.jboss.resteasy.test.smoke.MyApplicationConfig</servlet-class>
- </servlet>
-
- <servlet-mapping>
- <servlet-name>Resteasy</servlet-name>
- <url-pattern>/*</url-pattern>
- </servlet-mapping>
-</web-app>
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/WEB-INF/web.xml (from rev 99666, trunk/resteasy-int/test/application-war/src/main/webapp/WEB-INF/web.xml)
===================================================================
--- branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/WEB-INF/web.xml (rev 0)
+++ branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/WEB-INF/web.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,15 @@
+<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
+ <display-name>Archetype Created Web Application</display-name>
+
+ <servlet>
+ <servlet-name>Resteasy</servlet-name>
+ <servlet-class>org.jboss.resteasy.test.smoke.MyApplicationConfig</servlet-class>
+ </servlet>
+
+ <servlet-mapping>
+ <servlet-name>Resteasy</servlet-name>
+ <url-pattern>/*</url-pattern>
+ </servlet-mapping>
+</web-app>
Deleted: branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/index.jsp
===================================================================
--- trunk/resteasy-int/test/application-war/src/main/webapp/index.jsp 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/index.jsp 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,5 +0,0 @@
-<html>
-<body>
-<h2>Hello World!</h2>
-</body>
-</html>
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/index.jsp (from rev 99666, trunk/resteasy-int/test/application-war/src/main/webapp/index.jsp)
===================================================================
--- branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/index.jsp (rev 0)
+++ branches/vfs3-int/resteasy-int/test/application-war/src/main/webapp/index.jsp 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,5 @@
+<html>
+<body>
+<h2>Hello World!</h2>
+</body>
+</html>
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/test (from rev 99666, trunk/resteasy-int/test/application-war/src/test)
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/test/java (from rev 99666, trunk/resteasy-int/test/application-war/src/test/java)
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org (from rev 99666, trunk/resteasy-int/test/application-war/src/test/java/org)
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss (from rev 99666, trunk/resteasy-int/test/application-war/src/test/java/org/jboss)
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy (from rev 99666, trunk/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy)
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test (from rev 99666, trunk/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test)
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test/jboss (from rev 99666, trunk/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test/jboss)
Deleted: branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test/jboss/AppConfigTest.java
===================================================================
--- trunk/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test/jboss/AppConfigTest.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test/jboss/AppConfigTest.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,59 +0,0 @@
-package org.jboss.resteasy.test.jboss;
-
-import org.junit.BeforeClass;
-import org.junit.AfterClass;
-import org.junit.Assert;
-import org.junit.Test;
-import org.jboss.resteasy.util.HttpResponseCodes;
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.methods.GetMethod;
-
-import javax.ws.rs.Path;
-import javax.ws.rs.GET;
-import javax.ws.rs.WebApplicationException;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.ext.Provider;
-import javax.ws.rs.ext.MessageBodyWriter;
-import java.lang.reflect.Type;
-import java.lang.annotation.Annotation;
-import java.io.OutputStream;
-import java.io.IOException;
-import java.util.Set;
-import java.util.Map;
-import java.util.HashSet;
-import java.util.HashMap;
-
-/**
- * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>
- * @version $Revision: 1 $
- */
-public class AppConfigTest
-{
- private void _test(HttpClient client, String uri, String body)
- {
- {
- GetMethod method = new GetMethod(uri);
- try
- {
- method.addRequestHeader("Accept", "text/quoted");
- int status = client.executeMethod(method);
- Assert.assertEquals(status, HttpResponseCodes.SC_OK);
- Assert.assertEquals(body, method.getResponseBodyAsString());
- }
- catch (IOException e)
- {
- throw new RuntimeException(e);
- }
- }
-
- }
-
-
- @Test
- public void testIt()
- {
- HttpClient client = new HttpClient();
- _test(client, "http://localhost:8080/application-config-test/my", "\"hello\"");
- }
-}
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test/jboss/AppConfigTest.java (from rev 99666, trunk/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test/jboss/AppConfigTest.java)
===================================================================
--- branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test/jboss/AppConfigTest.java (rev 0)
+++ branches/vfs3-int/resteasy-int/test/application-war/src/test/java/org/jboss/resteasy/test/jboss/AppConfigTest.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,59 @@
+package org.jboss.resteasy.test.jboss;
+
+import org.junit.BeforeClass;
+import org.junit.AfterClass;
+import org.junit.Assert;
+import org.junit.Test;
+import org.jboss.resteasy.util.HttpResponseCodes;
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.methods.GetMethod;
+
+import javax.ws.rs.Path;
+import javax.ws.rs.GET;
+import javax.ws.rs.WebApplicationException;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.MultivaluedMap;
+import javax.ws.rs.ext.Provider;
+import javax.ws.rs.ext.MessageBodyWriter;
+import java.lang.reflect.Type;
+import java.lang.annotation.Annotation;
+import java.io.OutputStream;
+import java.io.IOException;
+import java.util.Set;
+import java.util.Map;
+import java.util.HashSet;
+import java.util.HashMap;
+
+/**
+ * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>
+ * @version $Revision: 1 $
+ */
+public class AppConfigTest
+{
+ private void _test(HttpClient client, String uri, String body)
+ {
+ {
+ GetMethod method = new GetMethod(uri);
+ try
+ {
+ method.addRequestHeader("Accept", "text/quoted");
+ int status = client.executeMethod(method);
+ Assert.assertEquals(status, HttpResponseCodes.SC_OK);
+ Assert.assertEquals(body, method.getResponseBodyAsString());
+ }
+ catch (IOException e)
+ {
+ throw new RuntimeException(e);
+ }
+ }
+
+ }
+
+
+ @Test
+ public void testIt()
+ {
+ HttpClient client = new HttpClient();
+ _test(client, "http://localhost:8080/application-config-test/my", "\"hello\"");
+ }
+}
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/test/resources (from rev 99666, trunk/resteasy-int/test/application-war/src/test/resources)
Deleted: branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/jndi.properties
===================================================================
--- trunk/resteasy-int/test/application-war/src/test/resources/jndi.properties 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/jndi.properties 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,3 +0,0 @@
-java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
-java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
-java.naming.provider.url=jnp://localhost:1099
\ No newline at end of file
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/jndi.properties (from rev 99666, trunk/resteasy-int/test/application-war/src/test/resources/jndi.properties)
===================================================================
--- branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/jndi.properties (rev 0)
+++ branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/jndi.properties 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,3 @@
+java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
+java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
+java.naming.provider.url=jnp://localhost:1099
\ No newline at end of file
Deleted: branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/log4j.xml
===================================================================
--- trunk/resteasy-int/test/application-war/src/test/resources/log4j.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/log4j.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,68 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
-
-<!-- ===================================================================== -->
-<!-- -->
-<!-- Log4j Configuration -->
-<!-- -->
-<!-- ===================================================================== -->
-
-<!-- $Id: log4j.xml 64736 2007-08-21 15:49:48Z anil.saldhana at jboss.com $ -->
-
-<!--
- | For more configuration infromation and examples see the Jakarta Log4j
- | owebsite: http://jakarta.apache.org/log4j
- -->
-
-<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
-
- <!-- ================================= -->
- <!-- Preserve messages in a local file -->
- <!-- ================================= -->
-
- <!-- A time/date based rolling appender -->
- <appender name="FILE" class="org.jboss.logging.appender.DailyRollingFileAppender">
- <param name="File" value="${build.testlog}/test.log"/>
- <param name="Append" value="true"/>
-
- <!-- Rollover at midnight each day -->
- <param name="DatePattern" value="'.'yyyy-MM-dd"/>
-
- <!-- Rollover at the top of each hour
- <param name="DatePattern" value="'.'yyyy-MM-dd-HH"/>
- -->
-
- <layout class="org.apache.log4j.PatternLayout">
- <!-- The default pattern: Date Priority [Category] Message\n -->
- <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/>
-
- <!-- The full pattern: Date MS Priority [Category] (Thread:NDC) Message\n
- <param name="ConversionPattern" value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
- -->
- </layout>
- </appender>
-
- <!-- ============================== -->
- <!-- Append messages to the console -->
- <!-- ============================== -->
-
- <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
- <param name="Threshold" value="DEBUG"/>
- <param name="Target" value="System.out"/>
-
- <layout class="org.apache.log4j.PatternLayout">
- <!-- The default pattern: Date Priority [Category] Message\n -->
- <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n"/>
- </layout>
- </appender>
-
-
- <!-- ======================= -->
- <!-- Setup the Root category -->
- <!-- ======================= -->
-
- <root>
- <appender-ref ref="CONSOLE"/>
- </root>
-
-</log4j:configuration>
Copied: branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/log4j.xml (from rev 99666, trunk/resteasy-int/test/application-war/src/test/resources/log4j.xml)
===================================================================
--- branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/log4j.xml (rev 0)
+++ branches/vfs3-int/resteasy-int/test/application-war/src/test/resources/log4j.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
+
+<!-- ===================================================================== -->
+<!-- -->
+<!-- Log4j Configuration -->
+<!-- -->
+<!-- ===================================================================== -->
+
+<!-- $Id: log4j.xml 64736 2007-08-21 15:49:48Z anil.saldhana at jboss.com $ -->
+
+<!--
+ | For more configuration infromation and examples see the Jakarta Log4j
+ | owebsite: http://jakarta.apache.org/log4j
+ -->
+
+<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
+
+ <!-- ================================= -->
+ <!-- Preserve messages in a local file -->
+ <!-- ================================= -->
+
+ <!-- A time/date based rolling appender -->
+ <appender name="FILE" class="org.jboss.logging.appender.DailyRollingFileAppender">
+ <param name="File" value="${build.testlog}/test.log"/>
+ <param name="Append" value="true"/>
+
+ <!-- Rollover at midnight each day -->
+ <param name="DatePattern" value="'.'yyyy-MM-dd"/>
+
+ <!-- Rollover at the top of each hour
+ <param name="DatePattern" value="'.'yyyy-MM-dd-HH"/>
+ -->
+
+ <layout class="org.apache.log4j.PatternLayout">
+ <!-- The default pattern: Date Priority [Category] Message\n -->
+ <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/>
+
+ <!-- The full pattern: Date MS Priority [Category] (Thread:NDC) Message\n
+ <param name="ConversionPattern" value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
+ -->
+ </layout>
+ </appender>
+
+ <!-- ============================== -->
+ <!-- Append messages to the console -->
+ <!-- ============================== -->
+
+ <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
+ <param name="Threshold" value="DEBUG"/>
+ <param name="Target" value="System.out"/>
+
+ <layout class="org.apache.log4j.PatternLayout">
+ <!-- The default pattern: Date Priority [Category] Message\n -->
+ <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n"/>
+ </layout>
+ </appender>
+
+
+ <!-- ======================= -->
+ <!-- Setup the Root category -->
+ <!-- ======================= -->
+
+ <root>
+ <appender-ref ref="CONSOLE"/>
+ </root>
+
+</log4j:configuration>
Deleted: branches/vfs3-int/resteasy-int/test/pom.xml
===================================================================
--- trunk/resteasy-int/test/pom.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,19 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-parent</artifactId>
- <version>6.0.0-SNAPSHOT</version>
- </parent>
- <name>Resteasy JBoss AS Integration Testing</name>
- <modelVersion>4.0.0</modelVersion>
-
- <groupId>org.jboss.resteasy</groupId>
- <artifactId>resteasy-int-testing-pom</artifactId>
- <packaging>pom</packaging>
-
- <modules>
- <module>application-war</module>
- <module>scanned-war</module>
- </modules>
-</project>
Copied: branches/vfs3-int/resteasy-int/test/pom.xml (from rev 99666, trunk/resteasy-int/test/pom.xml)
===================================================================
--- branches/vfs3-int/resteasy-int/test/pom.xml (rev 0)
+++ branches/vfs3-int/resteasy-int/test/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,19 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-parent</artifactId>
+ <version>6.0.0-SNAPSHOT</version>
+ </parent>
+ <name>Resteasy JBoss AS Integration Testing</name>
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.jboss.resteasy</groupId>
+ <artifactId>resteasy-int-testing-pom</artifactId>
+ <packaging>pom</packaging>
+
+ <modules>
+ <module>application-war</module>
+ <module>scanned-war</module>
+ </modules>
+</project>
Copied: branches/vfs3-int/resteasy-int/test/scanned-war (from rev 99666, trunk/resteasy-int/test/scanned-war)
Deleted: branches/vfs3-int/resteasy-int/test/scanned-war/pom.xml
===================================================================
--- trunk/resteasy-int/test/scanned-war/pom.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,90 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <parent>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-parent</artifactId>
- <version>6.0.0-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.jbossas.resteasy.test</groupId>
- <artifactId>scanned-test</artifactId>
- <packaging>war</packaging>
- <name>Basic Integration Test</name>
- <url>http://maven.apache.org</url>
- <dependencies>
- <dependency>
- <groupId>org.jboss.resteasy</groupId>
- <artifactId>resteasy-jaxrs</artifactId>
- <version>1.2.1.GA</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.1</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
- <build>
- <finalName>scanned-test</finalName>
- <plugins>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>jboss-maven-plugin</artifactId>
- <version>1.3.1</version>
- <configuration>
- <jbossHome>${jboss.home}</jbossHome>
- </configuration>
- <executions>
- <execution>
- <id>jboss-deploy</id>
- <phase>pre-integration-test</phase>
- <goals>
- <goal>deploy</goal>
- </goals>
- <configuration>
- <fileName>${basedir}/target/scanned-test.war</fileName>
- </configuration>
- </execution>
- <execution>
- <id>jboss-undeploy</id>
- <phase>post-integration-test</phase>
- <goals>
- <goal>undeploy</goal>
- </goals>
- <configuration>
- <fileName>${basedir}/target/scanned-test.war</fileName>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <skip>true</skip>
- </configuration>
- <executions>
- <execution>
- <id>surefire-it</id>
- <phase>integration-test</phase>
- <goals>
- <goal>test</goal>
- </goals>
- <configuration>
- <skip>false</skip>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <source>1.5</source>
- <target>1.5</target>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/pom.xml (from rev 99666, trunk/resteasy-int/test/scanned-war/pom.xml)
===================================================================
--- branches/vfs3-int/resteasy-int/test/scanned-war/pom.xml (rev 0)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,90 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <parent>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-parent</artifactId>
+ <version>6.0.0-SNAPSHOT</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.jbossas.resteasy.test</groupId>
+ <artifactId>scanned-test</artifactId>
+ <packaging>war</packaging>
+ <name>Basic Integration Test</name>
+ <url>http://maven.apache.org</url>
+ <dependencies>
+ <dependency>
+ <groupId>org.jboss.resteasy</groupId>
+ <artifactId>resteasy-jaxrs</artifactId>
+ <version>1.2.1.GA</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.1</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ <build>
+ <finalName>scanned-test</finalName>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>jboss-maven-plugin</artifactId>
+ <version>1.3.1</version>
+ <configuration>
+ <jbossHome>${jboss.home}</jbossHome>
+ </configuration>
+ <executions>
+ <execution>
+ <id>jboss-deploy</id>
+ <phase>pre-integration-test</phase>
+ <goals>
+ <goal>deploy</goal>
+ </goals>
+ <configuration>
+ <fileName>${basedir}/target/scanned-test.war</fileName>
+ </configuration>
+ </execution>
+ <execution>
+ <id>jboss-undeploy</id>
+ <phase>post-integration-test</phase>
+ <goals>
+ <goal>undeploy</goal>
+ </goals>
+ <configuration>
+ <fileName>${basedir}/target/scanned-test.war</fileName>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ <executions>
+ <execution>
+ <id>surefire-it</id>
+ <phase>integration-test</phase>
+ <goals>
+ <goal>test</goal>
+ </goals>
+ <configuration>
+ <skip>false</skip>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Deleted: branches/vfs3-int/resteasy-int/test/scanned-war/scanned-test.iml
===================================================================
--- trunk/resteasy-int/test/scanned-war/scanned-test.iml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/scanned-test.iml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<module relativePaths="true" MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
- <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_5" inherit-compiler-output="false">
- <output url="file://$MODULE_DIR$/target/classes" />
- <output-test url="file://$MODULE_DIR$/target/test-classes" />
- <exclude-output />
- <content url="file://$MODULE_DIR$">
- <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
- <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/test/resources" isTestSource="true" />
- <excludeFolder url="file://$MODULE_DIR$/target" />
- </content>
- <orderEntry type="inheritedJdk" />
- <orderEntry type="sourceFolder" forTests="false" />
- <orderEntry type="library" name="Maven: junit:junit:4.1" level="project" />
- <orderEntry type="library" name="Maven: org.jboss.test:jboss-test:1.1.4.GA" level="project" />
- <orderEntry type="library" name="Maven: org.apache.ant:ant:1.7.1" level="project" />
- <orderEntry type="library" name="Maven: org.apache.ant:ant-launcher:1.7.1" level="project" />
- <orderEntry type="library" name="Maven: org.apache.ant:ant-junit:1.7.0" level="project" />
- <orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging-spi:2.2.0.CR1" level="project" />
- <orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging-log4j:2.2.0.CR1" level="project" />
- <orderEntry type="library" name="Maven: log4j:log4j:1.2.14" level="project" />
- <orderEntry type="library" name="Maven: org.jboss:jboss-common-core:2.2.17.GA" level="project" />
- <orderEntry type="library" name="Maven: jboss.profiler.jvmti:jboss-profiler-jvmti:1.0.0.CR5" level="project" />
- <orderEntry type="library" name="Maven: org.jboss.jbossas:jboss-server-manager:1.0.2.GA" level="project" />
- <orderEntry type="library" name="Maven: org.jboss.naming:jnp-client:5.0.4.GA" level="project" />
- <orderEntry type="library" name="Maven: org.jboss.security:jbosssx-client:2.1.0.20091223" level="project" />
- <orderEntry type="library" name="Maven: org.jboss.security:jboss-security-spi:2.1.0.20091223" level="project" />
- <orderEntry type="library" name="Maven: org.jboss.resteasy:resteasy-jaxrs:1.2.1.GA" level="project" />
- <orderEntry type="library" name="Maven: org.jboss.resteasy:jaxrs-api:1.2.1.GA" level="project" />
- <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.5.6" level="project" />
- <orderEntry type="library" name="Maven: org.slf4j:slf4j-simple:1.5.8" level="project" />
- <orderEntry type="library" name="Maven: org.slf4j:jcl-over-slf4j:1.5.6" level="project" />
- <orderEntry type="library" name="Maven: org.scannotation:scannotation:1.0.2" level="project" />
- <orderEntry type="library" name="Maven: javassist:javassist:3.11.0.GA" level="project" />
- <orderEntry type="library" name="Maven: javax.annotation:jsr250-api:1.0" level="project" />
- <orderEntry type="library" name="Maven: javax.activation:activation:1.1" level="project" />
- <orderEntry type="library" name="Maven: commons-httpclient:commons-httpclient:3.1" level="project" />
- <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.3" level="project" />
- <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.0" level="project" />
- <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.0.1" level="project" />
- <orderEntry type="library" name="Maven: net.jcip:jcip-annotations:1.0" level="project" />
- </component>
-</module>
-
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/scanned-test.iml (from rev 99666, trunk/resteasy-int/test/scanned-war/scanned-test.iml)
===================================================================
--- branches/vfs3-int/resteasy-int/test/scanned-war/scanned-test.iml (rev 0)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/scanned-test.iml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module relativePaths="true" MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
+ <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_5" inherit-compiler-output="false">
+ <output url="file://$MODULE_DIR$/target/classes" />
+ <output-test url="file://$MODULE_DIR$/target/test-classes" />
+ <exclude-output />
+ <content url="file://$MODULE_DIR$">
+ <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
+ <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
+ <sourceFolder url="file://$MODULE_DIR$/src/test/resources" isTestSource="true" />
+ <excludeFolder url="file://$MODULE_DIR$/target" />
+ </content>
+ <orderEntry type="inheritedJdk" />
+ <orderEntry type="sourceFolder" forTests="false" />
+ <orderEntry type="library" name="Maven: junit:junit:4.1" level="project" />
+ <orderEntry type="library" name="Maven: org.jboss.test:jboss-test:1.1.4.GA" level="project" />
+ <orderEntry type="library" name="Maven: org.apache.ant:ant:1.7.1" level="project" />
+ <orderEntry type="library" name="Maven: org.apache.ant:ant-launcher:1.7.1" level="project" />
+ <orderEntry type="library" name="Maven: org.apache.ant:ant-junit:1.7.0" level="project" />
+ <orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging-spi:2.2.0.CR1" level="project" />
+ <orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging-log4j:2.2.0.CR1" level="project" />
+ <orderEntry type="library" name="Maven: log4j:log4j:1.2.14" level="project" />
+ <orderEntry type="library" name="Maven: org.jboss:jboss-common-core:2.2.17.GA" level="project" />
+ <orderEntry type="library" name="Maven: jboss.profiler.jvmti:jboss-profiler-jvmti:1.0.0.CR5" level="project" />
+ <orderEntry type="library" name="Maven: org.jboss.jbossas:jboss-server-manager:1.0.2.GA" level="project" />
+ <orderEntry type="library" name="Maven: org.jboss.naming:jnp-client:5.0.4.GA" level="project" />
+ <orderEntry type="library" name="Maven: org.jboss.security:jbosssx-client:2.1.0.20091223" level="project" />
+ <orderEntry type="library" name="Maven: org.jboss.security:jboss-security-spi:2.1.0.20091223" level="project" />
+ <orderEntry type="library" name="Maven: org.jboss.resteasy:resteasy-jaxrs:1.2.1.GA" level="project" />
+ <orderEntry type="library" name="Maven: org.jboss.resteasy:jaxrs-api:1.2.1.GA" level="project" />
+ <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.5.6" level="project" />
+ <orderEntry type="library" name="Maven: org.slf4j:slf4j-simple:1.5.8" level="project" />
+ <orderEntry type="library" name="Maven: org.slf4j:jcl-over-slf4j:1.5.6" level="project" />
+ <orderEntry type="library" name="Maven: org.scannotation:scannotation:1.0.2" level="project" />
+ <orderEntry type="library" name="Maven: javassist:javassist:3.11.0.GA" level="project" />
+ <orderEntry type="library" name="Maven: javax.annotation:jsr250-api:1.0" level="project" />
+ <orderEntry type="library" name="Maven: javax.activation:activation:1.1" level="project" />
+ <orderEntry type="library" name="Maven: commons-httpclient:commons-httpclient:3.1" level="project" />
+ <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.3" level="project" />
+ <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.0" level="project" />
+ <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.0.1" level="project" />
+ <orderEntry type="library" name="Maven: net.jcip:jcip-annotations:1.0" level="project" />
+ </component>
+</module>
+
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src (from rev 99666, trunk/resteasy-int/test/scanned-war/src)
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/main (from rev 99666, trunk/resteasy-int/test/scanned-war/src/main)
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java (from rev 99666, trunk/resteasy-int/test/scanned-war/src/main/java)
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org (from rev 99666, trunk/resteasy-int/test/scanned-war/src/main/java/org)
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss (from rev 99666, trunk/resteasy-int/test/scanned-war/src/main/java/org/jboss)
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy (from rev 99666, trunk/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy)
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy/test (from rev 99666, trunk/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy/test)
Deleted: branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy/test/MyResource.java
===================================================================
--- trunk/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy/test/MyResource.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy/test/MyResource.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,20 +0,0 @@
-package org.jboss.resteasy.test;
-
-import javax.ws.rs.Path;
-import javax.ws.rs.GET;
-import javax.ws.rs.Produces;
-
-/**
- * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>
- * @version $Revision: 1 $
- */
- at Path("/scan")
-public class MyResource
-{
- @GET
- @Produces("text/plain")
- public String get()
- {
- return "hello world";
- }
-}
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy/test/MyResource.java (from rev 99666, trunk/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy/test/MyResource.java)
===================================================================
--- branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy/test/MyResource.java (rev 0)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/src/main/java/org/jboss/resteasy/test/MyResource.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,20 @@
+package org.jboss.resteasy.test;
+
+import javax.ws.rs.Path;
+import javax.ws.rs.GET;
+import javax.ws.rs.Produces;
+
+/**
+ * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>
+ * @version $Revision: 1 $
+ */
+ at Path("/scan")
+public class MyResource
+{
+ @GET
+ @Produces("text/plain")
+ public String get()
+ {
+ return "hello world";
+ }
+}
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp (from rev 99666, trunk/resteasy-int/test/scanned-war/src/main/webapp)
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/WEB-INF (from rev 99666, trunk/resteasy-int/test/scanned-war/src/main/webapp/WEB-INF)
Deleted: branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/WEB-INF/web.xml
===================================================================
--- trunk/resteasy-int/test/scanned-war/src/main/webapp/WEB-INF/web.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/WEB-INF/web.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,4 +0,0 @@
-<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
-</web-app>
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/WEB-INF/web.xml (from rev 99666, trunk/resteasy-int/test/scanned-war/src/main/webapp/WEB-INF/web.xml)
===================================================================
--- branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/WEB-INF/web.xml (rev 0)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/WEB-INF/web.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,4 @@
+<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
+</web-app>
Deleted: branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/index.jsp
===================================================================
--- trunk/resteasy-int/test/scanned-war/src/main/webapp/index.jsp 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/index.jsp 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,5 +0,0 @@
-<html>
-<body>
-<h2>Hello World!</h2>
-</body>
-</html>
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/index.jsp (from rev 99666, trunk/resteasy-int/test/scanned-war/src/main/webapp/index.jsp)
===================================================================
--- branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/index.jsp (rev 0)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/src/main/webapp/index.jsp 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,5 @@
+<html>
+<body>
+<h2>Hello World!</h2>
+</body>
+</html>
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/test (from rev 99666, trunk/resteasy-int/test/scanned-war/src/test)
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java (from rev 99666, trunk/resteasy-int/test/scanned-war/src/test/java)
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org (from rev 99666, trunk/resteasy-int/test/scanned-war/src/test/java/org)
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss (from rev 99666, trunk/resteasy-int/test/scanned-war/src/test/java/org/jboss)
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy (from rev 99666, trunk/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy)
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test (from rev 99666, trunk/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test)
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test/jboss (from rev 99666, trunk/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test/jboss)
Deleted: branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test/jboss/ScanningTest.java
===================================================================
--- trunk/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test/jboss/ScanningTest.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test/jboss/ScanningTest.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,23 +0,0 @@
-package org.jboss.resteasy.test.jboss;
-
-import org.jboss.resteasy.client.ClientRequest;
-import org.jboss.resteasy.client.ClientResponse;
-import org.junit.Test;
-import org.junit.Assert;
-
-/**
- * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>
- * @version $Revision: 1 $
- */
-public class ScanningTest
-{
- @Test
- public void testIt() throws Exception
- {
- ClientRequest request = new ClientRequest("http://localhost:8080/scanned-test/scan");
- ClientResponse<String> response = request.get(String.class);
- Assert.assertEquals(200, response.getStatus());
- Assert.assertEquals("hello world", response.getEntity());
-
- }
-}
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test/jboss/ScanningTest.java (from rev 99666, trunk/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test/jboss/ScanningTest.java)
===================================================================
--- branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test/jboss/ScanningTest.java (rev 0)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/src/test/java/org/jboss/resteasy/test/jboss/ScanningTest.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,23 @@
+package org.jboss.resteasy.test.jboss;
+
+import org.jboss.resteasy.client.ClientRequest;
+import org.jboss.resteasy.client.ClientResponse;
+import org.junit.Test;
+import org.junit.Assert;
+
+/**
+ * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>
+ * @version $Revision: 1 $
+ */
+public class ScanningTest
+{
+ @Test
+ public void testIt() throws Exception
+ {
+ ClientRequest request = new ClientRequest("http://localhost:8080/scanned-test/scan");
+ ClientResponse<String> response = request.get(String.class);
+ Assert.assertEquals(200, response.getStatus());
+ Assert.assertEquals("hello world", response.getEntity());
+
+ }
+}
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources (from rev 99666, trunk/resteasy-int/test/scanned-war/src/test/resources)
Deleted: branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/jndi.properties
===================================================================
--- trunk/resteasy-int/test/scanned-war/src/test/resources/jndi.properties 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/jndi.properties 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,3 +0,0 @@
-java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
-java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
-java.naming.provider.url=jnp://localhost:1099
\ No newline at end of file
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/jndi.properties (from rev 99666, trunk/resteasy-int/test/scanned-war/src/test/resources/jndi.properties)
===================================================================
--- branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/jndi.properties (rev 0)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/jndi.properties 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,3 @@
+java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
+java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
+java.naming.provider.url=jnp://localhost:1099
\ No newline at end of file
Deleted: branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/log4j.xml
===================================================================
--- trunk/resteasy-int/test/scanned-war/src/test/resources/log4j.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/log4j.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,68 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
-
-<!-- ===================================================================== -->
-<!-- -->
-<!-- Log4j Configuration -->
-<!-- -->
-<!-- ===================================================================== -->
-
-<!-- $Id: log4j.xml 64736 2007-08-21 15:49:48Z anil.saldhana at jboss.com $ -->
-
-<!--
- | For more configuration infromation and examples see the Jakarta Log4j
- | owebsite: http://jakarta.apache.org/log4j
- -->
-
-<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
-
- <!-- ================================= -->
- <!-- Preserve messages in a local file -->
- <!-- ================================= -->
-
- <!-- A time/date based rolling appender -->
- <appender name="FILE" class="org.jboss.logging.appender.DailyRollingFileAppender">
- <param name="File" value="${build.testlog}/test.log"/>
- <param name="Append" value="true"/>
-
- <!-- Rollover at midnight each day -->
- <param name="DatePattern" value="'.'yyyy-MM-dd"/>
-
- <!-- Rollover at the top of each hour
- <param name="DatePattern" value="'.'yyyy-MM-dd-HH"/>
- -->
-
- <layout class="org.apache.log4j.PatternLayout">
- <!-- The default pattern: Date Priority [Category] Message\n -->
- <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/>
-
- <!-- The full pattern: Date MS Priority [Category] (Thread:NDC) Message\n
- <param name="ConversionPattern" value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
- -->
- </layout>
- </appender>
-
- <!-- ============================== -->
- <!-- Append messages to the console -->
- <!-- ============================== -->
-
- <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
- <param name="Threshold" value="DEBUG"/>
- <param name="Target" value="System.out"/>
-
- <layout class="org.apache.log4j.PatternLayout">
- <!-- The default pattern: Date Priority [Category] Message\n -->
- <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n"/>
- </layout>
- </appender>
-
-
- <!-- ======================= -->
- <!-- Setup the Root category -->
- <!-- ======================= -->
-
- <root>
- <appender-ref ref="CONSOLE"/>
- </root>
-
-</log4j:configuration>
Copied: branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/log4j.xml (from rev 99666, trunk/resteasy-int/test/scanned-war/src/test/resources/log4j.xml)
===================================================================
--- branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/log4j.xml (rev 0)
+++ branches/vfs3-int/resteasy-int/test/scanned-war/src/test/resources/log4j.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
+
+<!-- ===================================================================== -->
+<!-- -->
+<!-- Log4j Configuration -->
+<!-- -->
+<!-- ===================================================================== -->
+
+<!-- $Id: log4j.xml 64736 2007-08-21 15:49:48Z anil.saldhana at jboss.com $ -->
+
+<!--
+ | For more configuration infromation and examples see the Jakarta Log4j
+ | owebsite: http://jakarta.apache.org/log4j
+ -->
+
+<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
+
+ <!-- ================================= -->
+ <!-- Preserve messages in a local file -->
+ <!-- ================================= -->
+
+ <!-- A time/date based rolling appender -->
+ <appender name="FILE" class="org.jboss.logging.appender.DailyRollingFileAppender">
+ <param name="File" value="${build.testlog}/test.log"/>
+ <param name="Append" value="true"/>
+
+ <!-- Rollover at midnight each day -->
+ <param name="DatePattern" value="'.'yyyy-MM-dd"/>
+
+ <!-- Rollover at the top of each hour
+ <param name="DatePattern" value="'.'yyyy-MM-dd-HH"/>
+ -->
+
+ <layout class="org.apache.log4j.PatternLayout">
+ <!-- The default pattern: Date Priority [Category] Message\n -->
+ <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/>
+
+ <!-- The full pattern: Date MS Priority [Category] (Thread:NDC) Message\n
+ <param name="ConversionPattern" value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
+ -->
+ </layout>
+ </appender>
+
+ <!-- ============================== -->
+ <!-- Append messages to the console -->
+ <!-- ============================== -->
+
+ <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
+ <param name="Threshold" value="DEBUG"/>
+ <param name="Target" value="System.out"/>
+
+ <layout class="org.apache.log4j.PatternLayout">
+ <!-- The default pattern: Date Priority [Category] Message\n -->
+ <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n"/>
+ </layout>
+ </appender>
+
+
+ <!-- ======================= -->
+ <!-- Setup the Root category -->
+ <!-- ======================= -->
+
+ <root>
+ <appender-ref ref="CONSOLE"/>
+ </root>
+
+</log4j:configuration>
Copied: branches/vfs3-int/resteasy-int/zip (from rev 99666, trunk/resteasy-int/zip)
Deleted: branches/vfs3-int/resteasy-int/zip/assembly.xml
===================================================================
--- trunk/resteasy-int/zip/assembly.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/zip/assembly.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,28 +0,0 @@
-<assembly>
- <id>all</id>
-
- <formats>
- <format>zip</format>
- </formats>
- <includeBaseDirectory>false</includeBaseDirectory>
-
- <fileSets>
- <fileSet>
- <directory></directory>
- <includes>
- <include>resteasy-jboss-beans.xml</include>
- </includes>
- <outputDirectory>resteasy.deployer/META-INF</outputDirectory>
- </fileSet>
- </fileSets>
- <dependencySets>
- <dependencySet>
- <unpack>false</unpack>
- <useTransitiveFiltering>true</useTransitiveFiltering>
- <includes>
- <include>org.jboss.jbossas:jboss-as-resteasy</include>
- </includes>
- <outputDirectory>resteasy.deployer</outputDirectory>
- </dependencySet>
- </dependencySets>
-</assembly>
Copied: branches/vfs3-int/resteasy-int/zip/assembly.xml (from rev 99666, trunk/resteasy-int/zip/assembly.xml)
===================================================================
--- branches/vfs3-int/resteasy-int/zip/assembly.xml (rev 0)
+++ branches/vfs3-int/resteasy-int/zip/assembly.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,28 @@
+<assembly>
+ <id>all</id>
+
+ <formats>
+ <format>zip</format>
+ </formats>
+ <includeBaseDirectory>false</includeBaseDirectory>
+
+ <fileSets>
+ <fileSet>
+ <directory></directory>
+ <includes>
+ <include>resteasy-jboss-beans.xml</include>
+ </includes>
+ <outputDirectory>resteasy.deployer/META-INF</outputDirectory>
+ </fileSet>
+ </fileSets>
+ <dependencySets>
+ <dependencySet>
+ <unpack>false</unpack>
+ <useTransitiveFiltering>true</useTransitiveFiltering>
+ <includes>
+ <include>org.jboss.jbossas:jboss-as-resteasy</include>
+ </includes>
+ <outputDirectory>resteasy.deployer</outputDirectory>
+ </dependencySet>
+ </dependencySets>
+</assembly>
Deleted: branches/vfs3-int/resteasy-int/zip/pom.xml
===================================================================
--- trunk/resteasy-int/zip/pom.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/zip/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,87 +0,0 @@
-<project>
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-parent</artifactId>
- <version>6.0.0-SNAPSHOT</version>
- </parent>
-
- <artifactId>resteasy-int-dist</artifactId>
- <packaging>pom</packaging>
- <name>RESTEasy JBoss AS Integration Distribution</name>
-
- <dependencies>
-
- <dependency>
- <groupId>org.jboss.jbossas</groupId>
- <artifactId>jboss-as-resteasy</artifactId>
- <version>${project.version}</version>
- <exclusions>
- <exclusion>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-simple</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.slf4j</groupId>
- <artifactId>jcl-over-slf4j</artifactId>
- </exclusion>
-
- <!--
- Needed for javax.annotation.security.* which is part of javaee 6 XXX
- should this dependency be <scope>provided</scope> and only used if
- detected runtime?
- -->
- <exclusion>
- <groupId>javax.annotation</groupId>
- <artifactId>jsr250-api</artifactId>
- </exclusion>
-
- </exclusions>
- </dependency>
-
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- <version>2.2-beta-2</version>
- <executions>
- <execution>
- <id>assemble</id>
- <phase>install</phase>
- <goals>
- <goal>attached</goal>
- </goals>
- <configuration>
- <descriptors>
- <descriptor>assembly.xml</descriptor>
- </descriptors>
- <outputDirectory>
- target/distribution
- </outputDirectory>
- <workDirectory>
- target/assembly/work
- </workDirectory>
- <finalName>
- resteasy-int-${project.version}
- </finalName>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-install-plugin</artifactId>
- <configuration>
- <createChecksum>true</createChecksum>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
-</project>
Copied: branches/vfs3-int/resteasy-int/zip/pom.xml (from rev 99666, trunk/resteasy-int/zip/pom.xml)
===================================================================
--- branches/vfs3-int/resteasy-int/zip/pom.xml (rev 0)
+++ branches/vfs3-int/resteasy-int/zip/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,87 @@
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-parent</artifactId>
+ <version>6.0.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>resteasy-int-dist</artifactId>
+ <packaging>pom</packaging>
+ <name>RESTEasy JBoss AS Integration Distribution</name>
+
+ <dependencies>
+
+ <dependency>
+ <groupId>org.jboss.jbossas</groupId>
+ <artifactId>jboss-as-resteasy</artifactId>
+ <version>${project.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-simple</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>jcl-over-slf4j</artifactId>
+ </exclusion>
+
+ <!--
+ Needed for javax.annotation.security.* which is part of javaee 6 XXX
+ should this dependency be <scope>provided</scope> and only used if
+ detected runtime?
+ -->
+ <exclusion>
+ <groupId>javax.annotation</groupId>
+ <artifactId>jsr250-api</artifactId>
+ </exclusion>
+
+ </exclusions>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <version>2.2-beta-2</version>
+ <executions>
+ <execution>
+ <id>assemble</id>
+ <phase>install</phase>
+ <goals>
+ <goal>attached</goal>
+ </goals>
+ <configuration>
+ <descriptors>
+ <descriptor>assembly.xml</descriptor>
+ </descriptors>
+ <outputDirectory>
+ target/distribution
+ </outputDirectory>
+ <workDirectory>
+ target/assembly/work
+ </workDirectory>
+ <finalName>
+ resteasy-int-${project.version}
+ </finalName>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-install-plugin</artifactId>
+ <configuration>
+ <createChecksum>true</createChecksum>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+</project>
Deleted: branches/vfs3-int/resteasy-int/zip/resteasy-jboss-beans.xml
===================================================================
--- trunk/resteasy-int/zip/resteasy-jboss-beans.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/resteasy-int/zip/resteasy-jboss-beans.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
- <bean name="ResteasyScannerDeployer" class="org.jboss.resteasy.integration.deployers.ResteasyScannerDeployer"/>
- <bean name="ResteasyIntegrationDeployer" class="org.jboss.resteasy.integration.deployers.ResteasyIntegrationDeployer"/>
-</deployment>
\ No newline at end of file
Copied: branches/vfs3-int/resteasy-int/zip/resteasy-jboss-beans.xml (from rev 99666, trunk/resteasy-int/zip/resteasy-jboss-beans.xml)
===================================================================
--- branches/vfs3-int/resteasy-int/zip/resteasy-jboss-beans.xml (rev 0)
+++ branches/vfs3-int/resteasy-int/zip/resteasy-jboss-beans.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+ <bean name="ResteasyScannerDeployer" class="org.jboss.resteasy.integration.deployers.ResteasyScannerDeployer"/>
+ <bean name="ResteasyIntegrationDeployer" class="org.jboss.resteasy.integration.deployers.ResteasyIntegrationDeployer"/>
+</deployment>
\ No newline at end of file
Modified: branches/vfs3-int/server/pom.xml
===================================================================
--- branches/vfs3-int/server/pom.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/server/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -252,18 +252,6 @@
</dependency>
<dependency>
- <groupId>org.jboss.ejb3</groupId>
- <artifactId>jboss-ejb3-deployers</artifactId>
- <version>1.0.0</version>
- <exclusions>
- <exclusion>
- <groupId>org.jboss.metadata</groupId>
- <artifactId>jboss-metadata</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
<groupId>org.jboss.jbossas</groupId>
<artifactId>jboss-as-deployment</artifactId>
</dependency>
@@ -402,8 +390,8 @@
</dependency>
<dependency>
- <groupId>org.jboss.ws.native</groupId>
- <artifactId>jbossws-native-saaj</artifactId>
+ <groupId>javax.xml.soap</groupId>
+ <artifactId>saaj-api</artifactId>
</dependency>
<dependency>
Modified: branches/vfs3-int/server/src/etc/conf/all/bootstrap/deployers.xml
===================================================================
--- branches/vfs3-int/server/src/etc/conf/all/bootstrap/deployers.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/server/src/etc/conf/all/bootstrap/deployers.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -232,7 +232,9 @@
<property name="mbeanServer"><inject bean="JMXKernel" property="mbeanServer"/></property>
<property name="controller"><inject bean="JMXKernel" property="serviceController"/></property>
</bean>
- <bean name="SARDeployer" class="org.jboss.system.deployers.SARDeployer"/>
+ <bean name="SARDeployer" class="org.jboss.system.deployers.SARDeployer">
+ <property name="defaultCodeBaseRoot">${jboss.server.home.url}</property>
+ </bean>
<bean name="ServiceClassLoaderDeployer" class="org.jboss.system.deployers.ServiceClassLoaderDeployer"/>
<bean name="ServiceDeploymentDeployer" class="org.jboss.system.deployers.ServiceDeploymentDeployer"/>
<bean name="ServiceDeployer" class="org.jboss.system.deployers.ServiceDeployer">
Modified: branches/vfs3-int/server/src/etc/conf/all/bootstrap/jmx.xml
===================================================================
--- branches/vfs3-int/server/src/etc/conf/all/bootstrap/jmx.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/server/src/etc/conf/all/bootstrap/jmx.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -9,9 +9,13 @@
<classloader name="jmx-classloader" xmlns="urn:jboss:classloader:1.0" export-all="NON_EMPTY" import-all="true">
<root>${jboss.lib.url}jboss-j2se.jar</root>
+ <root>${jboss.lib.url}jboss-jmx-annotations.jar</root>
<root>${jboss.lib.url}jboss-mbeans.jar</root>
+ <root>${jboss.lib.url}jboss-mbeanserver.jar</root>
<root>${jboss.lib.url}jboss-jmx.jar</root>
<root>${jboss.lib.url}jboss-system-jmx.jar</root>
+ <root>${jboss.lib.url}jboss-jmx-mc-int.jar</root>
+ <root>${jboss.lib.url}jboss-deployers-jmx.jar</root>
<root>${jboss.lib.url}dom4j.jar</root>
</classloader>
Modified: branches/vfs3-int/server/src/etc/conf/all/bootstrap/kernel.xml
===================================================================
--- branches/vfs3-int/server/src/etc/conf/all/bootstrap/kernel.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/server/src/etc/conf/all/bootstrap/kernel.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -10,6 +10,12 @@
<root>${jboss.common.lib.url}jboss.jar</root>
</classloader>
+ <bean name="KernelInstaller" class="org.jboss.kernel.KernelInstaller">
+ <constructor>
+ <parameter><inject bean="jboss.kernel:service=Kernel"/></parameter>
+ </constructor>
+ </bean>
+
<bean name="BootstrapExecutorFactory" class="org.jboss.executor.ThreadPoolExecutorFactory">
<property name="corePoolSizeBase">1</property>
<property name="corePoolSizePerCpu">0</property>
Modified: branches/vfs3-int/server/src/etc/deploy/naming-jboss-beans.xml
===================================================================
--- branches/vfs3-int/server/src/etc/deploy/naming-jboss-beans.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/server/src/etc/deploy/naming-jboss-beans.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -76,4 +76,12 @@
<property name="startNamingBean">false</property>
</bean>
+ <bean name="NamingProviderURLWriter"
+ class="org.jboss.naming.NamingProviderURLWriter">
+
+ <property name="server"><inject bean="JBossServer"/></property>
+ <property name="bootstrapAddress"><inject bean="RemoteNamingBean" property="bindAddress"/></property>
+ <property name="bootstrapPort"><inject bean="RemoteNamingBean" property="port"/></property>
+ </bean>
+
</deployment>
Modified: branches/vfs3-int/server/src/etc/deploy/thread-pool-jboss-beans.xml
===================================================================
--- branches/vfs3-int/server/src/etc/deploy/thread-pool-jboss-beans.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/server/src/etc/deploy/thread-pool-jboss-beans.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -25,26 +25,59 @@
<!-- Basic system thread pool deployment -->
<deployment xmlns="urn:jboss:bean-deployer:2.0">
- <threads xmlns="urn:jboss:threads:1.0">
- <thread-group name="SystemThreadFactoryGroup" group-name="System Threads"/>
- <thread-factory name="SystemThreadFactory" group="SystemThreadFactoryGroup"/>
+ <threads xmlns="urn:jboss:threads:2.0">
- <!--
- ~ This thread pool is for SHORT-RUNNING tasks that block very little or not at all. Long-running
- ~ tasks submitted to this pool may cause starvation and extended blocking.
- -->
- <thread-pool-executor name="ThreadPool" thread-factory="SystemThreadFactory" queue-length="1000">
- <core-pool-size count="5" per-cpu="2"/>
- <max-pool-size count="10" per-cpu="3"/>
- <keepalive-time time="30" unit="seconds"/>
- <reject-policy name="block"/>
- </thread-pool-executor>
- </threads>
+ <!-- The system thread group for all JBoss threads. -->
+ <thread-group name="SystemThreadGroup" group-name="System Threads" daemon="true"/>
- <bean name="LongRunningTasksThreadPool" class="java.util.concurrent.Executor">
- <constructor factoryClass="org.jboss.threads.JBossExecutors" factoryMethod="threadFactoryExecutor">
- <parameter><inject bean="SystemThreadFactory"/></parameter>
- </constructor>
- </bean>
+ <!-- A simple direct executor which is always available for use. -->
+ <direct-executor name="DirectExecutor"/>
+ <!--
+ ~ This thread pool is for SHORT-RUNNING tasks that block very little or not at all. Long-running
+ ~ tasks submitted to this pool may cause starvation and extended blocking.
+ -->
+ <thread-group name="ShortTasksThreadGroup" group-name="Short Tasks Threads">
+ <parent-thread-group name="SystemThreadGroup"/>
+ </thread-group>
+
+ <thread-factory name="ShortTasksThreadFactory">
+ <thread-group name="ShortTasksThreadGroup"/>
+ </thread-factory>
+
+ <bounded-queue-thread-pool-executor name="ThreadPool" blocking="true">
+ <thread-factory name="ShortTasksThreadFactory"/>
+ <queue-length count="500" per-cpu="200"/>
+ <core-threads count="5" per-cpu="2"/>
+ <max-threads count="10" per-cpu="3"/>
+ <keepalive-time time="30" unit="seconds"/>
+ <task-filter>
+ <clear-context-classloader/>
+ <clear-tls/>
+ </task-filter>
+ </bounded-queue-thread-pool-executor>
+
+ <!--
+ ~ This thread pool is for LONG-RUNNING tasks that may block for extended periods, such as
+ ~ blocking I/O network connection threads. Short-running tasks submitted to this pool may
+ ~ cause excessive lock contention and performance degradation.
+ -->
+ <thread-group name="LongTasksThreadGroup" group-name="Long Tasks Threads">
+ <parent-thread-group name="SystemThreadGroup"/>
+ </thread-group>
+
+ <thread-factory name="LongTasksThreadFactory">
+ <thread-group name="LongTasksThreadGroup"/>
+ </thread-factory>
+
+ <queueless-thread-pool-executor name="LongRunningTasksThreadPool" blocking="true">
+ <max-threads count="200" per-cpu="500"/>
+ <thread-factory name="LongTasksThreadFactory"/>
+ <task-filter>
+ <clear-context-classloader/>
+ <clear-tls/>
+ </task-filter>
+ </queueless-thread-pool-executor>
+ </threads>
+
</deployment>
\ No newline at end of file
Modified: branches/vfs3-int/server/src/main/java/org/jboss/deployment/JBossEjbParsingDeployer.java
===================================================================
--- branches/vfs3-int/server/src/main/java/org/jboss/deployment/JBossEjbParsingDeployer.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/server/src/main/java/org/jboss/deployment/JBossEjbParsingDeployer.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -99,9 +99,14 @@
if (ejbJarMetaData != null || jbossMetaData != null)
{
// Save this as a transient(non-managed) attachment
- JBossMetaData stdMetaData = getStandardMetaData();
- if(stdMetaData != null)
- unit.addAttachment("standardjboss.xml", stdMetaData);
+ // only for EJB2.x and earlier beans (since standardjboss.xml does not apply for EJB3.x and
+ // later)
+ if (this.isPreEJB3x(ejbJarMetaData, jbossMetaData))
+ {
+ JBossMetaData stdMetaData = getStandardMetaData();
+ if(stdMetaData != null)
+ unit.addAttachment("standardjboss.xml", stdMetaData);
+ }
if (jbossMetaData != null)
{
@@ -147,4 +152,27 @@
}
return standardMetaData;
}
+
+ /**
+ * @return Returns true if either the passed <code>ejbJarMetadata</code> or the <code>jbossMetadata</code>
+ * represents a EJB2.x or EJB1.x deployment
+ *
+ * @param ejbJarMetadata ejb-jar metadata
+ * @param jbossMetadata jboss metadata
+ *
+ */
+ private boolean isPreEJB3x(EjbJarMetaData ejbJarMetadata, JBossMetaData jbossMetadata)
+ {
+ if (ejbJarMetadata != null && (ejbJarMetadata.isEJB2x() || ejbJarMetadata.isEJB1x()))
+ {
+ return true;
+ }
+
+ if (jbossMetadata != null && (jbossMetadata.isEJB2x() || jbossMetadata.isEJB1x()))
+ {
+ return true;
+ }
+ return false;
+ }
+
}
Modified: branches/vfs3-int/server/src/main/java/org/jboss/deployment/MappedReferenceMetaDataResolverDeployer.java
===================================================================
--- branches/vfs3-int/server/src/main/java/org/jboss/deployment/MappedReferenceMetaDataResolverDeployer.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/server/src/main/java/org/jboss/deployment/MappedReferenceMetaDataResolverDeployer.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -45,10 +45,16 @@
import org.jboss.metadata.ejb.jboss.JBossEntityBeanMetaData;
import org.jboss.metadata.ejb.jboss.JBossGenericBeanMetaData;
import org.jboss.metadata.ejb.jboss.JBossMetaData;
+import org.jboss.metadata.ejb.jboss.JBossSessionBean31MetaData;
import org.jboss.metadata.ejb.jboss.JBossSessionBeanMetaData;
+import org.jboss.metadata.ejb.jboss.jndi.resolver.impl.JNDIPolicyBasedJNDINameResolverFactory;
+import org.jboss.metadata.ejb.jboss.jndi.resolver.spi.EntityBeanJNDINameResolver;
+import org.jboss.metadata.ejb.jboss.jndi.resolver.spi.SessionBean31JNDINameResolver;
+import org.jboss.metadata.ejb.jboss.jndi.resolver.spi.SessionBeanJNDINameResolver;
+import org.jboss.metadata.ejb.jboss.jndipolicy.plugins.DefaultJNDIBindingPolicyFactory;
+import org.jboss.metadata.ejb.jboss.jndipolicy.spi.DefaultJndiBindingPolicy;
import org.jboss.metadata.ejb.jboss.jndipolicy.spi.DeploymentSummary;
import org.jboss.metadata.ejb.jboss.jndipolicy.spi.EjbDeploymentSummary;
-import org.jboss.metadata.ejb.jboss.jndipolicy.spi.KnownInterfaces;
import org.jboss.metadata.ejb.jboss.jndipolicy.spi.PackagingType;
import org.jboss.metadata.ejb.spec.BusinessLocalsMetaData;
import org.jboss.metadata.ejb.spec.BusinessRemotesMetaData;
@@ -83,6 +89,12 @@
private static Logger log = Logger.getLogger(MappedReferenceMetaDataResolverDeployer.class);
/** */
private boolean failOnUnresolvedRefs;
+
+ /**
+ * Default jndi binding policy to be used for resolving
+ * jndi names for EJBs
+ */
+ private DefaultJndiBindingPolicy defaultJNDIBindingPolicy = DefaultJNDIBindingPolicyFactory.getDefaultJNDIBindingPolicy();
public MappedReferenceMetaDataResolverDeployer()
{
@@ -373,10 +385,12 @@
{
JBossSessionBeanMetaData sbean = (JBossSessionBeanMetaData) bean;
String ejbName = sbean.getEjbName();
+ SessionBeanJNDINameResolver sessionbeanJNDINameResolver = JNDIPolicyBasedJNDINameResolverFactory.getJNDINameResolver(sbean, this.defaultJNDIBindingPolicy);
// home
if(sbean.getHome() != null && sbean.getHome().length() > 0)
{
- cdmd.addJndiName(sbean.determineResolvedJndiName(KnownInterfaces.HOME));
+ String remoteHomeJNDIName = sessionbeanJNDINameResolver.resolveRemoteHomeJNDIName(sbean);
+ cdmd.addJndiName(remoteHomeJNDIName);
// Add ejb/vfsPath at iface
String home = sbean.getHome();
String ifacePath = prefix + "@" + home;
@@ -409,7 +423,7 @@
{
// Add ejb/vfsPath at iface
String remote = sbean.getRemote();
- String remoteJndiName = sbean.determineJndiName();
+ String remoteJndiName = sessionbeanJNDINameResolver.resolveJNDIName(sbean, remote);
cdmd.addJndiName(remoteJndiName);
String ifacePath = prefix + "@" + remote;
if(endpointAlternateMap.containsKey(ifacePath))
@@ -439,7 +453,8 @@
// local-home
if(sbean.getLocalHome() != null && sbean.getLocalHome().length() > 0)
{
- cdmd.addJndiName(sbean.determineResolvedJndiName(KnownInterfaces.LOCAL_HOME));
+ String localHomeJNDIName = sessionbeanJNDINameResolver.resolveLocalHomeJNDIName(sbean);
+ cdmd.addJndiName(localHomeJNDIName);
// Add ejb/vfsPath at iface
String local = sbean.getLocalHome();
String ifacePath = prefix + "@" + local;
@@ -472,7 +487,7 @@
{
// Add ejb/vfsPath at iface
String local = sbean.getLocal();
- String localJndiName = sbean.determineLocalJndiName();
+ String localJndiName = sessionbeanJNDINameResolver.resolveJNDIName(sbean, local);
cdmd.addJndiName(localJndiName);
String ifacePath = prefix + "@" + local;
if(endpointAlternateMap.containsKey(ifacePath))
@@ -503,13 +518,13 @@
BusinessLocalsMetaData locals = sbean.getBusinessLocals();
if(locals != null && locals.size() > 0)
{
- String localBaseJndiName = sbean.determineResolvedJndiName(KnownInterfaces.LOCAL);
- cdmd.addJndiName(localBaseJndiName);
+ String defaultLocalBusinessJNDIName = sessionbeanJNDINameResolver.resolveLocalBusinessDefaultJNDIName(sbean);
+ cdmd.addJndiName(defaultLocalBusinessJNDIName);
for(String local : locals)
{
// Add a targeted jndi name
- String localJndiName = sbean.determineResolvedJndiName(local);
- cdmd.addJndiName(localJndiName);
+ String localBusinessJNDIName = sessionbeanJNDINameResolver.resolveJNDIName(sbean, local);
+ cdmd.addJndiName(localBusinessJNDIName);
// Add ejb/vfsPath at iface
String ifacePath = prefix + "@" + local;
if(endpointAlternateMap.containsKey(ifacePath))
@@ -540,13 +555,13 @@
BusinessRemotesMetaData remotes = sbean.getBusinessRemotes();
if(remotes != null && remotes.size() > 0)
{
- String remoteBaseJndiName = sbean.determineResolvedJndiName(KnownInterfaces.REMOTE);
- cdmd.addJndiName(remoteBaseJndiName);
+ String defaultRemoteBusinessJNDIName = sessionbeanJNDINameResolver.resolveRemoteBusinessDefaultJNDIName(sbean);
+ cdmd.addJndiName(defaultRemoteBusinessJNDIName);
for(String remote : remotes)
{
// Add a targeted jndi name
- String remoteJndiName = sbean.determineResolvedJndiName(remote);
- cdmd.addJndiName(remoteJndiName);
+ String remoteBusinessJNDIName = sessionbeanJNDINameResolver.resolveJNDIName(sbean, remote);
+ cdmd.addJndiName(remoteBusinessJNDIName);
// Add ejb/vfsPath/iface
String ifacePath = prefix + "@" + remote;
if(endpointAlternateMap.containsKey(ifacePath))
@@ -571,17 +586,68 @@
}
}
}
+ // Map no-interface view of EJB3.1 bean
+ if (sbean instanceof JBossSessionBean31MetaData)
+ {
+ JBossSessionBean31MetaData sessionBean31 = (JBossSessionBean31MetaData) sbean;
+ if (sessionBean31.isNoInterfaceBean())
+ {
+ SessionBean31JNDINameResolver sessionBean31JNDINameResolver = (SessionBean31JNDINameResolver) sessionbeanJNDINameResolver;
+ String noInterfaceJNDIName = sessionBean31JNDINameResolver.resolveNoInterfaceJNDIName(sessionBean31);
+ // add it to container metadata
+ cdmd.addJndiName(noInterfaceJNDIName);
+ // TODO: The rest of the stuff is way too ugly, but that's what is being
+ // done for maintaining per business interface endpoint mappings. So let's
+ // for the time being, do the same for no-interface view endpoint mappings.
+
+ String ejbClassName = sessionBean31.getEjbClass();
+ // add to end point mappings
+ String ifacePath = prefix + "@" + ejbClassName;
+ if(endpointAlternateMap.containsKey(ifacePath))
+ {
+ log.debug(ejbName + " duplicates nointerface bean: " + ejbClassName
+ + ", existing: " + endpointAlternateMap.get(ifacePath));
+ }
+ else
+ {
+ endpointAlternateMap.put(ifacePath, ejbCompID);
+ mappings.add(ifacePath);
+ if(trace)
+ {
+ log.trace("mapEjbs, nointerface bean: " + ifacePath + ", ejbName: " + ejbName);
+ }
+ }
+ // Add ejb/iface
+ ifacePath = "ejb@" + ejbClassName;
+ if(endpointMap.containsKey(ifacePath))
+ {
+ // TODO: may need to track the duplicates to create an error
+ log.debug(ejbName + " duplicates nointerface bean : " + ejbClassName + ", existing: "
+ + endpointMap.get(ifacePath));
+ }
+ else
+ {
+ endpointAlternateMap.put(ifacePath, ejbCompID);
+ mappings.add(ifacePath);
+ if(trace)
+ log.trace("mapEjbs, nointerface bean : " + ifacePath + ", ejbName: " + ejbName);
+ }
+
+ }
+ }
if(trace)
log.trace("mapEjbs: "+ejbCompID+", mappings: "+mappings);
}
else if(bean instanceof JBossEntityBeanMetaData)
{
JBossEntityBeanMetaData ebean = (JBossEntityBeanMetaData) bean;
+ EntityBeanJNDINameResolver entityBeanJNDINameResolver = JNDIPolicyBasedJNDINameResolverFactory.getJNDINameResolver(ebean, this.defaultJNDIBindingPolicy);
String ejbName = ebean.getEjbName();
// home
if(ebean.getHome() != null && ebean.getHome().length() > 0)
{
- cdmd.addJndiName(ebean.determineResolvedJndiName(KnownInterfaces.HOME));
+ String homeJNDIName = entityBeanJNDINameResolver.resolveRemoteHomeJNDIName(ebean);
+ cdmd.addJndiName(homeJNDIName);
// Add ejb/vfsPath at iface
String home = ebean.getHome();
String ifacePath = prefix + "@" + home;
@@ -642,7 +708,8 @@
// local-home
if(ebean.getLocalHome() != null && ebean.getLocalHome().length() > 0)
{
- cdmd.addJndiName(ebean.determineResolvedJndiName(KnownInterfaces.LOCAL_HOME));
+ String localHomeJNDIName = entityBeanJNDINameResolver.resolveLocalHomeJNDIName(ebean);
+ cdmd.addJndiName(localHomeJNDIName);
// Add ejb/vfsPath at iface
String local = ebean.getLocalHome();
String ifacePath = prefix + "@" + local;
@@ -799,7 +866,18 @@
String ifaceName = iface != null ? iface.getName() : null;
//LegacyEjb3JndiPolicy policy = new LegacyEjb3JndiPolicy();
- String containerJndiName = target.getBeanMetaData().determineResolvedJndiName(ifaceName);
+ JBossEnterpriseBeanMetaData beanMD = target.getBeanMetaData();
+ String containerJndiName = null;
+ if (beanMD.isSession() || beanMD.isService())
+ {
+ SessionBeanJNDINameResolver jndiNameResolver = JNDIPolicyBasedJNDINameResolverFactory.getJNDINameResolver((JBossSessionBeanMetaData) beanMD, this.defaultJNDIBindingPolicy);
+ containerJndiName = jndiNameResolver.resolveJNDIName((JBossSessionBeanMetaData) beanMD, ifaceName);
+ }
+ else if (beanMD.isEntity())
+ {
+ EntityBeanJNDINameResolver jndiNameResolver = JNDIPolicyBasedJNDINameResolverFactory.getJNDINameResolver((JBossEntityBeanMetaData) beanMD, this.defaultJNDIBindingPolicy);
+ containerJndiName = jndiNameResolver.resolveJNDIName((JBossEntityBeanMetaData) beanMD, ifaceName);
+ }
if(containerJndiName != null)
ref.setResolvedJndiName(containerJndiName);
}
@@ -915,9 +993,27 @@
// Resolve a local JNDI Name based on Spec type
String localJndiName = null;
- if (ejbJarMd.isEJB3x() && !useDefaultProxy)
+ if (ejbJarMd.isEJB3x())
{
- localJndiName = md.determineResolvedJndiName(localInterface);
+ if (md.isSession() || md.isService())
+ {
+ SessionBeanJNDINameResolver sessionBeanJNDINameResolver = JNDIPolicyBasedJNDINameResolverFactory.getJNDINameResolver((JBossSessionBeanMetaData) md, this.defaultJNDIBindingPolicy);
+ if (useDefaultProxy)
+ {
+ localJndiName = sessionBeanJNDINameResolver
+ .resolveLocalBusinessDefaultJNDIName((JBossSessionBeanMetaData) md);
+ }
+ else
+ {
+ localJndiName = sessionBeanJNDINameResolver.resolveJNDIName((JBossSessionBeanMetaData) md, localInterface);
+ }
+
+ }
+ else if (md.isEntity())
+ {
+ EntityBeanJNDINameResolver entityBeanJNDINameResolver = JNDIPolicyBasedJNDINameResolverFactory.getJNDINameResolver((JBossEntityBeanMetaData) md, this.defaultJNDIBindingPolicy);
+ localJndiName = entityBeanJNDINameResolver.resolveJNDIName((JBossEntityBeanMetaData) md, localInterface);
+ }
}
else
{
@@ -1048,21 +1144,39 @@
JBossMetaData ejbMarMd = md.getEnterpriseBeansMetaData().getEjbJarMetaData();
// Resolve a JNDI name
- String containerJndiName = null;
- if (ejbMarMd.isEJB3x() && !useDefaultProxy)
+ String remoteJNDIName = null;
+ if (ejbMarMd.isEJB3x())
{
- containerJndiName = md.determineResolvedJndiName(remoteInterface);
+ if (md.isSession() || md.isService())
+ {
+ SessionBeanJNDINameResolver sessionBeanJNDINameResolver = JNDIPolicyBasedJNDINameResolverFactory.getJNDINameResolver((JBossSessionBeanMetaData) md, this.defaultJNDIBindingPolicy);
+ if (useDefaultProxy)
+ {
+ remoteJNDIName = sessionBeanJNDINameResolver.resolveRemoteBusinessDefaultJNDIName((JBossSessionBeanMetaData) md);
+ }
+ else
+ {
+ remoteJNDIName = sessionBeanJNDINameResolver.resolveJNDIName((JBossSessionBeanMetaData) md, remoteInterface);
+ }
+
+ }
+ else if (md.isEntity())
+ {
+ EntityBeanJNDINameResolver entityBeanJNDINameResolver = JNDIPolicyBasedJNDINameResolverFactory.getJNDINameResolver((JBossEntityBeanMetaData) md, this.defaultJNDIBindingPolicy);
+ remoteJNDIName = entityBeanJNDINameResolver.resolveJNDIName((JBossEntityBeanMetaData) md, remoteInterface);
+ }
+
}
else
{
- containerJndiName = md.determineJndiName();
+ remoteJNDIName = md.determineJndiName();
}
// If we've got a resolved name
- if(containerJndiName != null)
+ if(remoteJNDIName != null)
{
// Set it
- ref.setResolvedJndiName(containerJndiName);
+ ref.setResolvedJndiName(remoteJNDIName);
}
// Add the dependency
Copied: branches/vfs3-int/server/src/main/java/org/jboss/kernel (from rev 99666, trunk/server/src/main/java/org/jboss/kernel)
Deleted: branches/vfs3-int/server/src/main/java/org/jboss/kernel/KernelInstaller.java
===================================================================
--- trunk/server/src/main/java/org/jboss/kernel/KernelInstaller.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/server/src/main/java/org/jboss/kernel/KernelInstaller.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,110 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source.
-* Copyright 2006, Red Hat Middleware LLC, and individual contributors
-* as indicated by the @author tags. See the copyright.txt file in the
-* distribution for a full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
-package org.jboss.kernel;
-
-import org.jboss.dependency.plugins.tracker.NoopContextTracker;
-import org.jboss.dependency.spi.tracker.ContextTracker;
-import org.jboss.kernel.spi.metadata.KernelMetaDataRepository;
-import org.jboss.logging.Logger;
-import org.jboss.metadata.plugins.loader.memory.MemoryMetaDataLoader;
-import org.jboss.metadata.spi.MutableMetaData;
-import org.jboss.metadata.spi.repository.MutableMetaDataRepository;
-import org.jboss.metadata.spi.retrieval.MetaDataRetrieval;
-import org.jboss.metadata.spi.scope.ScopeKey;
-
-/**
- * Kernel installer.
- *
- * It installs default/dummy ContextTracker at ScopeKey.DEFAULT_SCOPE.
- *
- * @author <a href="ales.justin at jboss.org">Ales Justin</a>
- */
-public class KernelInstaller
-{
- private Logger log = Logger.getLogger(KernelInstaller.class);
- private Kernel kernel;
- private ContextTracker tracker;
-
- public KernelInstaller(Kernel kernel)
- {
- if (kernel == null)
- throw new IllegalArgumentException("Null Kernel");
- this.kernel = kernel;
- }
-
- public void create()
- {
- if (tracker == null)
- tracker = new NoopContextTracker();
- }
-
- public void start()
- {
- KernelMetaDataRepository kmdr = kernel.getMetaDataRepository();
- MutableMetaDataRepository repository = kmdr.getMetaDataRepository();
- MetaDataRetrieval retrieval = repository.getMetaDataRetrieval(ScopeKey.DEFAULT_SCOPE);
- if (retrieval == null)
- {
- retrieval = new MemoryMetaDataLoader(ScopeKey.DEFAULT_SCOPE);
- repository.addMetaDataRetrieval(retrieval);
- }
- if (retrieval instanceof MutableMetaData)
- {
- MutableMetaData mmd = (MutableMetaData)retrieval;
- mmd.addMetaData(tracker, ContextTracker.class);
- }
- else
- {
- log.info("Cannot add/modify default scoped metadata: " + retrieval);
- }
- }
-
- public void stop()
- {
- KernelMetaDataRepository kmdr = kernel.getMetaDataRepository();
- MutableMetaDataRepository repository = kmdr.getMetaDataRepository();
- MetaDataRetrieval retrieval = repository.getMetaDataRetrieval(ScopeKey.DEFAULT_SCOPE);
- if (retrieval != null && retrieval instanceof MutableMetaData)
- {
- MutableMetaData mmd = (MutableMetaData)retrieval;
- mmd.removeMetaData(ContextTracker.class);
-
- if (retrieval.isEmpty())
- repository.removeMetaDataRetrieval(retrieval.getScope());
- }
- else
- {
- log.debug("Ignoring remove/modify default scoped metadata: " + retrieval);
- }
- }
-
- /**
- * Set context tracker.
- * By default we use dummy/noop.
- *
- * @param tracker the context tracker
- */
- public void setTracker(ContextTracker tracker)
- {
- this.tracker = tracker;
- }
-}
Copied: branches/vfs3-int/server/src/main/java/org/jboss/kernel/KernelInstaller.java (from rev 99666, trunk/server/src/main/java/org/jboss/kernel/KernelInstaller.java)
===================================================================
--- branches/vfs3-int/server/src/main/java/org/jboss/kernel/KernelInstaller.java (rev 0)
+++ branches/vfs3-int/server/src/main/java/org/jboss/kernel/KernelInstaller.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,110 @@
+/*
+* JBoss, Home of Professional Open Source.
+* Copyright 2006, Red Hat Middleware LLC, and individual contributors
+* as indicated by the @author tags. See the copyright.txt file in the
+* distribution for a full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.kernel;
+
+import org.jboss.dependency.plugins.tracker.NoopContextTracker;
+import org.jboss.dependency.spi.tracker.ContextTracker;
+import org.jboss.kernel.spi.metadata.KernelMetaDataRepository;
+import org.jboss.logging.Logger;
+import org.jboss.metadata.plugins.loader.memory.MemoryMetaDataLoader;
+import org.jboss.metadata.spi.MutableMetaData;
+import org.jboss.metadata.spi.repository.MutableMetaDataRepository;
+import org.jboss.metadata.spi.retrieval.MetaDataRetrieval;
+import org.jboss.metadata.spi.scope.ScopeKey;
+
+/**
+ * Kernel installer.
+ *
+ * It installs default/dummy ContextTracker at ScopeKey.DEFAULT_SCOPE.
+ *
+ * @author <a href="ales.justin at jboss.org">Ales Justin</a>
+ */
+public class KernelInstaller
+{
+ private Logger log = Logger.getLogger(KernelInstaller.class);
+ private Kernel kernel;
+ private ContextTracker tracker;
+
+ public KernelInstaller(Kernel kernel)
+ {
+ if (kernel == null)
+ throw new IllegalArgumentException("Null Kernel");
+ this.kernel = kernel;
+ }
+
+ public void create()
+ {
+ if (tracker == null)
+ tracker = new NoopContextTracker();
+ }
+
+ public void start()
+ {
+ KernelMetaDataRepository kmdr = kernel.getMetaDataRepository();
+ MutableMetaDataRepository repository = kmdr.getMetaDataRepository();
+ MetaDataRetrieval retrieval = repository.getMetaDataRetrieval(ScopeKey.DEFAULT_SCOPE);
+ if (retrieval == null)
+ {
+ retrieval = new MemoryMetaDataLoader(ScopeKey.DEFAULT_SCOPE);
+ repository.addMetaDataRetrieval(retrieval);
+ }
+ if (retrieval instanceof MutableMetaData)
+ {
+ MutableMetaData mmd = (MutableMetaData)retrieval;
+ mmd.addMetaData(tracker, ContextTracker.class);
+ }
+ else
+ {
+ log.info("Cannot add/modify default scoped metadata: " + retrieval);
+ }
+ }
+
+ public void stop()
+ {
+ KernelMetaDataRepository kmdr = kernel.getMetaDataRepository();
+ MutableMetaDataRepository repository = kmdr.getMetaDataRepository();
+ MetaDataRetrieval retrieval = repository.getMetaDataRetrieval(ScopeKey.DEFAULT_SCOPE);
+ if (retrieval != null && retrieval instanceof MutableMetaData)
+ {
+ MutableMetaData mmd = (MutableMetaData)retrieval;
+ mmd.removeMetaData(ContextTracker.class);
+
+ if (retrieval.isEmpty())
+ repository.removeMetaDataRetrieval(retrieval.getScope());
+ }
+ else
+ {
+ log.debug("Ignoring remove/modify default scoped metadata: " + retrieval);
+ }
+ }
+
+ /**
+ * Set context tracker.
+ * By default we use dummy/noop.
+ *
+ * @param tracker the context tracker
+ */
+ public void setTracker(ContextTracker tracker)
+ {
+ this.tracker = tracker;
+ }
+}
Modified: branches/vfs3-int/server/src/main/java/org/jboss/web/WebServer.java
===================================================================
--- branches/vfs3-int/server/src/main/java/org/jboss/web/WebServer.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/server/src/main/java/org/jboss/web/WebServer.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -34,9 +34,12 @@
import java.net.ServerSocket;
import java.net.Socket;
import java.net.URL;
+import java.security.AccessController;
import java.util.Properties;
import java.util.concurrent.Executor;
import org.jboss.logging.Logger;
+import org.jboss.util.loading.ContextClassLoaderSwitcher;
+import org.jboss.util.loading.ContextClassLoaderSwitcher.SwitchContext;
/**
* A mini webserver that should be embedded in another application. It can
@@ -111,7 +114,17 @@
* The thread pool used to manage listening threads
*/
private Executor executor;
+
+ private final ContextClassLoaderSwitcher tclSwitcher;
+
+ // Constructors --------------------------------------------------
+ public WebServer()
+ {
+ @SuppressWarnings("unchecked")
+ ContextClassLoaderSwitcher clSwitcher = (ContextClassLoaderSwitcher) AccessController.doPrivileged(ContextClassLoaderSwitcher.INSTANTIATOR);
+ this.tclSwitcher = clSwitcher;
+ }
// Public --------------------------------------------------------
/**
@@ -368,56 +381,68 @@
}
log.trace("loader = " + loader);
byte[] bytes = {};
- if (loader != null && filePath.endsWith(".class"))
+ SwitchContext tclSwitchContext = null;
+ try
{
- // A request for a class file
- String className = filePath.substring(0, filePath.length() - 6).replace('/', '.');
- log.trace("loading className = " + className);
- Class clazz = loader.loadClass(className);
- URL clazzUrl = clazz.getProtectionDomain().getCodeSource().getLocation();
- log.trace("clazzUrl = " + clazzUrl);
- if (clazzUrl == null)
+ tclSwitchContext = this.tclSwitcher.getSwitchContext(this.getClass().getClassLoader());
+ if (loader != null && filePath.endsWith(".class"))
{
- // Does the WebClassLoader of clazz
- // have the ability to obtain the bytecodes of clazz?
- bytes = ((WebClassLoader) clazz.getClassLoader()).getBytes(clazz);
- if (bytes == null)
- throw new Exception("Class not found: " + className);
- }
- else
- {
- if (clazzUrl.getFile().endsWith("/") == false)
+ // A request for a class file
+ String className = filePath.substring(0, filePath.length() - 6).replace('/', '.');
+ log.trace("loading className = " + className);
+ Class<?> clazz = loader.loadClass(className);
+ URL clazzUrl = clazz.getProtectionDomain().getCodeSource().getLocation();
+ log.trace("clazzUrl = " + clazzUrl);
+ if (clazzUrl == null)
{
- clazzUrl = new URL("jar:" + clazzUrl + "!/" + filePath);
+ // Does the WebClassLoader of clazz
+ // have the ability to obtain the bytecodes of clazz?
+ bytes = ((WebClassLoader) clazz.getClassLoader()).getBytes(clazz);
+ if (bytes == null)
+ throw new Exception("Class not found: " + className);
}
- // this is a hack for the AOP ClassProxyFactory
- else if (clazzUrl.getFile().indexOf("/org_jboss_aop_proxy$") < 0)
+ else
{
- clazzUrl = new URL(clazzUrl, filePath);
+ if (clazzUrl.getFile().endsWith("/") == false)
+ {
+ clazzUrl = new URL("jar:" + clazzUrl + "!/" + filePath);
+ }
+ // this is a hack for the AOP ClassProxyFactory
+ else if (clazzUrl.getFile().indexOf("/org_jboss_aop_proxy$") < 0)
+ {
+ clazzUrl = new URL(clazzUrl, filePath);
+ }
+
+ // Retrieve bytecodes
+ log.trace("new clazzUrl: " + clazzUrl);
+ bytes = getBytes(clazzUrl);
}
-
- // Retrieve bytecodes
- log.trace("new clazzUrl: " + clazzUrl);
- bytes = getBytes(clazzUrl);
}
- }
- else if (loader != null && filePath.length() > 0 && downloadServerClasses && downloadResources)
- {
- // Try getting resource
- log.trace("loading resource = " + filePath);
- URL resourceURL = loader.getResource(filePath);
- if (resourceURL == null)
- httpCode = "404 Resource not found:" + filePath;
+ else if (loader != null && filePath.length() > 0 && downloadServerClasses && downloadResources)
+ {
+ // Try getting resource
+ log.trace("loading resource = " + filePath);
+ URL resourceURL = loader.getResource(filePath);
+ if (resourceURL == null)
+ httpCode = "404 Resource not found:" + filePath;
+ else
+ {
+ // Retrieve bytes
+ log.trace("resourceURL = " + resourceURL);
+ bytes = getBytes(resourceURL);
+ }
+ }
else
{
- // Retrieve bytes
- log.trace("resourceURL = " + resourceURL);
- bytes = getBytes(resourceURL);
+ httpCode = "404 Not Found";
}
}
- else
+ finally
{
- httpCode = "404 Not Found";
+ if (tclSwitchContext != null)
+ {
+ tclSwitchContext.reset();
+ }
}
@@ -454,6 +479,10 @@
// Ignore
}
}
+ finally
+ {
+
+ }
}
catch (IOException ex)
{
Modified: branches/vfs3-int/system/pom.xml
===================================================================
--- branches/vfs3-int/system/pom.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -56,6 +56,10 @@
</exclusions>
</dependency>
<dependency>
+ <groupId>org.jboss.aop</groupId>
+ <artifactId>jboss-aop</artifactId>
+ </dependency>
+ <dependency>
<groupId>org.jboss</groupId>
<artifactId>jbossxb</artifactId>
</dependency>
Modified: branches/vfs3-int/system-jmx/pom.xml
===================================================================
--- branches/vfs3-int/system-jmx/pom.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -114,6 +114,14 @@
<artifactId>jboss-kernel</artifactId>
</dependency>
<dependency>
+ <groupId>org.jboss.kernel</groupId>
+ <artifactId>jboss-jmx-mc-int</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jboss.deployers</groupId>
+ <artifactId>jboss-deployers-jmx</artifactId>
+ </dependency>
+ <dependency>
<groupId>org.jboss.test</groupId>
<artifactId>jboss-test</artifactId>
<scope>test</scope>
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/BarrierController.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/BarrierController.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/BarrierController.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,431 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import javax.management.Notification;
-import javax.management.ObjectName;
-
-/**
- * BarrierController service.
- *
- * A service that controls the lifecycle of a secondary mbean
- * (the BarrierMbean) that can be used as a dependency for other
- * services.
- *
- * Starting and stopping the barrier mbean (and as a result
- * all services depending on it) is performed by listening
- * for any kind of JMX notification. In particular we use
- * the handback object of a notification subscription to
- * qualify the start and stop signals.
- *
- * Manual control of the barrier is also supported through
- * startBarrier()/stopBarrier() methods.
- *
- * You may subclass BarrierController and override enableOnStartup()
- * to apply complex logic in deciding whether to initially start
- * the barrier (e.g. query some other mbean).
- *
- * @jmx:mbean
- * extends="org.jboss.system.ListenerServiceMBean"
- * name="jboss:service=BarrierController"
- *
- * @author <a href="dimitris at jboss.org">Dimitris Andreadis</a>
- * @author Scott.Stark at jboss.org
- * @version $Revision$
- */
-public class BarrierController extends ListenerServiceMBeanSupport
- implements BarrierControllerMBean
-{
- // Private Data --------------------------------------------------
-
- /** The ObjectName of the Barrier MBean */
- private ObjectName barrierName;
-
- /** The initial state of the barrier */
- private Boolean enableOnStartup;
-
- /** The notification subscription handback string that starts the barrier */
- private String startHandback;
-
- /** The notification subscription handback string that stops the barrier */
- private String stopHandback;
-
- /** The dynamic subscriptions flag */
- private Boolean dynamicSubscriptions;
-
- // Protected Data ------------------------------------------------
-
- /** The controlled Barrier */
- protected Barrier barrier;
-
- // Constructors --------------------------------------------------
-
- /**
- * Default CTOR
- */
- public BarrierController()
- {
- // empty
- }
-
- // Attributes ----------------------------------------------------
-
- /**
- * The controlled barrier StateString.
- *
- * @jmx.managed-attribute
- */
- public String getBarrierStateString()
- {
- return (barrier != null) ? barrier.getStateString() : null;
- }
-
- /**
- * The controlled barrier ObjectName.
- *
- * @jmx.managed-attribute
- */
- public void setBarrierObjectName(ObjectName barrierName)
- {
- // set once
- if (this.barrierName == null)
- {
- this.barrierName = barrierName;
- }
- }
-
- /**
- * The controlled barrier ObjectName.
- *
- * @jmx.managed-attribute
- */
- public ObjectName getBarrierObjectName()
- {
- return barrierName;
- }
-
-
- /**
- * The initial state of the barrier.
- *
- * If set, it overrides the internal call to enableOnStartup()
- * which will never get called.
- *
- * @jmx.managed-attribute
- */
- public void setBarrierEnabledOnStartup(Boolean enableOnStartup)
- {
- // set once
- if (this.enableOnStartup == null)
- {
- this.enableOnStartup = enableOnStartup;
- }
- }
-
- /**
- * The initial state of the barrier.
- *
- * Use the value set through setBarrierEnabledOnStartup()
- * otherwise call the internal enableOnStartup() override
- * to make a decision.
- *
- * @jmx.managed-attribute
- */
- public Boolean getBarrierEnabledOnStartup()
- {
- if (enableOnStartup == null)
- {
- // setBarrierEnabledOnStartup() not called
- // initialize through enableOnStartup()
- enableOnStartup = enableOnStartup();
- }
- return enableOnStartup;
- }
-
- /**
- * The notification subscription handback string that starts the barrier.
- *
- * @jmx.managed-attribute
- */
- public void setStartBarrierHandback(String startHandback)
- {
- // set once
- if (this.startHandback == null)
- {
- this.startHandback = startHandback;
- }
- }
-
- /**
- * The notification subscription handback string that starts the barrier.
- *
- * @jmx.managed-attribute
- */
- public String getStartBarrierHandback()
- {
- return startHandback;
- }
-
- /**
- * The notification subscription handback string that stops the barrier.
- *
- * @jmx.managed-attribute
- */
- public void setStopBarrierHandback(String stopHandback)
- {
- // set once
- if (this.stopHandback == null)
- {
- this.stopHandback = stopHandback;
- }
- }
-
- /**
- * The notification subscription handback string that stops the barrier.
- *
- * @jmx.managed-attribute
- */
- public String getStopBarrierHandback()
- {
- return stopHandback;
- }
-
- /**
- * The ability to dynamically subscribe for notifications.
- *
- * @jmx.managed-attribute
- */
- public void setDynamicSubscriptions(Boolean dynamicSubscriptions)
- {
- // set once
- if (this.dynamicSubscriptions == null)
- {
- this.dynamicSubscriptions = dynamicSubscriptions;
- }
- }
-
- /**
- * The ability to dynamically subscribe for notifications.
- *
- * @jmx.managed-attribute
- */
- public Boolean getDynamicSubscriptions()
- {
- if (dynamicSubscriptions == null)
- {
- dynamicSubscriptions = Boolean.TRUE;
- }
- return dynamicSubscriptions;
- }
-
- // Override ------------------------------------------------------
-
- /**
- * Override this method to apply complex logic whether
- * to start the Barrier service upon startup or not.
- *
- * This method will be only called once and only if
- * setBarrierEnabledOnStartup(Boolean) has not been called.
- *
- * The default implementation is to return false.
- */
- protected Boolean enableOnStartup()
- {
- return Boolean.FALSE;
- }
-
- // Lifecycle -----------------------------------------------------
-
- protected void createService() throws Exception
- {
- // create the Barrier
- barrier = new Barrier(getServiceName());
-
- initBarrier();
- }
-
- /**
- * Coordinates between createService() and postRegister(),
- * registering the barrier when both the barrier is
- * created and the mbeanserver is available
- *
- * @throws Exception
- */
- private void initBarrier() throws Exception
- {
- if (barrier != null && getServer() != null)
- {
- // register with the MBeanServer
- getServer().registerMBean(barrier, barrierName);
-
- // implicitly call the ServiceController
- barrier.create();
-
- // conditionally start the barrier
- if (getBarrierEnabledOnStartup().booleanValue())
- {
- startBarrier();
- }
- // subscribe for notifications
- subscribe(getDynamicSubscriptions().booleanValue());
- }
- }
-
- protected void destroyService()
- {
- // unsubscribe for notifications
- unsubscribe();
-
- try
- {
- // implicitly call the ServiceController
- barrier.destroy();
-
- // remove from MBeanServer
- getServer().unregisterMBean(barrierName);
- }
- catch (Throwable e)
- {
- log.debug("Unexpected error during destroy", e);
- }
-
- // cleanup
- barrier = null;
- }
-
- // ListenerServiceMBeanSupport -----------------------------------
-
- /**
- * Base on the handback object the decision
- * for starting/stopping the barrier
- */
- public void handleNotification2(Notification n, Object handback)
- {
- log.debug("Got notification: " + n);
-
- if (startHandback != null && startHandback.equals(handback))
- {
- log.debug("Saw '" + handback + "' handback, starting barrier");
- startBarrier();
- }
- else if (stopHandback != null && stopHandback.equals(handback))
- {
- log.debug("Saw '" + handback + "' handback, stopping barrier");
- stopBarrier();
- }
- }
-
- // Operations ----------------------------------------------------
-
- /**
- * Manually start the controlled barrier
- *
- * @jmx:managed-operation
- */
- public void startBarrier()
- {
- try
- {
- // implicitly call the ServiceController
- barrier.start();
- }
- catch (Throwable e)
- {
- log.warn("Failed to start barrier: " + barrierName, e);
- }
- }
-
- /**
- * Manually stop the controlled barrier
- *
- * @jmx:managed-operation
- */
- public void stopBarrier()
- {
- try
- {
- // implicitly call the ServiceController
- barrier.stop();
- }
- catch (Throwable e)
- {
- log.warn("Failed to stop barrier: " + barrierName, e);
- }
- }
-
- // Overrides ---------------------------------------------------
-
- @Override
- public void postRegister(Boolean registrationDone)
- {
- super.postRegister(registrationDone);
-
- if (Boolean.TRUE.equals(registrationDone))
- {
- try
- {
- initBarrier();
- }
- catch (Exception e)
- {
- throw new RuntimeException(e);
- }
- }
- }
-
- // Inner Class ---------------------------------------------------
-
- /**
- * The controlled barrier MBean interface
- */
- public static interface BarrierMBean
- {
- /** We just want to expose those attributes */
- ObjectName getBarrierController();
- String getStateString();
- int getState();
-
- /** Hook up with the ServiceController */
- void jbossInternalLifecycle(String method) throws Exception;
- }
-
- /**
- * The controlled barrier MBean class
- */
- public static class Barrier extends ServiceMBeanSupport implements BarrierMBean
- {
- /** The parent Controller */
- private ObjectName barrierController;
-
- /** CTOR */
- public Barrier(ObjectName barrierController)
- {
- this.barrierController = barrierController;
- }
-
- /** Accessor */
- public ObjectName getBarrierController()
- {
- return barrierController;
- }
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/BarrierControllerMBean.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/BarrierControllerMBean.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/BarrierControllerMBean.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,67 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import javax.management.ObjectName;
-
-/**
- * BarrierController service interface
- *
- * @author <a href="dimitris at jboss.org">Dimitris Andreadis</a>
- * @author Scott.Stark at jboss.org
- * @version $Revision$
- */
-public interface BarrierControllerMBean extends ListenerServiceMBean
-{
- // Attributes ----------------------------------------------------
-
- /** The controlled barrier StateString */
- String getBarrierStateString();
-
- /** The controlled barrier ObjectName */
- void setBarrierObjectName(ObjectName barrierName);
- ObjectName getBarrierObjectName();
-
- /** The initial state of the barrier */
- void setBarrierEnabledOnStartup(Boolean enableOnStartup);
- Boolean getBarrierEnabledOnStartup();
-
- /** The notification subscription handback string that starts the barrier */
- void setStartBarrierHandback(String startHandback);
- String getStartBarrierHandback();
-
- /** The notification subscription handback string that stops the barrier */
- void setStopBarrierHandback(String stopHandback);
- String getStopBarrierHandback();
-
- /** The ability to dynamically subscribe for notifications */
- void setDynamicSubscriptions(Boolean dynamicSubscriptions);
- Boolean getDynamicSubscriptions();
-
- // Operations ----------------------------------------------------
-
- /** Manually start the controlled barrier */
- void startBarrier();
-
- /** Manually stop the controlled barrier */
- void stopBarrier();
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ConfigurationException.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ConfigurationException.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ConfigurationException.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,92 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import org.jboss.util.NestedException;
-
-/**
- * Thrown to indicate a non-fatal configuration related problem.
- *
- * @author <a href="mailto:jason at planet57.com">Jason Dillon</a>
- * @version <tt>$Revision$</tt>
- */
-public class ConfigurationException
- extends NestedException
-{
- /** The serialVersionUID */
- private static final long serialVersionUID = -1841403351768037738L;
-
- /**
- * Rethrow a throwable as a configuration exception if it isn't already.
- *
- * @param message the message
- * @param t the throwable
- * @return never
- * @throws ConfigurationException always
- */
- public static ConfigurationException rethrowAsConfigurationException(String message, Throwable t)
- throws ConfigurationException
- {
- if (t instanceof ConfigurationException)
- throw (ConfigurationException) t;
- else
- throw new ConfigurationException(message, t);
- }
-
- /**
- * Construct a <tt>ConfigurationException</tt> with the specified detail
- * message.
- *
- * @param msg Detail message.
- */
- public ConfigurationException(String msg) {
- super(msg);
- }
-
- /**
- * Construct a <tt>ConfigurationException</tt> with the specified detail
- * message and nested <tt>Throwable</tt>.
- *
- * @param msg Detail message.
- * @param nested Nested <tt>Throwable</tt>.
- */
- public ConfigurationException(String msg, Throwable nested) {
- super(msg, nested);
- }
-
- /**
- * Construct a <tt>ConfigurationException</tt> with the specified
- * nested <tt>Throwable</tt>.
- *
- * @param nested Nested <tt>Throwable</tt>.
- */
- public ConfigurationException(Throwable nested) {
- super(nested);
- }
-
- /**
- * Construct a <tt>ConfigurationException</tt> with no detail.
- */
- public ConfigurationException() {
- super();
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/InterceptorServiceMBean.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/InterceptorServiceMBean.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/InterceptorServiceMBean.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,47 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import java.util.List;
-
-/**
- * MBean interface for services that dynamically attach an
- * interceptor to a set of target Interceptable (X)MBeans.
- *
- * @see InterceptorServiceMBeanSupport
- * @see org.jboss.mx.server.Interceptable
- *
- * @author <a href="mailto:dimitris at jboss.org">Dimitris Andreadis</a>
- * @version $Revision$
-**/
-public interface InterceptorServiceMBean extends ServiceMBean
-{
- // Attributes ----------------------------------------------------
-
- /**
- * The ObjectNames of the MBeans implementing the operations
- * in the org.jboss.mx.server.Interceptable interface
- */
- void setInterceptables(List interceptables);
- List getInterceptables();
-
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/InterceptorServiceMBeanSupport.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/InterceptorServiceMBeanSupport.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/InterceptorServiceMBeanSupport.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,275 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-import javax.management.ObjectName;
-
-import org.jboss.logging.Logger;
-import org.jboss.mx.interceptor.AbstractInterceptor;
-import org.jboss.mx.interceptor.DynamicInterceptor;
-import org.jboss.mx.interceptor.Interceptor;
-import org.jboss.mx.server.Invocation;
-
-/**
- * Helper class that can be used for writing MBean Services
- * that dynamically hook-up an Interceptor to other (X)MBeans
- * that have been configured as Interceptable.
- *
- * In a nutshell, call attach()/detach() from your
- * createService()/destroyService() or startService()/stopService()
- * pair methods to attach/detach an interceptor to the target mbean(s),
- * then override invoke() to do something with the invocations.
- *
- * You may also provide your own Interceptor, in which case
- * you should call attach(Interceptor).
- *
- * @author <a href="mailto:dimitris at jboss.org">Dimitris Andreadis</a>
- * @version $Revision$
- */
-public abstract class InterceptorServiceMBeanSupport extends ServiceMBeanSupport
- implements InterceptorServiceMBean
-{
- // Private Data --------------------------------------------------
-
- /** The Interceptables to attach to */
- private List interceptables;
-
- /** The attached interceptor */
- private Interceptor interceptor;
-
- // Constructors -------------------------------------------------
-
- /**
- * Constructs an <tt>InterceptorServiceMBeanSupport</tt>.
- */
- public InterceptorServiceMBeanSupport()
- {
- super();
- }
-
- /**
- * Constructs an <tt>InterceptorServiceMBeanSupport</tt>.
- *
- * Pass-through to ServiceMBeanSupport.
- *
- * @param type The class type to determine Logger name from.
- */
- public InterceptorServiceMBeanSupport(final Class type)
- {
- super(type);
- }
-
- /**
- * Constructs an <tt>InterceptorServiceMBeanSupport</tt>.
- *
- * Pass-through to ServiceMBeanSupport.
- *
- * @param category The logger category name.
- */
- public InterceptorServiceMBeanSupport(final String category)
- {
- super(category);
- }
-
- /**
- * Constructs an <tt>InterceptorServiceMBeanSupport</tt>.
- *
- * Pass-through to ServiceMBeanSupport.
- *
- * @param log The logger to use.
- */
- public InterceptorServiceMBeanSupport(final Logger log)
- {
- super(log);
- }
-
- // InterceptorServiceMBean ---------------------------------------
-
- public void setInterceptables(List interceptables)
- {
- // copy
- if (interceptables != null)
- {
- this.interceptables = new ArrayList(interceptables);
- }
- }
-
- public List getInterceptables()
- {
- // return a copy
- if (interceptables != null)
- {
- return new ArrayList(interceptables);
- }
- return null;
- }
-
- // Protected API -------------------------------------------------
-
- /**
- * Add our interceptor to the target Interceptables.
- *
- * Override invoke(Invocation) to handle the calls.
- *
- * @throws Exception thrown on any interceptor registration error
- */
- protected void attach() throws Exception
- {
- if (interceptor == null)
- {
- attach(new XMBeanInterceptor());
- }
- }
-
- /**
- * Add the provided interceptor to the target Interceptables.
- *
- * @param interceptor the interceptor to add
- * @throws Exception thrown on any interceptor registration error
- */
- protected void attach(Interceptor interceptor) throws Exception
- {
- if (interceptor == null)
- {
- throw new IllegalArgumentException("Null interceptor");
- }
-
- // check we haven't attached already
- if (this.interceptor != null)
- {
- throw new IllegalStateException("Interceptor already attached");
- }
-
- log.debug("Attaching interceptor: " + interceptor.getName());
-
- // remember the interceptor
- this.interceptor = interceptor;
-
- // add the interceptor to the Interceptables; an exception
- // will be thrown if any of them is not Interceptable,
- // in which case detach() should be called.
- if (interceptables != null)
- {
- Object[] params = new Object[] { interceptor };
- String[] signature = new String[] { Interceptor.class.getName() };
-
- for (Iterator i = interceptables.iterator(); i.hasNext(); )
- {
- ObjectName target = (ObjectName)i.next();
- super.server.invoke(target,
- DynamicInterceptor.ADD_INTERCEPTOR,
- params,
- signature);
-
- log.debug("Interceptor attached to: '" + target + "'");
- }
- }
- }
-
- /**
- * Remove the interceptor from the target Interceptables
- */
- protected void detach()
- {
- if (interceptor != null)
- {
- log.debug("Detaching interceptor: " + interceptor.getName());
- if (interceptables != null)
- {
- Object[] params = new Object[] { interceptor };
- String[] signature = new String[] { Interceptor.class.getName() };
-
- for (Iterator i = interceptables.iterator(); i.hasNext(); )
- {
- ObjectName target = (ObjectName)i.next();
- try
- {
- super.server.invoke(target,
- DynamicInterceptor.REMOVE_INTERCEPTOR,
- params,
- signature);
-
- log.debug("Interceptor detached from: '" + target + "'");
- }
- catch (Exception e)
- {
- log.debug("Caught exception while removing interceptor from '" +
- target + "'", e);
- }
- }
- }
- interceptor = null;
- }
- }
-
- /**
- * Use this to forward the call
- */
- protected Object invokeNext(Invocation invocation) throws Throwable
- {
- // call the next in the interceptor chain,
- // if nobody follows dispatch the call
- Interceptor next = invocation.nextInterceptor();
- if (next != null)
- {
- return next.invoke(invocation);
- }
- else
- {
- return invocation.dispatch();
- }
- }
-
- // Override ------------------------------------------------------
-
- /**
- * Override
- */
- protected Object invoke(Invocation invocation) throws Throwable
- {
- return invokeNext(invocation);
- }
-
- // Private Inner Class -------------------------------------------
-
- /**
- * Simple Interceptor delegating to
- * the invoke(Invocation) callback
- */
- private class XMBeanInterceptor extends AbstractInterceptor
- {
- public XMBeanInterceptor()
- {
- super("XMBeanInterceptor('" + InterceptorServiceMBeanSupport.this.getServiceName() + "')");
- }
-
- public Object invoke(Invocation invocation) throws Throwable
- {
- // delegate
- return InterceptorServiceMBeanSupport.this.invoke(invocation);
- }
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/InvalidAttributeException.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/InvalidAttributeException.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/InvalidAttributeException.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,63 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-/**
- * Thrown to indicate that a given attribute value is not valid.
- *
- * @author <a href="mailto:jason at planet57.com">Jason Dillon</a>
- * @version <tt>$Revision$</tt>
- */
-public class InvalidAttributeException
- extends ConfigurationException
-{
- /**
- * Construct a <tt>InvalidAttributeException</tt> with the
- * specified detail message.
- *
- * @param name The attribute name.
- * @param msg The detail message.
- */
- public InvalidAttributeException(final String name, final String msg) {
- super(makeMessage(name, msg));
- }
-
- /**
- * Construct a <tt>InvalidAttributeException</tt> with the specified detail
- * message and nested <tt>Throwable</tt>.
- *
- * @param name The attribute name.
- * @param msg The detail message.
- * @param nested Nested <tt>Throwable</tt>.
- */
- public InvalidAttributeException(final String name, final String msg, final Throwable nested)
- {
- super(makeMessage(name, msg), nested);
- }
-
- /**
- * Make a execption message for the attribute name and detail message.
- */
- private static String makeMessage(final String name, final String msg) {
- return "Invalid value for attribute '" + name + "': " + msg;
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ListenerServiceMBean.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ListenerServiceMBean.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ListenerServiceMBean.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,123 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-/**
- * An extension of the ServiceMBean interface that provides for
- * declarative JMX notification subscription handling.
- * <p>
- * The SubscriptionList attribute is used to specify the list
- * of MBeans/notifications that the listener service instance
- * will subscribe for.
- * <p>
- * The abstract class ListenerServiceMBeanSupport implements
- * this interface.
- *
- * @see ServiceMBean
- * @see ListenerServiceMBeanSupport
- *
- * @author <a href="mailto:dimitris at jboss.org">Dimitris Andreadis</a>
- * @version $Revision$
-**/
-public interface ListenerServiceMBean
- extends ServiceMBean
-{
- // Constants -----------------------------------------------------
-
- /** The XML subscription-list elements and attributes */
- public static final String SL_ROOT_ELEMENT = "subscription-list";
- public static final String SL_MBEAN_ELEMENT = "mbean";
- public static final String SL_FILTER_ELEMENT = "filter";
- public static final String SL_NOTIFICATION_ELEMENT = "notification";
- public static final String SL_MBEAN_NAME_ATTRIBUTE = "name";
- public static final String SL_MBEAN_HANDBACK_ATTRIBUTE = "handback";
- public static final String SL_FILTER_FACTORY_ATTRIBUTE = "factory";
- public static final String SL_NOTIFICATION_TYPE_ATTRIBUTE = "type";
-
- // Public --------------------------------------------------------
-
- /**
- * Used to configure at start-up the JMX notification subscriptions.
- *
- * The configuration is done inline in the mbean descriptor. For example:
- *
- * <code>
- * ...
- * <attribute name="SubscriptionList">
- * <subscription-list>
- * <mbean name="jboss.system:*">
- * <notification type="org.jboss.system.ServiceMBean.start"/>
- * <notification type="org.jboss.system.ServiceMBean.stop"/>
- * </mbean>
- * </subscription-list>
- * </attribute>
- * ...
- * </code>
- *
- * The filter mechanism has been extended to support specification
- * of arbitrary filters, using filter factory plugins:
- *
- * <code>
- * ...
- * <attribute name="SubscriptionList">
- * <subscription-list>
- * <mbean name="jboss.system:*">
- * <filter factory="NotificationFilterSupportFactory">
- * <enable type="org.jboss.system.ServiceMBean.start"/>
- * <enable type="org.jboss.system.ServiceMBean.stop"/>
- * </filter>
- * </mbean>
- * <mbean name="jboss.monitor:service=MemoryMonitor">
- * <filter factory="AttributeChangeNotificationFilterFactory">
- * <enable attribute-name="State"/>
- * </filter>
- * </mbean>
- * <mbean name="JMImplementation:type=MBeanServerDelegate">
- * <filter factory="MBeanServerNotificationFilterFactory">
- * <enable type="JMX.mbean"/>
- * <enable object-name="jboss:type=Service,name=SystemProperties"/>
- * </filter>
- * </mbean>
- * </subscription-list>
- * </attribute>
- * ...
- * </code>
- *
- * 'factory' is the full class name of a class that implements the
- * org.jboss.system.NotificationFilterFactory interface. If the
- * class cannot be loaded, a second attempt is made to load the
- * class from within the org.jboss.system.filterfactory package.
- *
- * Three NotificationFilterFactories corresponding to the three
- * "standard" jmx notification filters, have been pre-packaged.
- *
- * Those are:
- *
- * @see org.jboss.system.filterfactory.AttributeChangeNotificationFilterFactory
- * @see org.jboss.system.filterfactory.MBeanServerNotificationFilterFactory
- * @see org.jboss.system.filterfactory.NotificationFilterSupportFactory
- *
- * See also jboss-subscription.dtd
- **/
- public void setSubscriptionList(org.w3c.dom.Element list);
-
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ListenerServiceMBeanSupport.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ListenerServiceMBeanSupport.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ListenerServiceMBeanSupport.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,828 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Set;
-
-import javax.management.InstanceNotFoundException;
-import javax.management.ListenerNotFoundException;
-import javax.management.MBeanServer;
-import javax.management.MBeanServerNotification;
-import javax.management.MalformedObjectNameException;
-import javax.management.Notification;
-import javax.management.NotificationFilter;
-import javax.management.NotificationFilterSupport;
-import javax.management.NotificationListener;
-import javax.management.ObjectName;
-
-import org.jboss.logging.Logger;
-import org.jboss.mx.server.ServerConstants;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * An abstract base class that provides for declarative JMX notification
- * subscription handling.
- * <p>
- * A JBoss service that is in addition a NotificationListener can
- * subclass ListenerServiceMBeanSupport instead of ServiceMBeanSupport
- * and specify at run-time, inline in the MBean descriptor using the
- * SubscriptionList attribute, the set of MBeans/notifications the
- * service wants to subscribe/receive.
- * <p>
- * Call subscribe(boolean dynamicSubscriptions) at anytime to register to
- * those MBeans and for those notifications that match the specified criteria.
- * Call unsubscribe() to unsubscribe for Notifications.
- * <p>
- * If true is passed to subscribe() the baseclass will monitor for
- * registration events from the MBeanServer and automatically subscribe
- * to new instances of MBeans that match the subscription criteria.
- * Monitoring for unsubscribe events in not necessary, since the MBeanServer
- * automatically removes subscriptions to unregistering MBeans.
- * <p>
- * An alternative subscribe(boolean dynamicSubscription, ObjectName listener)
- * can be used to specify a different MBean as the receiver of the
- * subscribed notifications. The specified MBean must be a NotificationListener.
- * <p>
- * To handle the incoming notifications override the handleNotification2()
- * method. The usual handleNotification() method should not be overriden,
- * since it is used to monitor the incoming notifications for registration
- * events coming from the MBeanServer, before delegating to
- * handleNotification2(), in order to implement dynamic subscriptions.
- *
- * @see ListenerServiceMBean
- * @see NotificationFilterFactory
- *
- * REVISIONS
- * =========
- * 14/03/05, dimitris
- * The filter mechanism has been extended to support specification
- * of arbitrary filters, using dynamic filter factory plugins
- * implementing the NotificationFilterFactory interface.
- * Three filter factories corresponding to the "standard" jmx
- * notification filters are supplied by default in package
- * org.jboss.system.filterfactory.
- *
- * 19/10/04, dimitris
- * renamed inner class MBeanInfo to SubscriptionInfo and made public,
- * using NotificationFilter instead of NotificationFilterSupport and added new
- * subscribe(List subscriptionList, boolean dynamicSubscriptions, ObjectName listener)
- * to allow external programmatic specification of the subscription list.
- *
- * 28/02/04, dimitris
- * explicit subscribe()/unsubscribe() replaced implicit start()/stop();
- * dynamic subscription behaviour can be enabled/disabled, plus it is
- * now possible to specify an external MBean as notification listener.
- *
- * 02/02/04, dimitris
- * Initial version, that resulted by generalizing the notification
- * subscription mechanism of the snmp adapter.
- *
- * @author <a href="mailto:dimitris at jboss.org">Dimitris Andreadis</a>
- *
- * @version $Revision$
-**/
-public abstract class ListenerServiceMBeanSupport
- extends ServiceMBeanSupport
- implements ListenerServiceMBean, NotificationListener
-{
- // Private Data --------------------------------------------------
-
- /** The list of mbean subscriptions */
- private List sublist; // if null, subscriptions not made
-
- /** The mbean subscription config in XML form */
- private Element xmllist; // set through SubscriptionList attribute
-
- /** monitoring and registering to new MBeans, as they appear */
- private boolean dynamicSubscriptions;
-
- /** the receiver of the notifications */
- private ObjectName listener;
-
- /** Handback to identify our own MBeanServerDelegate subscription */
- private Object myHandback;
-
- /** Filter to receive only registration events */
- private NotificationFilterSupport myFilter;
-
- /** Has subscribe() been called and unsubscribe not been called? */
- private boolean subscribed;
-
- // Constructors -------------------------------------------------
-
- /**
- * Constructs a <tt>ListenerServiceMBeanSupport</tt>.
- **/
- public ListenerServiceMBeanSupport()
- {
- super();
- init();
- }
-
- /**
- * Constructs a <tt>ListenerServiceMBeanSupport</tt>.
- *
- * Pass-through to ServiceMBeanSupport.
- *
- * @param type The class type to determine Logger name from.
- **/
- public ListenerServiceMBeanSupport(final Class type)
- {
- super(type);
- init();
- }
-
- /**
- * Constructs a <tt>ListenerServiceMBeanSupport</tt>.
- *
- * Pass-through to ServiceMBeanSupport.
- *
- * @param category The logger category name.
- **/
- public ListenerServiceMBeanSupport(final String category)
- {
- super(category);
- init();
- }
-
- /**
- * Constructs a <tt>ListenerServiceMBeanSupport</tt>.
- *
- * Pass-through to ServiceMBeanSupport.
- *
- * @param log The logger to use.
- **/
- public ListenerServiceMBeanSupport(final Logger log)
- {
- super(log);
- init();
- }
-
- // ListenerServiceMBean Implementation ---------------------------
-
- /**
- * Used to configure the JMX notification subscriptions.
- *
- * The configuration is done inline in the mbean descriptor.
- *
- * See jboss-subscription.dtd
- **/
- public void setSubscriptionList(Element list)
- {
- // deep copy the provided Element for later use
- // not sure if really necessary - play it safe
- this.xmllist = (Element)list.cloneNode(true);
- }
-
- // Public API ----------------------------------------------------
-
- public List<SubscriptionInfo> getSubscriptions()
- {
- return sublist;
- }
-
- public void setSubscriptions(List<SubscriptionInfo> list)
- {
- this.sublist = list;
- }
-
- /**
- * Subscribes this MBean for JMX notifications.
- *
- * @param dynamicSubscriptions indicates whether to monitor and subscribe
- * to new MBeans that match the specification.
- **/
- public void subscribe(boolean dynamicSubscriptions)
- throws Exception
- {
- subscribe(dynamicSubscriptions, this.getServiceName());
- }
-
- /**
- * Subscribes a listener MBean for JMX notifications.
- *
- * @param dynamicSubscriptions indicates whether to monitor and subscribe
- * to new MBeans that match the specification.
- * @param listener the receiver of the notifications.
- **/
- public void subscribe(boolean dynamicSubscriptions, ObjectName listener)
- throws Exception
- {
- // we need an xml subscription specification
- if (this.xmllist != null && this.sublist == null)
- {
- // Parse the XML spec
- log.debug("Parsing subscription specification");
- List subscriptionList = parseXMLSubscriptionSpec(this.xmllist);
-
- subscribe(subscriptionList, dynamicSubscriptions, listener);
- }
- else if (this.sublist != null)
- {
- subscribe(sublist, dynamicSubscriptions, listener);
- }
- else
- log.debug("Subscription specification not provided");
- }
-
- /**
- * Subscribes a listener MBean for JMX notifications.
- *
- * @param subscriptionList the list containing SubscriptionInfo data.
- * @param dynamicSubscriptions indicates whether to monitor and subscribe
- * to new MBeans that match the specification.
- * @param listener the receiver of the notifications.
- **/
- public void subscribe(List subscriptionList, boolean dynamicSubscriptions, ObjectName listener)
- throws Exception
- {
- // return if already subscribed
- if (subscribed)
- return;
-
- // we need an subscription specification
- if (subscriptionList != null)
- {
- // store input
- this.sublist = subscriptionList;
- this.dynamicSubscriptions = dynamicSubscriptions;
- this.listener = listener;
-
- log.debug(this.sublist);
-
- log.debug("Subscribing for JMX notifications" +
- ", dynamic=" + dynamicSubscriptions +
- (this.getServiceName().equals(listener) ? "" :
- ", listener='" + listener + "'"));
-
- bulkRegister();
-
- if (dynamicSubscriptions == true)
- {
- // Subscribe to MBeanServerDelegate MBean for registrations
- getServer().addNotificationListener(
- new ObjectName(ServerConstants.MBEAN_SERVER_DELEGATE),
- this.getServiceName(),
- this.myFilter,
- this.myHandback
- );
-
- log.debug("Subscribed to MBeanServerDelegate, too");
- }
-
- subscribed = true;
- }
- else
- log.debug("Subscription list not provided");
- }
-
- /**
- * Unsubscribes for JMX notifications
- **/
- public void unsubscribe()
- {
- // return if not subscribed
- if (!subscribed)
- return;
-
- log.debug("Removing all JMX notification subscriptions");
- bulkUnregister();
-
- if (this.dynamicSubscriptions == true)
- {
- // Unbscribe from MBeanServerDelegate MBean for registrations
- try {
- getServer().removeNotificationListener(
- new ObjectName(ServerConstants.MBEAN_SERVER_DELEGATE),
- this.getServiceName(),
- this.myFilter,
- this.myHandback
- );
-
- log.debug("Unsubscribed from MBeanServerDelegate, too");
- }
- catch (MalformedObjectNameException e)
- {
- // shouldn't happen!
- log.warn("Could not convert '" + ServerConstants.MBEAN_SERVER_DELEGATE
- + "' to ObjectName", e);
- }
- catch (InstanceNotFoundException e)
- {
- // shouldn't happen
- log.warn("Could not unsubscribe from non-existent MBeanServerDelegate!", e);
- }
- catch (ListenerNotFoundException e)
- {
- // shouldn't happend
- log.warn("Could not unsubscribe from MBeanServerDelegate", e);
- }
- }
- // indicate we've unsubscribed
- this.subscribed = false;
- }
-
- // NotificationListener -----------------------------------------
-
- /**
- * DO NOT OVERRIDE THIS!
- *
- * Handles dynamic subscriptions before delegating to
- * handleNotification2()
- **/
- public void handleNotification(Notification notification, Object handback)
- {
- // check if the notification is for me!
- if (this.dynamicSubscriptions == true && handback == this.myHandback)
- {
- if (log.isTraceEnabled())
- log.trace("It's for me: " + notification + ", handback:" + handback);
-
- String type = notification.getType();
- ObjectName target = null;
- try {
- target = ((MBeanServerNotification)notification).getMBeanName();
- }
- catch (ClassCastException e) {
- log.warn("MBeanServer sent unknown notification class type: " +
- notification.getClass().getName());
- return;
- }
-
- if (type.equals(MBeanServerNotification.REGISTRATION_NOTIFICATION))
- {
- // iterate over the subscription specification
- Iterator i = this.sublist.iterator();
-
- while (i.hasNext())
- {
- SubscriptionInfo mbeanInfo = (SubscriptionInfo)i.next();
-
- ObjectName objectName = mbeanInfo.getObjectName();
-
- try
- {
- if(objectName.apply(target))
- {
- log.debug("ObjectName: '" + target + "' matched '" + objectName + "'");
-
- // go for it!
- singleRegister(
- this.getServer(),
- target,
- this.listener,
- mbeanInfo.getFilter(),
- mbeanInfo.getHandback()
- );
- }
- }
- catch (Exception e)
- {
- // catch exceptions from apply()
- // shouldn't happen
- log.warn("Caught exception from ObjectName.apply("
- + target + ")", e);
- }
- }
- }
- else
- {
- log.warn("Got unknown notification type from MBeanServerDelegate: "
- + type);
- }
- }
- else // delegate to subclass
- handleNotification2(notification, handback);
- }
-
- /**
- * Override to add notification handling!
- **/
- public void handleNotification2(Notification notification, Object handback)
- {
- // empty!
- }
-
- // Private Methods -----------------------------------------------
-
- /**
- * Initialises myself
- **/
- private void init()
- {
- // just pickup a unique object
- this.myHandback = new Integer(Integer.MAX_VALUE);
-
- // allow only registration events
- this.myFilter = new NotificationFilterSupport();
- this.myFilter.enableType(MBeanServerNotification.REGISTRATION_NOTIFICATION);
- }
-
- /**
- * Subscribes for notifications to a single MBean
- **/
- private void singleRegister(
- MBeanServer server, ObjectName target, ObjectName listener,
- NotificationFilter filter, Object handback)
- {
- try
- {
- server.addNotificationListener(target, listener, filter, handback);
-
- logSubscription(target, listener, handback, filter);
- }
- catch (InstanceNotFoundException e)
- {
- // ignore - mbean might not be registered
- log.debug("Could not subscribe to: '" + target
- + "', target or listener MBean not registered");
- }
- catch (RuntimeException e)
- {
- log.warn("Failed to subscribe to: '" + target
- + "', maybe not a notification broadcaster or: '" + listener
- + "', maybe not a notification listener");
- }
- }
-
- /**
- * Unsubscribes for notifications from a single MBean
- **/
- private void singleUnregister(
- MBeanServer server, ObjectName target, ObjectName listener,
- NotificationFilter filter, Object handback)
- {
- try
- {
- // remove the matching subscription
- server.removeNotificationListener(target, listener, filter, handback);
-
- log.debug("Unsubscribed from: '" + target + "'");
- }
- catch (InstanceNotFoundException e)
- {
- // ignore - target mbean not present
- log.debug("Could not unsubscribe from non-existent: '"
- + target + "'");
- }
- catch (ListenerNotFoundException e)
- {
- // May happen if target is not a notification broadcaster
- // and so we hadn't registered in the first place
- log.debug("Could not unsubscribe from: '" + target + "'");
- }
- catch (RuntimeException e)
- {
- // whatever
- log.debug("Could not unsubscribe from: '" + target + "'");
- }
- }
-
- /**
- * Performs the notification subscriptions
- **/
- private void bulkRegister()
- {
- // iterate over the subscription specification
- Iterator i = this.sublist.iterator();
-
- // find out my server
- MBeanServer server = this.getServer();
-
- while (i.hasNext())
- {
- SubscriptionInfo mbeanInfo = (SubscriptionInfo)i.next();
-
- ObjectName objectName = mbeanInfo.getObjectName();
- Object handback = mbeanInfo.getHandback();
- NotificationFilter filter = mbeanInfo.getFilter();
-
- if (objectName.isPattern())
- {
- Set mset = server.queryNames(objectName, null);
-
- log.debug("ObjectName: '" + objectName + "' matched " + mset.size() + " MBean(s)");
-
- Iterator j = mset.iterator();
- while (j.hasNext())
- singleRegister(server, (ObjectName)j.next(), this.listener,
- filter, handback);
- }
- else
- singleRegister(server, objectName, this.listener, filter, handback);
- }
- }
-
- /**
- * Performs bulk unregistration
- **/
- private void bulkUnregister()
- {
- // iterate over the subscription specification
- Iterator i = this.sublist.iterator();
-
- // find out my server
- MBeanServer server = this.getServer();
-
- while (i.hasNext())
- {
- SubscriptionInfo mbeanInfo = (SubscriptionInfo)i.next();
-
- ObjectName objectName = mbeanInfo.getObjectName();
- Object handback = mbeanInfo.getHandback();
- NotificationFilter filter = mbeanInfo.getFilter();
-
- if (objectName.isPattern())
- {
- Set mset = server.queryNames(objectName, null);
-
- log.debug("ObjectName: '" + objectName + "' matched " + mset.size() + " MBean(s)");
-
- Iterator j = mset.iterator();
- while (j.hasNext())
- singleUnregister(server, (ObjectName)j.next(), this.listener,
- filter, handback);
- }
- else
- singleUnregister(server, objectName, this.listener, filter, handback);
- }
- }
-
- /**
- * Logs subscription info
- **/
- private void logSubscription(
- ObjectName objectName, ObjectName listener,
- Object handback, NotificationFilter filter)
- {
- StringBuffer sbuf = new StringBuffer(100);
-
- sbuf.append("Subscribed to: { objectName='").append(objectName);
- sbuf.append("', listener='").append(listener);
- sbuf.append("', handback=").append(handback);
- sbuf.append(", filter=");
- sbuf.append(filter == null ? null : filter.toString());
- sbuf.append(" }");
-
- log.debug(sbuf.toString());
- }
-
- /**
- * Encapsulte the factory and filter creation logic
- */
- private NotificationFilter createNotificationFilter(String factoryClass, Element filterConfig)
- throws Exception
- {
- NotificationFilterFactory factory;
- try
- {
- // try to load the factory Class
- Class clazz = Thread.currentThread().getContextClassLoader().loadClass(factoryClass);
- factory = (NotificationFilterFactory)clazz.newInstance();
- }
- catch (Exception e) // ClassNotFoundException, IllegalAccessException, InstantiationException
- {
- // factory class not found. Make a second try using
- // the 'org.jboss.system.filterfactory.' package prefix
- // for the "standard" filter factories provided with jboss.
- // If that fails, too, rethrow the original exception.
- try
- {
- factoryClass = "org.jboss.system.filterfactory." + factoryClass;
- Class clazz = Thread.currentThread().getContextClassLoader().loadClass(factoryClass);
- factory = (NotificationFilterFactory)clazz.newInstance();
- }
- catch (Exception inner)
- {
- throw e;
- }
- }
- // delegate the filter creation/configuration to the factory
- return factory.createNotificationFilter(filterConfig);
- }
-
- /**
- * Parses the XML subscription specification
- **/
- private ArrayList parseXMLSubscriptionSpec(Element root)
- throws Exception
- {
- ArrayList slist = new ArrayList();
-
- // parse level 0 - subscription-list
- if (!root.getNodeName().equals(SL_ROOT_ELEMENT))
- {
- throw new Exception("Expected '" + SL_ROOT_ELEMENT + "' element, "
- + "got: " + "'" + root.getNodeName() + "'");
- }
- else
- {
- NodeList rootlist = root.getChildNodes();
-
- for (int i = 0; i < rootlist.getLength(); i++)
- {
- // Parse level 1 - look for mbeans
- Node mbean = rootlist.item(i);
-
- if (mbean.getNodeName().equals(SL_MBEAN_ELEMENT))
- {
- // mbean found look for name & handback attrs
- String name = null;
-
- if (((Element)mbean).hasAttribute(SL_MBEAN_NAME_ATTRIBUTE))
- {
- name = ((Element)mbean).getAttribute(SL_MBEAN_NAME_ATTRIBUTE);
- }
- else
- {
- throw new Exception("'" + SL_MBEAN_ELEMENT + "' element must have a '"
- + SL_MBEAN_NAME_ATTRIBUTE + "' attribute");
- }
-
- String handback = null;
- if (((Element)mbean).hasAttribute(SL_MBEAN_HANDBACK_ATTRIBUTE))
- {
- handback = ((Element)mbean).getAttribute(SL_MBEAN_HANDBACK_ATTRIBUTE);
- }
-
- // try to convert name to the correct data type
- // may throw MalformedObjectNameException
- ObjectName objectName = new ObjectName(name);
-
- // Parse level 2 - see if we have a filter for this subscription
- NotificationFilter filter = null;
-
- NodeList mbeanChildren = mbean.getChildNodes();
-
- // check for filter spec, as a single mbean child node
- for (int j = 0; j < mbeanChildren.getLength(); j++)
- {
- Node mbeanChildNode = mbeanChildren.item(j);
-
- // check if this is a 'filter' node
- if (mbeanChildNode.getNodeName().equals(SL_FILTER_ELEMENT))
- {
- // look for the 'factory' attribute
- String factory = null;
- if (((Element)mbeanChildNode).hasAttribute(SL_FILTER_FACTORY_ATTRIBUTE))
- {
- factory = ((Element)mbeanChildNode).getAttribute(SL_FILTER_FACTORY_ATTRIBUTE);
-
- // instantiate the factory and request the filter
- filter = createNotificationFilter(factory, (Element)mbeanChildNode);
- break;
- }
- else
- {
- throw new Exception("'" + SL_FILTER_ELEMENT + "' element must have a '"
- + SL_FILTER_FACTORY_ATTRIBUTE + "' attribute");
- }
- }
- }
-
- if (filter == null)
- {
- // if no filter has been set check for old-style
- // <notification type="..."/> construct that results
- // in a fixed NotificationFilterSupport filter
-
- // need to find out all notification types (if any)
- // in order to create the Notification filter
- ArrayList tmplist = new ArrayList(mbeanChildren.getLength());
-
- for (int j = 0; j < mbeanChildren.getLength(); j++)
- {
- Node mbeanChildNode = mbeanChildren.item(j);
-
- // check if this is a 'notification' element
- if (mbeanChildNode.getNodeName().equals(SL_NOTIFICATION_ELEMENT))
- {
- // look for 'type' attribute
- String type = null;
- if (((Element)mbeanChildNode).hasAttribute(SL_NOTIFICATION_TYPE_ATTRIBUTE))
- {
- type = ((Element)mbeanChildNode).getAttribute(SL_NOTIFICATION_TYPE_ATTRIBUTE);
- tmplist.add(type);
- }
- else
- {
- throw new Exception("'" + SL_NOTIFICATION_ELEMENT + "' element must have a '"
- + SL_NOTIFICATION_TYPE_ATTRIBUTE + "' attribute");
- }
- }
- }
- // create the filter (if needed)
- if (tmplist.size() > 0)
- {
- NotificationFilterSupport sfilter = new NotificationFilterSupport();
- for (int j = 0; j < tmplist.size(); j++)
- {
- sfilter.enableType((String)tmplist.get(j));
- }
- filter = sfilter;
- }
- }
- slist.add(new SubscriptionInfo(objectName, handback, filter));
- }
- }
- }
- return slist;
- }
-
- // Inner Class ---------------------------------------------------
-
- /**
- * Inner data holder class to store the parsed subscription specification.
- **/
- public static final class SubscriptionInfo
- {
- // Private Data -----------------------------------------------
-
- /** MBean notification broadcaster or pattern */
- private ObjectName objectName;
-
- /** Optional handback object to identify a subscription */
- private Object handback;
-
- /** Arbitrary NotificationFilter */
- private NotificationFilter filter;
-
- // Constructor ------------------------------------------------
-
- /**
- * Simple CTOR
- **/
- public SubscriptionInfo(ObjectName objectName, Object handback, NotificationFilter filter)
- {
- this.objectName = objectName;
- this.handback = handback;
- this.filter = filter;
- }
-
- // Accessors --------------------------------------------------
- /**
- * Gets objectname
- **/
- public ObjectName getObjectName()
- {
- return this.objectName;
- }
-
- /**
- * Gets handback object
- **/
- public Object getHandback()
- {
- return this.handback;
- }
-
- /**
- * Gets notification filter
- **/
- public NotificationFilter getFilter()
- {
- return this.filter;
- }
-
- /**
- * Pretty prints
- **/
- public String toString()
- {
- StringBuffer sbuf = new StringBuffer(100);
-
- sbuf.append("SubscriptionInfo { objectName='").append(this.objectName);
- sbuf.append("', handback=").append(this.handback);
- sbuf.append(", filter=");
- sbuf.append(this.filter == null ? null : this.filter.toString());
-
- sbuf.append(" }");
-
- return sbuf.toString();
- }
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/MissingAttributeException.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/MissingAttributeException.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/MissingAttributeException.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,60 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-/**
- * Thrown to indicate that a required attribute has not been set.
- *
- * @author <a href="mailto:jason at planet57.com">Jason Dillon</a>
- * @version <tt>$Revision$</tt>
- */
-public class MissingAttributeException
- extends ConfigurationException
-{
- /**
- * Construct a <tt>MissingAttributeException</tt> with the specified detail
- * message.
- *
- * @param name The attribute name.
- */
- public MissingAttributeException(final String name) {
- super(makeMessage(name));
- }
-
- /**
- * Construct a <tt>MissingAttributeException</tt> with the specified detail
- * message and nested <tt>Throwable</tt>.
- *
- * @param name The attribute name.
- * @param nested Nested <tt>Throwable</tt>.
- */
- public MissingAttributeException(final String name, final Throwable nested) {
- super(makeMessage(name), nested);
- }
-
- /**
- * Make a execption message for the attribute name.
- */
- private static String makeMessage(final String name) {
- return "Missing attribute '" + name + "'";
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/NotificationFilterFactory.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/NotificationFilterFactory.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/NotificationFilterFactory.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,50 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import javax.management.NotificationFilter;
-
-import org.w3c.dom.Element;
-
-/**
- * Abstracts NotificationFilter creation based on an arbritrary
- * xml element fragment. Used by ListenerServiceMBeanSupport
- * to enable NotificationFilterFactory plugins.
- *
- * @see ListenerServiceMBeanSupport
- *
- * @author <a href="mailto:dimitris at jboss.org">Dimitris Andreadis</a>
- * @version $Revision$
-**/
-public interface NotificationFilterFactory
-{
- /**
- * Create a notification filter implementation and initialize
- * it, using the passed xml element fragment.
- *
- * @param filterConfig the xml fragment to use for configuring the filter
- * @return an initialized NotificationFilter
- * @throws Exception in case the xml fragment cannot be parsed properly
- */
- public NotificationFilter createNotificationFilter(Element filterConfig)
- throws Exception;
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/SecurityActions.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/SecurityActions.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/SecurityActions.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,81 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import java.security.AccessController;
-import java.security.PrivilegedAction;
-
-/**
- * SecurityActions.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-class SecurityActions
-{
-
- private static ClassLoader setContextClassLoaderInternal(final ClassLoader classLoader)
- {
- ClassLoader result = Thread.currentThread().getContextClassLoader();
- if (classLoader != null)
- Thread.currentThread().setContextClassLoader(classLoader);
- return result;
- }
-
- static ClassLoader setContextClassLoader(final ClassLoader classLoader)
- {
- if (System.getSecurityManager() == null)
- {
- return setContextClassLoaderInternal(classLoader);
- }
- else
- {
- return AccessController.doPrivileged(new PrivilegedAction<ClassLoader>()
- {
- public ClassLoader run()
- {
- return setContextClassLoaderInternal(classLoader);
- }
- });
- }
- }
-
- static void resetContextClassLoader(final ClassLoader classLoader)
- {
- if (System.getSecurityManager() == null)
- {
- Thread.currentThread().setContextClassLoader(classLoader);
- }
- else
- {
- AccessController.doPrivileged(new PrivilegedAction<Object>()
- {
- public Object run()
- {
- Thread.currentThread().setContextClassLoader(classLoader);
- return null;
- }
- });
- }
- }
-
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceBinding.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceBinding.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceBinding.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,42 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import javax.management.ObjectName;
-
-/**
- * A policy used by ServiceController to allow the override
- * of MBean attribute values at configuration time.
- *
- * @author <a href="dimitris at jboss.org">Dimitris Andreadis</a>
- * @version $Revision$
- */
-public interface ServiceBinding
-{
- /**
- * Possibly override the configuration of a service.
- *
- * @param serviceName the JMX ObjectName of the service
- * @exception Exception thrown on failure to override a configuration
- */
- void applyServiceConfig(ObjectName serviceName) throws Exception;
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceConfigurator.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceConfigurator.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceConfigurator.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,448 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import java.io.IOException;
-import java.io.StringWriter;
-import java.io.Writer;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.List;
-
-import javax.management.Attribute;
-import javax.management.InstanceNotFoundException;
-import javax.management.MBeanAttributeInfo;
-import javax.management.MBeanInfo;
-import javax.management.MBeanServer;
-import javax.management.ObjectName;
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerException;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-
-import org.jboss.logging.Logger;
-import org.jboss.mx.util.JMXExceptionDecoder;
-import org.jboss.system.metadata.ServiceAttributeMetaData;
-import org.jboss.system.metadata.ServiceMetaData;
-import org.jboss.system.metadata.ServiceMetaDataParser;
-import org.jboss.system.metadata.ServiceValueContext;
-import org.jboss.util.xml.DOMWriter;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/**
- * Service configuration helper.
- *
- * @author <a href="mailto:marc at jboss.org">Marc Fleury</a>
- * @author <a href="mailto:hiram at jboss.org">Hiram Chirino</a>
- * @author <a href="mailto:d_jencks at users.sourceforge.net">David Jencks</a>
- * @author <a href="mailto:jason at planet57.com">Jason Dillon</a>
- * @author <a href="mailto:dimitris at jboss.org">Dimitris Andreadis</a>
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version <tt>$Revision$</tt>
- */
-public class ServiceConfigurator
-{
- /** The MBean server which this service is registered in. */
- private final MBeanServer server;
-
- /** The parent service controller */
- private final ServiceController serviceController;
-
- /** The ServiceCreator */
- private final ServiceCreator serviceCreator;
-
- /** Instance logger. */
- private static final Logger log = Logger.getLogger(ServiceConfigurator.class);
-
- /**
- * Rethrow an error as an exception
- *
- * @param context the context
- * @param t the original throwable
- * @return never
- * @throws Exception always
- */
- public static Exception rethrow(String context, Throwable t) throws Exception
- {
- if (t instanceof Error)
- throw (Error) t;
- else if (t instanceof Exception)
- throw (Exception) t;
- throw new RuntimeException(context, t);
- }
-
- /**
- * Configure an MBean
- *
- * @param server the server
- * @param controller the service controller
- * @param objectName the object name
- * @param classLoaderName the classloader object name
- * @param attrs the attributes
- * @throws Exception for any error
- */
- public static void configure(MBeanServer server, ServiceController controller, ObjectName objectName, ObjectName classLoaderName, Collection<ServiceAttributeMetaData> attrs) throws Exception
- {
- server = checkMBeanServer(server, controller);
- ClassLoader cl = server.getClassLoader(classLoaderName);
- configure(server, controller, objectName, cl, attrs);
- }
-
- /**
- * Configure an MBean
- *
- * @param server the server
- * @param controller the service controller
- * @param objectName the object name
- * @param cl the classloader
- * @param attrs the attributes
- * @throws Exception for any error
- */
- public static void configure(MBeanServer server, ServiceController controller, ObjectName objectName, ClassLoader cl, Collection<ServiceAttributeMetaData> attrs) throws Exception
- {
- ServiceValueContext valueContext = new ServiceValueContext(server, controller, cl);
- server = checkMBeanServer(server, controller);
-
- HashMap<String, MBeanAttributeInfo> attributeMap = getAttributeMap(server, objectName);
-
- for (ServiceAttributeMetaData attribute : attrs)
- {
- String attributeName = attribute.getName();
- if (attributeName == null || attributeName.length() == 0)
- throw new RuntimeException("No or empty attribute name for " + objectName);
- MBeanAttributeInfo attributeInfo = attributeMap.get(attributeName);
- if (attributeInfo == null)
- {
- throw new RuntimeException("No Attribute found with name: " + attributeName + " for " + objectName
- +", attributes: "+attributeMap.keySet());
- }
-
- valueContext.setAttributeInfo(attributeInfo);
- Object value = null;
- ClassLoader previous = SecurityActions.setContextClassLoader(cl);
- try
- {
- value = attribute.getValue(valueContext);
- }
- finally
- {
- SecurityActions.resetContextClassLoader(previous);
- }
- try
- {
- if (log.isDebugEnabled())
- {
- Object outputValue = value;
- if (attributeName.toLowerCase().indexOf("password") != -1)
- outputValue = "****";
- log.debug(attributeName + " set to " + outputValue + " in " + objectName);
- }
- server.setAttribute(objectName, new Attribute(attributeName, value));
- }
- catch (Throwable t)
- {
- throw new RuntimeException("Exception setting attribute " + attributeName + " on mbean " + objectName, JMXExceptionDecoder.decode(t));
- }
- }
- }
-
- /**
- * Check the server/controller parameters
- *
- * @param server the server
- * @param controller the controller
- * @return the server
- */
- private static MBeanServer checkMBeanServer(MBeanServer server, ServiceController controller)
- {
- if (server != null)
- return server;
-
- if (controller != null)
- return controller.getMBeanServer();
-
- throw new IllegalArgumentException("Either the server or controller must be passed");
- }
-
- /**
- * Get an attribute map for the MBean
- *
- * @param server the server
- * @param objectName the object name
- * @return a map of attribute name to attribute info
- * @throws Exception for any error
- */
- public static HashMap<String, MBeanAttributeInfo> getAttributeMap(MBeanServer server, ObjectName objectName) throws Exception
- {
- MBeanInfo info;
- try
- {
- info = server.getMBeanInfo(objectName);
- }
- catch (InstanceNotFoundException e)
- {
- // The MBean is no longer available
- throw new RuntimeException("Trying to configure nonexistent mbean: " + objectName);
- }
- catch (Exception e)
- {
- throw new RuntimeException("Could not get mbeanInfo", JMXExceptionDecoder.decode(e));
- }
- if (info == null)
- throw new RuntimeException("MBeanInfo is null for mbean: " + objectName);
- MBeanAttributeInfo[] attributes = info.getAttributes();
- HashMap<String, MBeanAttributeInfo> attributeMap = new HashMap<String, MBeanAttributeInfo>();
- for (int i = 0; i < attributes.length; i++)
- {
- MBeanAttributeInfo attr = attributes[i];
- attributeMap.put(attr.getName(), attr);
- }
-
- return attributeMap;
- }
-
- /**
- * Constructor
- *
- * @deprecated the service controller no longer uses the service configurator and vice-versa
- * @param server the mbean server
- * @param serviceController the servie controller
- * @param serviceCreator the service creator
- */
- public ServiceConfigurator(MBeanServer server, ServiceController serviceController, ServiceCreator serviceCreator)
- {
- if (server == null)
- throw new IllegalArgumentException("Null server");
- if (serviceCreator == null)
- throw new IllegalArgumentException("Null serverCreator");
-
- this.server = server;
- this.serviceController = serviceController;
- this.serviceCreator = serviceCreator;
- }
-
- /**
- * The <code>install</code> method iterates through the mbean tags in the
- * supplied xml configuration and creates and configures the mbeans shown.
- * The mbean configuration can be nested.
- *
- * @deprecated the service controller no longer uses the service configurator and vice-versa
- * @param config the xml <code>Element</code> containing the configuration of
- * the mbeans to create and configure.
- * @param loaderName the classloader's ObjectName
- * @return a <code>List</code> of ObjectNames of created mbeans.
- * @throws Exception if an error occurs
- */
- public List<ObjectName> install(Element config, ObjectName loaderName) throws Exception
- {
- // Parse the xml
- ServiceMetaDataParser parser = new ServiceMetaDataParser(config);
- List<ServiceMetaData> metaDatas = parser.parse();
-
- // Track the registered object names
- List<ObjectName> result = new ArrayList<ObjectName>(metaDatas.size());
-
- // Go through each mbean in the passed xml
- for (ServiceMetaData metaData : metaDatas)
- {
- ObjectName objectName = metaData.getObjectName();
- Collection<ServiceAttributeMetaData> attrs = metaData.getAttributes();
- // Install and configure the mbean
- try
- {
- ServiceCreator.install(server, objectName, metaData, null);
- result.add(objectName);
- configure(server, null, objectName, loaderName, attrs);
- }
- catch (Throwable t)
- {
- // Something went wrong
- for (ObjectName name : result)
- {
- try
- {
- serviceCreator.remove(name);
- }
- catch (Exception e)
- {
- log.error("Error removing mbean after failed deployment: " + name, e);
- }
- }
- throw rethrow("Error during install", t);
- }
- }
- return result;
- }
-
- /**
- * Builds a string that consists of the configuration elements of the
- * currently running MBeans registered in the server.
- *
- * @todo replace with more sophisticated mbean persistence mechanism.
- * @param server the MBeanServer
- * @param serviceController the service controller
- * @param objectNames the object names to retrieve
- * @return the xml string
- * @throws Exception Failed to construct configuration.
- */
- public static String getConfiguration(MBeanServer server, ServiceController serviceController, ObjectName[] objectNames) throws Exception
- {
- Writer out = new StringWriter();
-
- DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
- DocumentBuilder builder = factory.newDocumentBuilder();
- Document doc = builder.newDocument();
-
- Element serverElement = doc.createElement("server");
-
- // Store attributes as XML
- for (int j = 0; j < objectNames.length; j++)
- {
- Element mbeanElement = internalGetConfiguration(doc, server, serviceController, objectNames[j]);
- serverElement.appendChild(mbeanElement);
- }
-
- doc.appendChild(serverElement);
-
- // Write configuration
- new DOMWriter(out).setPrettyprint(true).print(doc);
-
- out.close();
-
- // Return configuration
- return out.toString();
- }
-
- private static Element internalGetConfiguration(Document doc, MBeanServer server, ServiceController serviceController, ObjectName name) throws Exception
- {
- Element mbeanElement = doc.createElement("mbean");
- mbeanElement.setAttribute("name", name.toString());
-
- MBeanInfo info = server.getMBeanInfo(name);
- mbeanElement.setAttribute("code", info.getClassName());
- MBeanAttributeInfo[] attributes = info.getAttributes();
- boolean trace = log.isTraceEnabled();
- for (int i = 0; i < attributes.length; i++)
- {
- if (trace)
- log.trace("considering attribute: " + attributes[i]);
- if (attributes[i].isReadable() && attributes[i].isWritable())
- {
- Element attributeElement = null;
- if (attributes[i].getType().equals("javax.management.ObjectName"))
- {
- attributeElement = doc.createElement("depends");
- attributeElement.setAttribute("optional-attribute-name", attributes[i].getName());
- }
- else
- {
- attributeElement = doc.createElement("attribute");
- attributeElement.setAttribute("name", attributes[i].getName());
- }
- Object value = server.getAttribute(name, attributes[i].getName());
-
- if (value != null)
- {
- if (value instanceof Element)
- {
- attributeElement.appendChild(doc.importNode((Element) value, true));
- }
- else
- {
- attributeElement.appendChild(doc.createTextNode(value.toString()));
- }
- }
- mbeanElement.appendChild(attributeElement);
- }
- }
-
- ServiceContext sc = serviceController.getServiceContext(name);
- for (ServiceContext needs : sc.iDependOn)
- {
- Element dependsElement = doc.createElement("depends");
- dependsElement.appendChild(doc.createTextNode(needs.objectName.toString()));
- mbeanElement.appendChild(dependsElement);
- }
-
- return mbeanElement;
- }
-
- /**
- * Builds a string that consists of the configuration elements of the
- * currently running MBeans registered in the server.
- *
- * TODO replace with more sophisticated mbean persistence mechanism.
- * @param objectNames the object names
- * @return the xml string
- * @throws Exception Failed to construct configuration.
- */
- public String getConfiguration(ObjectName[] objectNames) throws Exception
- {
- return getConfiguration(server, serviceController, objectNames);
- }
-
- /**
- * A utility method that transforms the contents of the argument element into
- * a StringBuffer representation that can be reparsed.
- *
- * [FIXME] This is not a general DOMUtils method because of its funny contract. It does not
- * support multiple child elements neither can it deal with text content.
- *
- * @param element - the parent dom element whose contents are to be extracted as an xml document string.
- * @return the xml document string.
- * @throws IOException for an error during IO
- * @throws TransformerException for an erro during transformation
- */
- public static StringBuffer getElementContent(Element element) throws IOException, TransformerException
- {
- NodeList children = element.getChildNodes();
- Element content = null;
- for (int n = 0; n < children.getLength(); n++)
- {
- Node node = children.item(n);
- if (node.getNodeType() == Node.ELEMENT_NODE)
- {
- content = (Element)node;
- break;
- }
- }
- if (content == null)
- return null;
-
- // Get a parsable representation of this elements content
- DOMSource source = new DOMSource(content);
- TransformerFactory tFactory = TransformerFactory.newInstance();
- Transformer transformer = tFactory.newTransformer();
- StringWriter sw = new StringWriter();
- StreamResult result = new StreamResult(sw);
- transformer.transform(source, result);
- sw.close();
- return sw.getBuffer();
- }
-}
\ No newline at end of file
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceContext.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceContext.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceContext.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,141 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import java.io.Serializable;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import javax.management.ObjectName;
-
-/**
- * ServiceContext holds information for the Service
- *
- * @see Service
- * @see ServiceMBeanSupport
- *
- * @author <a href="mailto:marc.fleury at jboss.org">marc fleury</a>
- * @author <a href="mailto:dimitris at jboss.org">Dimitris Andreadis</a>
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class ServiceContext implements Serializable
-{
- /** @since 4.0.2 */
- private static final long serialVersionUID = 7461263042948325633L;
-
- /** The possible string-fied states */
- private static final String[] stateNames = {
- "INSTALLED",
- "CONFIGURED",
- "CREATED",
- "RUNNING",
- "FAILED",
- "STOPPED",
- "DESTROYED",
- "NOTYETINSTALLED"
- };
-
- /** Valid service states */
- public static final int INSTALLED = 0;
- public static final int CONFIGURED = 1;
- public static final int CREATED = 2;
- public static final int RUNNING = 3;
- public static final int FAILED = 4;
- public static final int STOPPED = 5;
- public static final int DESTROYED = 6;
- public static final int NOTYETINSTALLED = 7;
-
- /** The name of the service **/
- public ObjectName objectName;
-
- /** State of the service **/
- public int state = NOTYETINSTALLED;
-
- /** Dependent beans **/
- public List<ServiceContext> iDependOn = new LinkedList<ServiceContext>();
-
- /** Beans that depend on me **/
- public List<ServiceContext> dependsOnMe = new LinkedList<ServiceContext>();
-
- /** The fancy proxy to my service calls **/
- public transient Service proxy;
-
- /** Cause for failure */
- public Throwable problem;
-
- public String getStateString()
- {
- return getStateString(state);
- }
-
- public static String getStateString(int stateInt)
- {
- return stateNames[stateInt];
- }
-
- public Throwable getProblem()
- {
- return problem;
- }
-
- public void setProblem(Throwable problem)
- {
- this.problem = problem;
- }
-
- public String toString()
- {
- StringBuffer sbuf = new StringBuffer(512);
-
- sbuf.append("ObjectName: ").append(objectName);
- sbuf.append("\n State: ").append(stateNames[state]);
-
- if (state == FAILED && problem != null)
- {
- sbuf.append("\n Reason: ").append(problem.toString());
- }
- printList(sbuf, "\n I Depend On:", iDependOn);
- printList(sbuf, "\n Depends On Me:", dependsOnMe);
-
- // this magically makes *all* jmx-console outputs look better :)
- sbuf.append("\n");
-
- return sbuf.toString();
- }
-
- @SuppressWarnings("unchecked")
- private void printList(StringBuffer sbuf, String msg, List ctxs)
- {
- if (ctxs.size() > 0)
- {
- // only out stuff, if there are indeed dependencies
- sbuf.append(msg);
- for (Iterator i = ctxs.iterator(); i.hasNext(); )
- {
- ServiceContext sc = (ServiceContext) i.next();
- sbuf.append("\n ");
- sbuf.append(sc.objectName);
- }
- }
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceController.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceController.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceController.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,751 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-import java.util.ListIterator;
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.CopyOnWriteArrayList;
-
-import javax.management.MBeanRegistration;
-import javax.management.MBeanServer;
-import javax.management.Notification;
-import javax.management.ObjectName;
-
-import org.jboss.dependency.spi.Controller;
-import org.jboss.dependency.spi.ControllerContext;
-import org.jboss.dependency.spi.ControllerMode;
-import org.jboss.dependency.spi.ControllerState;
-import org.jboss.dependency.spi.DependencyInfo;
-import org.jboss.dependency.spi.DependencyItem;
-import org.jboss.kernel.Kernel;
-import org.jboss.kernel.plugins.bootstrap.basic.BasicBootstrap;
-import org.jboss.kernel.spi.dependency.KernelController;
-import org.jboss.logging.Logger;
-import org.jboss.mx.server.ServerConstants;
-import org.jboss.mx.util.JBossNotificationBroadcasterSupport;
-import org.jboss.mx.util.ObjectNameFactory;
-import org.jboss.system.metadata.ServiceMetaData;
-import org.jboss.system.metadata.ServiceMetaDataParser;
-import org.jboss.system.microcontainer.LifecycleDependencyItem;
-import org.jboss.system.microcontainer.ServiceControllerContext;
-import org.w3c.dom.Element;
-
-/**
- * This is the main Service Controller. A controller can deploy a service to a
- * jboss.system It installs by delegating, it configures by delegating<p>
- *
- * This class has been rewritten to delegate to the microcontainer's
- * generic controller. Like the original ServiceController, all state
- * transitions must be handled manually, e.g. driven by the deployer
- * invoking create, start, stop, etc.
- * That is with one exception; we register ourselves an automatic context.
- *
- * @see org.jboss.system.Service
- *
- * @author <a href="mailto:marc.fleury at jboss.org">Marc Fleury</a>
- * @author <a href="mailto:d_jencks at users.sourceforge.net">David Jencks</a>
- * @author <a href="mailto:scott.stark at jboss.org">Scott Stark</a>
- * @author <a href="mailto:dimitris at jboss.org">Dimitris Andreadis</a>
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class ServiceController extends JBossNotificationBroadcasterSupport
- implements ServiceControllerMBean, MBeanRegistration
-{
- /** The ObjectName of the default loader repository */
- public static final ObjectName DEFAULT_LOADER_REPOSITORY = ObjectNameFactory.create(ServerConstants.DEFAULT_LOADER_NAME);
-
- /** The operation name for lifecycle */
- public static final String JBOSS_INTERNAL_LIFECYCLE = "jbossInternalLifecycle";
-
- /** The signature for lifecycle operations */
- public static final String[] JBOSS_INTERNAL_LIFECYCLE_SIG = new String[] { String.class.getName() };
-
- /** Class logger. */
- private static final Logger log = Logger.getLogger(ServiceController.class);
-
- /** The kernel */
- protected Kernel kernel;
-
- /** A callback to the JMX MBeanServer */
- protected MBeanServer server;
-
- /** The contexts */
- protected Map<ObjectName, ServiceControllerContext> installed = new ConcurrentHashMap<ObjectName, ServiceControllerContext>();
-
- /** The contexts in installation order */
- protected CopyOnWriteArrayList<ServiceControllerContext> installedOrder = new CopyOnWriteArrayList<ServiceControllerContext>();
-
- /**
- * Rethrow an error as an exception
- *
- * @param context the context
- * @param t the original throwable
- * @return never
- * @throws Exception always
- */
- public static Exception rethrow(String context, Throwable t) throws Exception
- {
- if (t instanceof Error)
- throw (Error) t;
- else if (t instanceof Exception)
- throw (Exception) t;
- throw new RuntimeException(context, t);
- }
-
- /**
- * Get exception that will expose stacktrace.
- *
- * @return the stracktrace exposing exception
- */
- protected Throwable getStackTrace()
- {
- //noinspection ThrowableInstanceNeverThrown
- return new Throwable("STACKTRACE");
- }
-
- /**
- * Get the MBeanServer
- *
- * @return the server
- */
- public MBeanServer getMBeanServer()
- {
- return server;
- }
-
- /**
- * Set the server.
- *
- * @param server the server.
- */
- public void setMBeanServer(MBeanServer server)
- {
- this.server = server;
- }
-
- /**
- * Get the kernel.
- *
- * @return the kernel.
- */
- public Kernel getKernel()
- {
- return kernel;
- }
-
- /**
- * Set the kernel.
- *
- * @param kernel the kernel.
- */
- public void setKernel(Kernel kernel)
- {
- this.kernel = kernel;
- }
-
- public List<ServiceContext> listDeployed()
- {
- // Retrieve the service context from all our installed contexts
- ArrayList<ServiceContext> result = new ArrayList<ServiceContext>(installedOrder.size());
- for (ServiceControllerContext context : installedOrder)
- result.add(context.getServiceContext());
- return result;
- }
-
- public List<ServiceContext> listIncompletelyDeployed()
- {
- // Retrieve the service contexts that are not deployed properly
- ArrayList<ServiceContext> result = new ArrayList<ServiceContext>();
- for (ServiceControllerContext context : installedOrder)
- {
- ServiceContext sc = context.getServiceContext();
- if (sc.state != ServiceContext.CREATED &&
- sc.state != ServiceContext.RUNNING &&
- sc.state != ServiceContext.STOPPED &&
- sc.state != ServiceContext.DESTROYED)
- {
- result.add(sc);
- }
- }
- return result;
- }
-
- public List<ObjectName> listDeployedNames()
- {
- // Get all the object names from our installed contexts
- ArrayList<ObjectName> result = new ArrayList<ObjectName>(installed.size());
- for (ObjectName name : installed.keySet())
- result.add(name);
- return result;
- }
-
- public String listConfiguration(ObjectName[] objectNames) throws Exception
- {
- return ServiceConfigurator.getConfiguration(server, this, objectNames);
- }
-
- public List<ObjectName> install(List<ServiceMetaData> metaDatas, ObjectName loaderName) throws Exception
- {
- KernelController controller = kernel.getController();
-
- // Track the registered mbeans both for returning the result
- // and uninstalling in the event of an error
- List<ObjectName> result = new ArrayList<ObjectName>(metaDatas.size());
- List<ServiceControllerContext> contexts = new ArrayList<ServiceControllerContext>(metaDatas.size());
-
- // Go through each mbean in the passed xml
- for (ServiceMetaData metaData : metaDatas)
- {
- metaData.setClassLoaderName(loaderName);
-
- // Install the context to the configured level
- ServiceControllerContext context = new ServiceControllerContext(this, metaData);
- try
- {
- doInstall(controller, context);
- contexts.add(context);
- doChange(controller, context, ControllerState.CONFIGURED, "configure");
- result.add(context.getObjectName());
- }
- catch (Throwable t)
- {
- // Something went wrong
- for (ServiceControllerContext ctx : contexts)
- safelyRemoveAnyRegisteredContext(ctx);
-
- throw rethrow("Error during install", t);
- }
- }
- return result;
- }
-
- public ObjectName install(ServiceMetaData metaData, ObjectName loaderName) throws Exception
- {
- KernelController controller = kernel.getController();
- metaData.setClassLoaderName(loaderName);
- ObjectName name = metaData.getObjectName();
-
- // Install the context to the configured level
- ServiceControllerContext context = new ServiceControllerContext(this, metaData);
- try
- {
- doInstall(controller, context);
- doChange(controller, context, ControllerState.CONFIGURED, "configure");
- return context.getObjectName();
- }
- catch (Throwable t)
- {
- throw rethrow("Error during install " + name, t);
- }
- }
-
- public List<ObjectName> install(Element config, ObjectName loaderName) throws Exception
- {
- // Parse the xml
- ServiceMetaDataParser parser = new ServiceMetaDataParser(config);
- List<ServiceMetaData> metaDatas = parser.parse();
- return install(metaDatas, loaderName);
- }
-
- /**
- * Install an MBean without any meta data
- *
- * @param name the object name
- * @param object the mbean object
- * @throws Exception for any error
- */
- public void install(ObjectName name, Object object) throws Exception
- {
- if (name == null)
- throw new IllegalArgumentException("Null name");
- if (object == null)
- throw new IllegalArgumentException("Null object");
-
- KernelController controller = kernel.getController();
-
- ServiceControllerContext context = new ServiceControllerContext(this, name, object);
- try
- {
- doInstall(controller, context);
- doChange(controller, context, ControllerState.CONFIGURED, "configure");
- }
- catch (Throwable t)
- {
- // Something went wrong
- safelyRemoveAnyRegisteredContext(context);
-
- throw rethrow("Error during install", t);
- }
- }
-
- public void register(ObjectName serviceName) throws Exception
- {
- register(serviceName, null);
- }
-
- public void register(ObjectName serviceName, Collection<ObjectName> depends) throws Exception
- {
- register(serviceName, depends, true);
- }
-
- /**
- * Register the mbean against the microkernel with dependencies.
- *
- * @param serviceName the object name
- * @param depends the dependencies
- * @param includeLifecycle the includes lifecycle flag
- * @throws Exception for any error
- */
- public void register(ObjectName serviceName, Collection<ObjectName> depends, boolean includeLifecycle) throws Exception
- {
- register(serviceName, depends, includeLifecycle, null);
- }
-
- /**
- * Register the mbean against the microkernel with dependencies.
- *
- * @param serviceName the object name
- * @param depends the dependencies
- * @param includeLifecycle the includes lifecycle flag
- * @param target the target
- * @throws Exception for any error
- */
- public void register(ObjectName serviceName, Collection<ObjectName> depends, boolean includeLifecycle, Object target) throws Exception
- {
- if (serviceName == null)
- {
- log.warn("Ignoring request to register null service: ", getStackTrace());
- return;
- }
-
- log.debug("Registering service " + serviceName);
-
- // This is an already registered mbean
- KernelController controller = kernel.getController();
- ServiceControllerContext context = new ServiceControllerContext(this, serviceName, includeLifecycle, target);
- if (depends != null)
- addDependencies(context, depends);
-
- // Install the context to the configured level
- try
- {
- doInstall(controller, context);
- doChange(controller, context, ControllerState.CONFIGURED, "configure");
- }
- catch (Throwable t)
- {
- // Something went wrong
- safelyRemoveAnyRegisteredContext(context);
-
- throw rethrow("Error during register: " + serviceName, t);
- }
- }
-
- public void create(ObjectName serviceName) throws Exception
- {
- create(serviceName, null);
- }
-
- public void create(ObjectName serviceName, Collection<ObjectName> depends) throws Exception
- {
- if (serviceName == null)
- {
- log.warn("Ignoring request to create null service: ", getStackTrace());
- return;
- }
-
- log.debug("Creating service " + serviceName);
-
- // Register if not already done so
- ServiceControllerContext context = installed.get(serviceName);
- if (context == null)
- {
- register(serviceName, depends);
- context = installed.get(serviceName);
- }
- ServiceContext ctx = context.getServiceContext();
-
- // If we are already created (can happen in dependencies) or failed just return
- if (ctx.state == ServiceContext.CREATED
- || ctx.state == ServiceContext.RUNNING
- || ctx.state == ServiceContext.FAILED)
- {
- log.debug("Ignoring create request for service: " + ctx.objectName + " at state " + ctx.getStateString());
- return;
- }
-
- // Request the mbean go to the created state
- KernelController controller = kernel.getController();
- try
- {
- doChange(controller, context, ControllerState.CREATE, "create");
- }
- catch (Throwable t)
- {
- log.warn("Problem creating service " + serviceName, t);
- }
- }
-
- public void start(ObjectName serviceName) throws Exception
- {
- if (serviceName == null)
- {
- log.warn("Ignoring request to start null service: ", getStackTrace());
- return;
- }
-
- log.debug("starting service " + serviceName);
-
- // Register if not already done so
- ServiceControllerContext context = installed.get(serviceName);
- if (context == null)
- {
- register(serviceName, null);
- context = installed.get(serviceName);
- }
- ServiceContext ctx = context.getServiceContext();
-
- // If we are already started (can happen in dependencies) just return
- if (ctx.state == ServiceContext.RUNNING || ctx.state == ServiceContext.FAILED)
- {
- log.debug("Ignoring start request for service: " + ctx.objectName + " at state " + ctx.getStateString());
- return;
- }
-
- // Request the mbean go to the fully installed state
- KernelController controller = kernel.getController();
- try
- {
- doChange(controller, context, ControllerState.INSTALLED, "start");
- }
- catch (Throwable t)
- {
- log.warn("Problem starting service " + serviceName, t);
- }
- }
-
- public void restart(ObjectName serviceName) throws Exception
- {
- if (serviceName == null)
- {
- log.warn("Ignoring request to restart null service: ", getStackTrace());
- return;
- }
-
- log.debug("restarting service " + serviceName);
- stop(serviceName);
- start(serviceName);
- }
-
- public void stop(ObjectName serviceName) throws Exception
- {
- if (serviceName == null)
- {
- log.warn("Ignoring request to stop null service: ", getStackTrace());
- return;
- }
-
- log.debug("stopping service: " + serviceName);
-
- ServiceControllerContext context = installed.get(serviceName);
- if (context == null)
- {
- log.warn("Ignoring request to stop nonexistent service: " + serviceName);
- return;
- }
-
- // If we are already stopped (can happen in dependencies) just return
- ServiceContext ctx = context.getServiceContext();
- if (ctx.state != ServiceContext.RUNNING)
- {
- log.debug("Ignoring stop request for service: " + ctx.objectName + " at state " + ctx.getStateString());
- return;
- }
-
- // Request the mbean go back to the created state
- KernelController controller = kernel.getController();
- try
- {
- doChange(controller, context, ControllerState.CREATE, null);
- }
- catch (Throwable t)
- {
- log.warn("Problem stopping service " + serviceName, t);
- }
- }
-
- public void destroy(ObjectName serviceName) throws Exception
- {
- if (serviceName == null)
- {
- log.warn("Ignoring request to destroy null service: ", getStackTrace());
- return;
- }
-
- log.debug("destroying service: " + serviceName);
-
- ServiceControllerContext context = installed.get(serviceName);
- if (context == null)
- {
- log.warn("Ignoring request to destroy nonexistent service: " + serviceName);
- return;
- }
-
- // If we are already destroyed (can happen in dependencies) just return
- ServiceContext ctx = context.getServiceContext();
- if (ctx.state == ServiceContext.DESTROYED || ctx.state == ServiceContext.NOTYETINSTALLED || ctx.state == ServiceContext.FAILED)
- {
- log.debug("Ignoring destroy request for service: " + ctx.objectName + " at state " + ctx.getStateString());
- return;
- }
-
- // Request the mbean go the configured state
- KernelController controller = kernel.getController();
- try
- {
- doChange(controller, context, ControllerState.CONFIGURED, null);
- }
- catch (Throwable t)
- {
- log.warn("Problem stopping service " + serviceName, t);
- }
- }
-
- public void remove(ObjectName objectName) throws Exception
- {
- if (objectName == null)
- {
- log.warn("Ignoring request to remove null service: ", getStackTrace());
- return;
- }
-
- // Removal can be attempted twice, this is because ServiceMBeanSupport does a "double check"
- // to make sure the ServiceController is tidied up
- // However, if the tidyup is done correctly, it invokes this method recursively:
- // ServiceController::remove -> MBeanServer::unregisterMBean
- // ServiceMBeanSupport::postDeregister -> ServiceController::remove
- ServiceControllerContext context = installed.remove(objectName);
- if (context == null)
- {
- log.trace("Ignoring request to remove nonexistent service: " + objectName);
- return;
- }
- installedOrder.remove(context);
- log.debug("removing service: " + objectName);
-
- // Uninstall the context
- safelyRemoveAnyRegisteredContext(context);
- }
-
- public ServiceContext getServiceContext(ObjectName serviceName)
- {
- ServiceControllerContext context = installed.get(serviceName);
- if (context != null)
- return context.getServiceContext();
- return null;
- }
-
- public void shutdown()
- {
- log.debug("Stopping " + installedOrder.size() + " services");
-
- KernelController controller = kernel.getController();
-
- int serviceCounter = 0;
-
- // Uninstall all the contexts we know about
- ListIterator<ServiceControllerContext> iterator = installedOrder.listIterator(installedOrder.size());
- while (iterator.hasPrevious())
- {
- ServiceControllerContext context = iterator.previous();
- controller.uninstall(context.getName());
- ++serviceCounter;
- }
- log.debug("Stopped " + serviceCounter + " services");
-
- // Shutdown ourselves
- controller.uninstall(ServiceControllerMBean.OBJECT_NAME.getCanonicalName());
- }
-
- public ObjectName preRegister(MBeanServer server, ObjectName name)
- throws Exception
- {
- this.server = server;
-
- if( kernel == null )
- {
- // Bootstrap the microcontainer.
- BasicBootstrap bootstrap = new BasicBootstrap();
- bootstrap.run();
- kernel = bootstrap.getKernel();
- }
-
- log.debug("Controller MBean online");
- return name == null ? OBJECT_NAME : name;
- }
-
- public void postRegister(Boolean registrationDone)
- {
- if (registrationDone == false)
- log.fatal("Registration of ServiceController failed");
- else
- {
- // Register the ServiceController as a running service
- KernelController controller = kernel.getController();
- ServiceControllerContext context = new ServiceControllerContext(this, ServiceControllerMBean.OBJECT_NAME);
- context.setMode(ControllerMode.AUTOMATIC);
- try
- {
- controller.install(context);
- }
- catch (Throwable t)
- {
- log.fatal("Error registering service controller", t);
- }
- }
- }
-
- public void preDeregister()
- throws Exception
- {
- }
-
- public void postDeregister()
- {
- installed.clear();
- installedOrder.clear();
- server = null;
- }
-
- /**
- * Install a context
- *
- * @param controller the controller
- * @param context the context
- * @throws Throwable for any error
- */
- private void doInstall(KernelController controller, ServiceControllerContext context) throws Throwable
- {
- controller.install(context);
- installed.put(context.getObjectName(), context);
- installedOrder.add(context);
- }
-
- /**
- * Change a context
- *
- * @param controller the controller
- * @param context the context
- * @param requiredState the require state
- * @param logWait log the waiting dependencies
- * @throws Throwable for any error
- */
- private void doChange(KernelController controller, ServiceControllerContext context, ControllerState requiredState, String logWait) throws Throwable
- {
- if (ControllerMode.ON_DEMAND.equals(context.getMode()) == false)
- {
- controller.change(context, requiredState);
- ControllerState state = context.getState();
- if (logWait != null && requiredState.equals(state) == false && state != ControllerState.ERROR)
- log.debug("Waiting in " + logWait + " of " + context.getObjectName() + " on " + getUnresolvedDependencies(context, requiredState));
- }
- }
-
- /**
- * Sends outs controller notifications about service lifecycle events
- *
- * @param type the notification type
- * @param serviceName the service name
- */
- public void sendControllerNotification(String type, ObjectName serviceName)
- {
- Notification notification = new Notification(type, this, super.nextNotificationSequenceNumber());
- notification.setUserData(serviceName);
- sendNotification(notification);
- }
-
- /**
- * Add the passed lifecycle dependencies to the context
- *
- * @param context the context
- * @param depends the dependencies
- */
- private void addDependencies(ServiceControllerContext context, Collection<ObjectName> depends)
- {
- DependencyInfo info = context.getDependencyInfo();
- for (ObjectName other : depends)
- {
- info.addIDependOn(new LifecycleDependencyItem(context.getName(), other.getCanonicalName(), ControllerState.CREATE));
- info.addIDependOn(new LifecycleDependencyItem(context.getName(), other.getCanonicalName(), ControllerState.START));
- }
- }
-
- /**
- * Get the unresolved dependencies
- *
- * @param context the context
- * @param state the state we want to move to
- * @return the unresolved dependencies
- */
- private String getUnresolvedDependencies(ServiceControllerContext context, ControllerState state)
- {
- boolean first = true;
-
- StringBuilder builder = new StringBuilder();
- for (DependencyItem item : context.getDependencyInfo().getUnresolvedDependencies(null))
- {
- if (item.isResolved() == false && item.getWhenRequired() == state)
- {
- if (first)
- first = false;
- else
- builder.append(' ');
- builder.append(item.getIDependOn());
- }
- }
- return builder.toString();
- }
-
- /**
- * Safely remove any potentially registered context (usually after an error)
- *
- * @param ctx the context
- */
- private void safelyRemoveAnyRegisteredContext(ServiceControllerContext ctx)
- {
- // First the context must have a controller
- Controller controller = ctx.getController();
- if (controller != null)
- {
- // The name must be registered and it must be our context
- Object name = ctx.getName();
- ControllerContext registered = controller.getContext(name, null);
- if (registered == ctx)
- controller.uninstall(name);
- }
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceControllerMBean.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceControllerMBean.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceControllerMBean.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,176 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import java.util.Collection;
-import java.util.List;
-
-import javax.management.ObjectName;
-
-import org.jboss.mx.util.ObjectNameFactory;
-import org.w3c.dom.Element;
-
-/**
- * ServiceController MBean interface.
- *
- * @see org.jboss.system.Service
- */
-public interface ServiceControllerMBean
-{
- /** The default ObjectName */
- ObjectName OBJECT_NAME = ObjectNameFactory.create("jboss.system:service=ServiceController");
-
- /**
- * Lists the ServiceContexts of deployed mbeans
- *
- * @return the list of ServiceContexts for mbeans deployed through ServiceController.
- */
- List<ServiceContext> listDeployed();
-
- /**
- * The <code>listIncompletelyDeployed</code> method returns the
- * service contexts for the mbeans whose status is not CREATED,
- * RUNNING, STOPPED or DESTROYED. An MBean that has reached one
- * of the above states has its dependencies resolved.
- *
- * @return a List<ServiceContext>
- */
- List<ServiceContext> listIncompletelyDeployed();
-
- /**
- * lists ObjectNames of deployed mbeans deployed through
- * serviceController.
- *
- * @return a list of ObjectNames of deployed mbeans.
- */
- List<ObjectName> listDeployedNames();
-
- /**
- * Gets the Configuration attribute of the ServiceController object
- *
- * @param objectNames Description of Parameter
- * @return The Configuration value
- * @throws Exception Description of Exception
- */
- String listConfiguration(ObjectName[] objectNames) throws Exception;
-
- /**
- * Deploy the beans; deploy means "instantiate and configure" so the MBean
- * is created in the MBeanServer. You must call "create" and "start" separately
- * on the MBean to affect the service lifecycle deploy doesn't bother with service
- * lifecycle only MBean instanciation/registration/configuration.
- *
- * @param config
- * @param loaderName
- * @return Description of the Returned Value
- * @throws Exception for any error
- */
- List<ObjectName> install(Element config, ObjectName loaderName) throws Exception;
-
- /**
- * Register the mbean against the microkernel with no dependencies.
- *
- * @see #register(ObjectName, java.util.Collection)
- * @param serviceName the object name
- * @throws Exception for any error
- */
- void register(ObjectName serviceName) throws Exception;
-
- /**
- * Register the mbean against the microkernel with dependencies.
- *
- * @param serviceName the object name
- * @param depends the dependencies
- * @throws Exception for any error
- */
- void register(ObjectName serviceName, Collection<ObjectName> depends) throws Exception;
-
- /**
- * Create a service
- *
- * @param serviceName Description of Parameter
- * @throws Exception Description of Exception
- */
- void create(ObjectName serviceName) throws Exception;
-
- /**
- * Create a service with given dependencies
- *
- * @param serviceName Description of Parameter
- * @param depends the dependencies
- * @throws Exception Description of Exception
- */
- void create(ObjectName serviceName, Collection<ObjectName> depends) throws Exception;
-
- /**
- * Starts the indicated service
- *
- * @param serviceName Description of Parameter
- * @throws Exception Description of Exception
- */
- void start(ObjectName serviceName) throws Exception;
-
- /**
- * Stops and restarts the indicated service
- *
- * @param serviceName Description of Parameter
- * @throws Exception Description of Exception
- */
- void restart(ObjectName serviceName) throws Exception;
-
- /**
- * Stop the indicated service
- *
- * @param serviceName Description of Parameter
- * @throws Exception Description of Exception
- */
- void stop(ObjectName serviceName) throws Exception;
-
- /**
- * Destroy the indicated service
- *
- * @param serviceName Description of Parameter
- * @throws Exception Description of Exception
- */
- void destroy(ObjectName serviceName) throws Exception;
-
- /**
- * This MBean is going bye bye
- *
- * @param objectName Description of Parameter
- * @throws Exception Description of Exception
- */
- void remove(ObjectName objectName) throws Exception;
-
- /**
- * Describe <code>shutdown</code> method here.
- */
- void shutdown();
-
- /**
- * Lookup the ServiceContext for the given serviceName
- *
- * @param serviceName the service name
- * @return the service context
- */
- ServiceContext getServiceContext(ObjectName serviceName);
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceCreator.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceCreator.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceCreator.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,392 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import java.net.URL;
-import java.util.List;
-
-import javax.management.MBeanServer;
-import javax.management.ObjectInstance;
-import javax.management.ObjectName;
-import javax.management.StandardMBean;
-
-import org.jboss.logging.Logger;
-import org.jboss.mx.server.ServerConstants;
-import org.jboss.mx.server.registry.MBeanEntry;
-import org.jboss.mx.service.ServiceConstants;
-import org.jboss.mx.util.JMXExceptionDecoder;
-import org.jboss.mx.util.ObjectNameFactory;
-import org.jboss.system.metadata.ServiceConstructorMetaData;
-import org.jboss.system.metadata.ServiceMetaData;
-import org.jboss.system.metadata.ServiceMetaDataParser;
-import org.w3c.dom.Element;
-
-/**
- * A helper class for the controller.
- *
- * @see Service
- *
- * @author <a href="mailto:marc.fleury at jboss.org">Marc Fleury</a>
- * @author <a href="mailto:d_jencks at users.sourceforge.net">David Jencks</a>
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class ServiceCreator
-{
- /** Instance logger. */
- private static final Logger log = Logger.getLogger(ServiceCreator.class);
-
- /** The MBean Registry Object Name */
- private static ObjectName MBEAN_REGISTRY = ObjectNameFactory.create(ServerConstants.MBEAN_REGISTRY);
-
- /** The server */
- private MBeanServer server;
-
- /**
- * Rethrow an error as an exception
- *
- * @param context the context
- * @param t the original throwable
- * @return never
- * @throws Exception always
- */
- public static Exception rethrow(String context, Throwable t) throws Exception
- {
- if (t instanceof Error)
- throw (Error) t;
- else if (t instanceof Exception)
- throw (Exception) t;
- throw new RuntimeException(context, t);
- }
-
- /**
- * Install an MBean
- *
- * @todo expand the meta data to include a pre-instantiated object
- * @param server the mbean server
- * @param objectName the object name
- * @param metaData the service metadata
- * @param mbean any mbean instance
- * @return the installed instance
- * @throws Exception for any error
- */
- public static ServiceInstance install(MBeanServer server, ObjectName objectName, ServiceMetaData metaData, Object mbean) throws Exception
- {
- if (server == null)
- throw new IllegalArgumentException("Null MBeanServer");
- if (objectName == null)
- throw new IllegalArgumentException("Null ObjectName");
- if (metaData == null && mbean == null)
- throw new IllegalArgumentException("Either metadata or an mbean object must be supplied");
-
- // Check for duplicate
- if (server.isRegistered(objectName))
- throw new RuntimeException("Trying to install an already registered mbean: " + objectName);
-
- try
- {
- ServiceInstance result = null;
-
- // No meta data just register directly
- if (metaData == null)
- {
- ObjectInstance instance = server.registerMBean(mbean, objectName);
- result = new ServiceInstance(instance, mbean);
- }
- else
- {
- String code = metaData.getCode();
- if (code == null || code.trim().length() == 0)
- throw new ConfigurationException("Missing or empty code for mbean " + objectName);
-
- String xmbeanDD = metaData.getXMBeanDD();
-
- // Not an XMBean
- if (xmbeanDD == null)
- {
- String interfaceName = metaData.getInterfaceName();
- if (interfaceName != null)
- result = installStandardMBean(server, objectName, metaData);
- else
- result = installPlainMBean(server, objectName, metaData);
- }
- // Embedded XMBean Descriptor
- else if (xmbeanDD.length() == 0)
- result = installEmbeddedXMBean(server, objectName, metaData);
- // Reference to external XMBean descriptor
- else
- result = installExternalXMBean(server, objectName, metaData);
- }
-
- log.debug("Created mbean: " + objectName);
- return result;
- }
- catch (Throwable e)
- {
- Throwable newE = JMXExceptionDecoder.decode(e);
-
- // didn't work, unregister in case the jmx agent is screwed.
- try
- {
- server.unregisterMBean(objectName);
- }
- catch (Throwable ignore)
- {
- }
-
- throw rethrow("Unable to createMBean for " + objectName, newE);
- }
- }
-
- /**
- * Install a StandardMBean
- *
- * @param server the mbean server
- * @param objectName the object name
- * @param metadata the service metadata
- * @return the installed instance
- * @throws Exception for any error
- */
- private static ServiceInstance installStandardMBean(MBeanServer server, ObjectName objectName, ServiceMetaData metaData) throws Exception
- {
- ObjectName loaderName = metaData.getClassLoaderName();
- ClassLoader loader = server.getClassLoader(loaderName);
- String code = metaData.getCode();
- ServiceConstructorMetaData constructor = metaData.getConstructor();
- String interfaceName = metaData.getInterfaceName();
-
- Class<?> intf = loader.loadClass(interfaceName);
- log.debug("About to create bean resource: " + objectName + " with code: " + code + " and interface " + interfaceName);
- Object resource = server.instantiate(code,
- loaderName,
- constructor.getParameters(loader),
- constructor.getSignature());
-
- log.debug("About to register StandardMBean : " + objectName);
- ObjectInstance instance = server.createMBean(StandardMBean.class.getName(),
- objectName,
- loaderName,
- new Object[] { resource, intf },
- new String[] { Object.class.getName() , Class.class.getName() });
- return new ServiceInstance(instance, resource);
- }
-
- /**
- * Install a plain MBean
- *
- * @param server the mbean server
- * @param objectName the object name
- * @param metadata the service metadata
- * @return the installed instance
- * @throws Exception for any error
- */
- private static ServiceInstance installPlainMBean(MBeanServer server, ObjectName objectName, ServiceMetaData metaData) throws Exception
- {
- ObjectName loaderName = metaData.getClassLoaderName();
- ClassLoader loader = server.getClassLoader(loaderName);
- String code = metaData.getCode();
- ServiceConstructorMetaData constructor = metaData.getConstructor();
-
- // This is a standard or dynamic mbean
- log.debug("About to create bean: " + objectName + " with code: " + code);
- ObjectInstance instance = server.createMBean(code,
- objectName,
- loaderName,
- constructor.getParameters(loader),
- constructor.getSignature());
-
- MBeanEntry entry = (MBeanEntry) server.invoke(MBEAN_REGISTRY, "get", new Object[] { objectName }, new String[] { ObjectName.class.getName() });
- Object resource = entry.getResourceInstance();
- return new ServiceInstance(instance, resource);
- }
-
- /**
- * Install an embedded XMBean
- *
- * @param server the mbean server
- * @param objectName the object name
- * @param metadata the service metadata
- * @return the installed instance
- * @throws Exception for any error
- */
- private static ServiceInstance installEmbeddedXMBean(MBeanServer server, ObjectName objectName, ServiceMetaData metaData) throws Exception
- {
- ObjectName loaderName = metaData.getClassLoaderName();
- ClassLoader loader = server.getClassLoader(loaderName);
- String code = metaData.getCode();
- ServiceConstructorMetaData constructor = metaData.getConstructor();
-
- // This is an xmbean with an embedded mbean descriptor
- log.debug("About to create xmbean object: " + objectName + " with code: " + code + " with embedded descriptor");
- //xmbean: construct object first.
- Object resource = server.instantiate(code,
- loaderName,
- constructor.getParameters(loader),
- constructor.getSignature());
-
- String xmbeanCode = metaData.getXMBeanCode();
- Element mbeanDescriptor = metaData.getXMBeanDescriptor();
- Object[] args = { resource, mbeanDescriptor, ServiceConstants.PUBLIC_JBOSSMX_XMBEAN_DTD_1_0 };
- String[] sig = { Object.class.getName(), Element.class.getName(), String.class.getName() };
- ObjectInstance instance = server.createMBean(xmbeanCode,
- objectName,
- loaderName,
- args,
- sig);
- return new ServiceInstance(instance, resource);
- }
-
- /**
- * Install an external XMBean
- *
- * @param server the mbean server
- * @param objectName the object name
- * @param metadata the service metadata
- * @return the installed instance
- * @throws Exception for any error
- */
- private static ServiceInstance installExternalXMBean(MBeanServer server, ObjectName objectName, ServiceMetaData metaData) throws Exception
- {
- ObjectName loaderName = metaData.getClassLoaderName();
- ClassLoader loader = server.getClassLoader(loaderName);
- String code = metaData.getCode();
- ServiceConstructorMetaData constructor = metaData.getConstructor();
- String xmbeanDD = metaData.getXMBeanDD();
-
- // This is an xmbean with an external descriptor
- log.debug("About to create xmbean object: " + objectName + " with code: " + code + " with descriptor: " + xmbeanDD);
- //xmbean: construct object first.
- Object resource = server.instantiate(code,
- loaderName,
- constructor.getParameters(loader),
- constructor.getSignature());
- // Try to find the dd first as a resource then as a URL
- URL xmbeanddUrl = null;
- try
- {
- xmbeanddUrl = resource.getClass().getClassLoader().getResource(xmbeanDD);
- }
- catch (Exception e)
- {
- }
-
- if (xmbeanddUrl == null)
- xmbeanddUrl = new URL(xmbeanDD);
-
- String xmbeanCode = metaData.getXMBeanCode();
-
- //now create the mbean
- Object[] args = { resource, xmbeanddUrl };
- String[] sig = { Object.class.getName(), URL.class.getName() };
- ObjectInstance instance = server.createMBean(xmbeanCode,
- objectName,
- loaderName,
- args,
- sig);
- return new ServiceInstance(instance, resource);
- }
-
- /**
- * Uninstall an MBean
- *
- * @param server the mbean server
- * @param objectName the object name
- */
- public static void uninstall(MBeanServer server, ObjectName objectName)
- {
- if (server == null)
- throw new IllegalArgumentException("Null MBeanServer");
- if (objectName == null)
- throw new IllegalArgumentException("Null ObjectName");
- try
- {
- log.debug("Removing mbean from server: " + objectName);
- server.unregisterMBean(objectName);
- }
- catch (Throwable t)
- {
- log.debug("Error unregistering mbean " + objectName, t);
- }
- }
-
- /**
- * Create a new ServiceCreator
- *
- * @deprecated This is no longer used and will be going away
- * @param server the mbean server
- */
- public ServiceCreator(final MBeanServer server)
- {
- if (server == null)
- throw new IllegalArgumentException("Null MBeanServer");
- this.server = server;
- }
-
- /**
- * Clean shutdown
- */
- public void shutdown()
- {
- this.server = null;
- }
-
- /**
- * Parses the given configuration document and creates MBean
- * instances in the current MBean server.
- *
- * @deprecated This is no longer used and will be going away
- * @param mbeanName the object name
- * @param loaderName the classloader
- * @param mbeanElement the config
- * @return the created object instance
- * @throws Exception for any error
- */
- public ObjectInstance install(ObjectName mbeanName, ObjectName loaderName, Element mbeanElement) throws Exception
- {
- if (mbeanName == null)
- throw new IllegalArgumentException("Null mbeanName");
- if (mbeanElement == null)
- throw new IllegalArgumentException("Null mbean element");
-
- ServiceMetaDataParser parser = new ServiceMetaDataParser(mbeanElement);
- List<ServiceMetaData> metaDatas = parser.parse();
- if (metaDatas.isEmpty())
- throw new RuntimeException("No mbeans found in passed configuration for " + mbeanName);
- ServiceMetaData metaData = metaDatas.get(0);
- metaData.setClassLoaderName(loaderName);
- ServiceInstance instance = install(server, mbeanName, metaData, null);
- return instance.getObjectInstance();
- }
-
- /**
- * Remove the installed object
- *
- * @param name the object name
- * @throws Exception for any error
- */
- public void remove(ObjectName name) throws Exception
- {
- if (name == null)
- throw new IllegalArgumentException("Null name");
- uninstall(server, name);
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceDynamicMBeanSupport.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceDynamicMBeanSupport.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceDynamicMBeanSupport.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,354 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import java.util.List;
-import javax.management.Attribute;
-import javax.management.AttributeList;
-import javax.management.AttributeNotFoundException;
-import javax.management.DynamicMBean;
-import javax.management.InvalidAttributeValueException;
-import javax.management.MBeanAttributeInfo;
-import javax.management.MBeanConstructorInfo;
-import javax.management.MBeanException;
-import javax.management.MBeanInfo;
-import javax.management.MBeanNotificationInfo;
-import javax.management.MBeanOperationInfo;
-import javax.management.MBeanParameterInfo;
-import javax.management.ReflectionException;
-
-import org.jboss.logging.Logger;
-
-/**
- * <description>
- *
- * @see <related>
- *
- * @author <a href="mailto:sacha.labourey at cogito-info.ch">Sacha Labourey</a>.
- * @version $Revision$
- *
- * <p><b>Revisions:</b>
- *
- * <p><b>6 janv. 2003 Sacha Labourey:</b>
- * <ul>
- * <li> First implementation </li>
- * </ul>
- */
-public class ServiceDynamicMBeanSupport
- extends ServiceMBeanSupport
- implements DynamicMBean
-{
-
- // Constants -----------------------------------------------------
-
- // Attributes ----------------------------------------------------
-
- // Static --------------------------------------------------------
-
- // Constructors --------------------------------------------------
-
- public ServiceDynamicMBeanSupport()
- {
- super();
- }
-
- public ServiceDynamicMBeanSupport(Class type)
- {
- super(type);
- }
-
- public ServiceDynamicMBeanSupport(String category)
- {
- super(category);
- }
-
- public ServiceDynamicMBeanSupport(Logger log)
- {
- super(log);
- }
-
- // Public --------------------------------------------------------
-
- // DynamicMBean implementation -----------------------------------
-
- public Object getAttribute(String attribute)
- throws AttributeNotFoundException, MBeanException, ReflectionException
- {
- // locally managed attributes!
- //
- if("State".equals(attribute))
- {
- return new Integer(getState());
- }
- if("StateString".equals(attribute))
- {
- return getStateString();
- }
- if("Name".equals(attribute))
- {
- return getName();
- }
-
- // Wrapped attributes?
- //
- return getInternalAttribute (attribute);
-
- }
-
- public Object invoke(String actionName, Object[] params, String[] signature)
- throws MBeanException, ReflectionException
- {
- try
- {
- if (ServiceController.JBOSS_INTERNAL_LIFECYCLE.equals(actionName))
- {
- jbossInternalLifecycle((String) params[0]);
- return null;
- }
- if (params == null || params.length == 0)
- {
- if ("create".equals(actionName))
- {
- create(); return null;
- }
- else if ("start".equals(actionName))
- {
- start(); return null;
- }
- else if ("stop".equals(actionName))
- {
- stop(); return null;
- }
- else if ("destroy".equals(actionName))
- {
- destroy(); return null;
- }
- }
- }
- catch (Exception e)
- {
- throw new MBeanException(e, "Exception in service lifecyle operation: " + actionName);
- }
-
- // If I am here, it means that the invocation has not been handled locally
- //
- try
- {
- return internalInvoke (actionName, params, signature);
- }
- catch (Exception e)
- {
- throw new MBeanException(e,
- "Exception invoking: " + actionName);
- }
- }
-
- public void setAttribute(Attribute attribute)
- throws
- AttributeNotFoundException,
- InvalidAttributeValueException,
- MBeanException,
- ReflectionException
- {
- setInternalAttribute (attribute);
- }
-
- public AttributeList setAttributes(AttributeList attributes)
- {
- AttributeList list = new AttributeList();
- if (attributes == null)
- return list;
- for (int i = 0; i < attributes.size(); ++i)
- {
- Attribute attribute = (Attribute) attributes.get(i);
- try
- {
- setAttribute(attribute);
- list.add(attribute);
- }
- catch (Throwable t)
- {
- log.debug("Error setting attribute " + attribute.getName(), t);
- }
- }
- return list;
- }
-
- public AttributeList getAttributes(String[] attributes)
- {
- AttributeList list = new AttributeList();
- if (attributes == null)
- return list;
- for (int i = 0; i < attributes.length; ++i)
- {
- try
- {
- Object value = getAttribute(attributes[i]);
- list.add(new Attribute(attributes[i], value));
- }
- catch (Throwable t)
- {
- log.debug("Error getting attribute " + attributes[i], t);
- }
- }
- return list;
- }
-
- public MBeanInfo getMBeanInfo()
- {
- MBeanParameterInfo[] noParams = new MBeanParameterInfo[] {};
-
- MBeanConstructorInfo[] ctorInfo = getInternalConstructorInfo();
-
- MBeanAttributeInfo[] attrs = getInternalAttributeInfo();
- MBeanAttributeInfo[] attrInfo = new MBeanAttributeInfo[3 + attrs.length];
- attrInfo[0] = new MBeanAttributeInfo("Name",
- "java.lang.String",
- "Return the service name",
- true,
- false,
- false);
- attrInfo[1] = new MBeanAttributeInfo("State",
- "int",
- "Return the service state",
- true,
- false,
- false);
- attrInfo[2] = new MBeanAttributeInfo("StateString",
- "java.lang.String",
- "Return the service's state as a String",
- true,
- false,
- false);
- System.arraycopy(attrs, 0, attrInfo, 3, attrs.length);
-
- MBeanParameterInfo[] jbossInternalLifecycleParms = new MBeanParameterInfo[1];
- jbossInternalLifecycleParms[0] = new MBeanParameterInfo("method", String.class.getName(), "The lifecycle method");
-
- MBeanOperationInfo[] ops = getInternalOperationInfo();
- MBeanOperationInfo[] opInfo = new MBeanOperationInfo[5 + ops.length];
- opInfo[0] = new MBeanOperationInfo("create",
- "create service lifecycle operation",
- noParams,
- "void",
- MBeanOperationInfo.ACTION);
-
- opInfo[1] = new MBeanOperationInfo("start",
- "start service lifecycle operation",
- noParams,
- "void",
- MBeanOperationInfo.ACTION);
-
- opInfo[2] = new MBeanOperationInfo("stop",
- "stop service lifecycle operation",
- noParams,
- "void",
- MBeanOperationInfo.ACTION);
-
- opInfo[3] = new MBeanOperationInfo("destroy",
- "destroy service lifecycle operation",
- noParams,
- "void",
- MBeanOperationInfo.ACTION);
-
- opInfo[4] = new MBeanOperationInfo(ServiceController.JBOSS_INTERNAL_LIFECYCLE,
- "Internal lifecycle (for internal use)",
- jbossInternalLifecycleParms,
- "void",
- MBeanOperationInfo.ACTION);
-
- System.arraycopy(ops, 0, opInfo, 5, ops.length);
-
- MBeanNotificationInfo[] notifyInfo = getInternalNotificationInfo();
- return new MBeanInfo(getClass().getName(),
- getInternalDescription(),
- attrInfo,
- ctorInfo,
- opInfo,
- notifyInfo);
- }
-
- // Y overrides ---------------------------------------------------
-
- // Package protected ---------------------------------------------
-
- // Protected -----------------------------------------------------
-
- protected String getInternalDescription()
- {
- return "DynamicMBean Service";
- }
-
- protected MBeanConstructorInfo[] getInternalConstructorInfo()
- {
- return new MBeanConstructorInfo[0];
- }
-
- protected MBeanAttributeInfo[] getInternalAttributeInfo()
- {
- return new MBeanAttributeInfo[0];
- }
-
- protected MBeanOperationInfo[] getInternalOperationInfo()
- {
- return new MBeanOperationInfo[0];
- }
-
- protected MBeanNotificationInfo[] getInternalNotificationInfo()
- {
- return new MBeanNotificationInfo[0];
- }
-
- protected Object getInternalAttribute(String attribute)
- throws AttributeNotFoundException, MBeanException, ReflectionException
- {
- throw new AttributeNotFoundException ("Attribute not found " + attribute);
- }
-
- protected void setInternalAttribute(Attribute attribute)
- throws AttributeNotFoundException, InvalidAttributeValueException, MBeanException, ReflectionException
- {
- throw new AttributeNotFoundException ("Attribute not found " + attribute);
- }
-
- protected Object internalInvoke(String actionName, Object[] params, String[] signature)
- throws MBeanException, ReflectionException
- {
- StringBuffer buffer = new StringBuffer();
- buffer.append(actionName);
- buffer.append('(');
- for (int i = 0; i < signature.length; ++i)
- {
- buffer.append(signature[i]);
- if (i < signature.length - 1)
- buffer.append(", ");
- }
- buffer.append(')');
- throw new MBeanException(new Exception("Operation not found " + buffer.toString()), "Operation not found " + actionName);
- }
-
-
- // Private -------------------------------------------------------
-
- // Inner classes -------------------------------------------------
-
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceFactory.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceFactory.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceFactory.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,44 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import javax.management.MBeanServer;
-import javax.management.ObjectName;
-
-/**
- * The ServiceFactory interface is used to obtain a Service
- * proxy instance for a named MBean.
- *
- * @author <a href="mailto:Scott_Stark at displayscape.com">Scott Stark</a>.
- * @version $Revision$
- */
-public interface ServiceFactory
-{
- /**
- * Create a Service proxy instance for the MBean given by name.
- *
- * @param server The MBeanServer instance
- * @param name The name of the MBean that wishes to be managed by
- * the JBoss ServiceControl service.
- */
- Service createService(MBeanServer server, ObjectName name);
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceInstance.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceInstance.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceInstance.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,78 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import javax.management.ObjectInstance;
-
-/**
- * ServiceInstance.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class ServiceInstance
-{
- /** The object instance */
- private ObjectInstance objectInstance;
-
- /** The object */
- private Object resource;
-
- /**
- * Create a new ServiceInstance.
- */
- public ServiceInstance()
- {
- }
-
- /**
- * Create a new ServiceInstance.
- *
- * @param objectInstance the object instance
- * @param resource the object
- */
- public ServiceInstance(ObjectInstance objectInstance, Object resource)
- {
- this.objectInstance = objectInstance;
- this.resource = resource;
- }
-
- /**
- * Get the resource.
- *
- * @return the resource.
- */
- public Object getResource()
- {
- return resource;
- }
-
- /**
- * Get the objectInstance.
- *
- * @return the objectInstance.
- */
- public ObjectInstance getObjectInstance()
- {
- return objectInstance;
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceMBean.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceMBean.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceMBean.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,78 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-/**
- * An interface describing a JBoss service MBean.
- *
- * @see Service
- * @see ServiceMBeanSupport
- *
- * @author <a href="mailto:rickard.oberg at telkel.com">Rickard Öberg</a>
- * @author <a href="mailto:andreas at jboss.org">Andreas Schaefer</a>
- * @author Scott.Stark at jboss.org
- * @version $Revision$
- */
-public interface ServiceMBean
- extends Service
-{
- // Constants -----------------------------------------------------
-
- /** ServiceController notification types corresponding to service lifecycle events */
- public static final String CREATE_EVENT = "org.jboss.system.ServiceMBean.create";
- public static final String START_EVENT = "org.jboss.system.ServiceMBean.start";
- public static final String STOP_EVENT = "org.jboss.system.ServiceMBean.stop";
- public static final String DESTROY_EVENT = "org.jboss.system.ServiceMBean.destroy";
-
- public static final String[] states = {
- "Stopped", "Stopping", "Starting", "Started", "Failed",
- "Destroyed", "Created", "Unregistered", "Registered"
- };
-
- /** The Service.stop has completed */
- public static final int STOPPED = 0;
- /** The Service.stop has been invoked */
- public static final int STOPPING = 1;
- /** The Service.start has been invoked */
- public static final int STARTING = 2;
- /** The Service.start has completed */
- public static final int STARTED = 3;
- /** There has been an error during some operation */
- public static final int FAILED = 4;
- /** The Service.destroy has completed */
- public static final int DESTROYED = 5;
- /** The Service.create has completed */
- public static final int CREATED = 6;
- /** The MBean has been created but has not completed MBeanRegistration.postRegister */
- public static final int UNREGISTERED = 7;
- /** The MBean has been created and has completed MBeanRegistration.postRegister */
- public static final int REGISTERED = 8;
-
- // Public --------------------------------------------------------
-
- String getName();
- int getState();
- String getStateString();
-
- /** Detyped lifecycle invocation */
- void jbossInternalLifecycle(String method) throws Exception;
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceMBeanState.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceMBeanState.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceMBeanState.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,141 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Set;
-
-import org.jboss.util.state.State;
-import org.jboss.util.state.StateMachine;
-import org.jboss.util.state.Transition;
-
-/**
- * A final class that encapsulates the constants necessary
- * for creating StateMachines that follow the ServiceMBean
- * lifecycle model.
- *
- * @author <a href="dimitris at jboss.org">Dimitris Andreadis</a>
- * @version $Revision$
-**/
-public final class ServiceMBeanState
-{
- // ServiceMBean States
- public static final State STATE_UNREGISTERED = new State("Unregistered"); // Initial State
- public static final State STATE_REGISTERED = new State("Registered");
- public static final State STATE_CREATED = new State("Created");
- public static final State STATE_STARTING = new State("Starting");
- public static final State STATE_STARTED = new State("Started");
- public static final State STATE_STOPPING = new State("Stopping");
- public static final State STATE_STOPPED = new State("Stopped");
- public static final State STATE_DESTROYED = new State("Destroyed");
- public static final State STATE_FAILED = new State("Failed");
-
- // ServiceMBean State Transitions
- public static final Transition TRANS_REGISTER = new Transition("register", STATE_REGISTERED);
- public static final Transition TRANS_CREATE = new Transition("create", STATE_CREATED);
- public static final Transition TRANS_START_BEGIN = new Transition("startBegin", STATE_STARTING);
- public static final Transition TRANS_START_END = new Transition("startEnd", STATE_STARTED);
- public static final Transition TRANS_STOP_BEGIN = new Transition("stopBegin", STATE_STOPPING);
- public static final Transition TRANS_STOP_END = new Transition("stopEnd", STATE_STOPPED);
- public static final Transition TRANS_DESTROY = new Transition("destroy", STATE_DESTROYED);
- public static final Transition TRANS_UNREGISTER = new Transition("unregister", STATE_UNREGISTERED);
- public static final Transition TRANS_FAIL = new Transition("fail", STATE_FAILED);
-
- /** The possible set of States a ServiceMBean can be in */
- public static final Set STATES = new HashSet(
- Arrays.asList(new State[] {
- STATE_UNREGISTERED,
- STATE_REGISTERED,
- STATE_CREATED,
- STATE_STARTING,
- STATE_STARTED,
- STATE_STOPPING,
- STATE_STOPPED,
- STATE_DESTROYED,
- STATE_FAILED
- }));
-
- // Associate States with valid Transitions, or else, define explicitly
- // the ServiceMBean lifecycle that drives the StateMachine
- static
- {
- STATE_UNREGISTERED
- .addTransition(TRANS_REGISTER)
- .addTransition(TRANS_FAIL);
-
- STATE_REGISTERED
- .addTransition(TRANS_CREATE)
- .addTransition(TRANS_UNREGISTER)
- .addTransition(TRANS_FAIL);
-
- STATE_CREATED
- .addTransition(TRANS_START_BEGIN)
- .addTransition(TRANS_DESTROY)
- .addTransition(TRANS_FAIL);
-
- STATE_STARTING
- .addTransition(TRANS_START_END)
- .addTransition(TRANS_FAIL);
-
- STATE_STARTED
- .addTransition(TRANS_STOP_BEGIN)
- .addTransition(TRANS_FAIL);
-
- STATE_STOPPING
- .addTransition(TRANS_STOP_END)
- .addTransition(TRANS_FAIL);
-
- STATE_STOPPED
- .addTransition(TRANS_START_BEGIN)
- .addTransition(TRANS_DESTROY)
- .addTransition(TRANS_FAIL);
-
- STATE_DESTROYED
- .addTransition(TRANS_CREATE)
- .addTransition(TRANS_UNREGISTER)
- .addTransition(TRANS_FAIL);
-
- // STATE_FAILED - no transitions
- }
-
- /**
- * Create a new StateMachine that follows the ServiceMBean
- * lifecycle, initialized to the STATE_UNREGISTERED state.
- *
- * @param description A string description for this state machine, or null
- * @return the StateMachine
- */
- public static StateMachine createStateMachine(String description)
- {
- return new StateMachine(STATES, STATE_UNREGISTERED, description);
- }
-
- /**
- * Dissallow instances of this class
- */
- private ServiceMBeanState()
- {
- // empty
- }
-
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceMBeanSupport.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceMBeanSupport.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/ServiceMBeanSupport.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,597 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system;
-
-import javax.management.AttributeChangeNotification;
-import javax.management.MBeanInfo;
-import javax.management.MBeanOperationInfo;
-import javax.management.MBeanRegistration;
-import javax.management.MBeanServer;
-import javax.management.MalformedObjectNameException;
-import javax.management.ObjectName;
-
-import org.jboss.beans.metadata.api.annotations.Create;
-import org.jboss.beans.metadata.api.annotations.Destroy;
-import org.jboss.beans.metadata.api.annotations.Start;
-import org.jboss.beans.metadata.api.annotations.Stop;
-import org.jboss.dependency.spi.Controller;
-import org.jboss.dependency.spi.ControllerState;
-import org.jboss.kernel.spi.dependency.KernelControllerContext;
-import org.jboss.kernel.spi.dependency.KernelControllerContextAware;
-import org.jboss.logging.Logger;
-import org.jboss.mx.util.JBossNotificationBroadcasterSupport;
-
-/**
- * An abstract base class JBoss services can subclass to implement a
- * service that conforms to the ServiceMBean interface. Subclasses must
- * override {@link #getName} method and should override
- * {@link #startService}, and {@link #stopService} as approriate.
- *
- * @see ServiceMBean
- *
- * @author <a href="mailto:rickard.oberg at telkel.com">Rickard Ãberg</a>
- * @author Scott.Stark at jboss.org
- * @author <a href="mailto:andreas at jboss.org">Andreas Schaefer</a>
- * @author <a href="mailto:jason at planet57.com">Jason Dillon</a>
- * @version $Revision$
- */
-public class ServiceMBeanSupport
- extends JBossNotificationBroadcasterSupport
- implements ServiceMBean, MBeanRegistration, KernelControllerContextAware
-{
- /** The signature for service controller operations */
- public static final String[] SERVICE_CONTROLLER_SIG = new String[] { ObjectName.class.getName() };
-
- /**
- * The instance logger for the service. Not using a class logger
- * because we want to dynamically obtain the logger name from
- * concreate sub-classes.
- */
- protected Logger log;
-
- /** The MBeanServer which we have been register with. */
- protected MBeanServer server;
-
- /** The object name which we are registsred under. */
- protected ObjectName serviceName;
-
- /** The current state this service is in. */
- private int state = UNREGISTERED;
-
- /** For backwards compatibility */
- private boolean isJBossInternalLifecycleExposed = false;
-
- /** The controller context */
- private KernelControllerContext controllerContext;
-
- /**
- * Construct a <t>ServiceMBeanSupport</tt>.
- *
- * <p>Sets up logging.
- */
- public ServiceMBeanSupport()
- {
- // can not call this(Class) because we need to call getClass()
- this.log = Logger.getLogger(getClass().getName());
- log.trace("Constructing");
- }
-
- /**
- * Construct a <t>ServiceMBeanSupport</tt>.
- *
- * <p>Sets up logging.
- *
- * @param type The class type to determine category name from.
- */
- @SuppressWarnings("unchecked")
- public ServiceMBeanSupport(final Class type)
- {
- this(type.getName());
- }
-
- /**
- * Construct a <t>ServiceMBeanSupport</tt>.
- *
- * <p>Sets up logging.
- *
- * @param category The logger category name.
- */
- public ServiceMBeanSupport(final String category)
- {
- this(Logger.getLogger(category));
- }
-
- /**
- * Construct a <t>ServiceMBeanSupport</tt>.
- *
- * @param log The logger to use.
- */
- public ServiceMBeanSupport(final Logger log)
- {
- this.log = log;
- log.trace("Constructing");
- }
-
- public void setKernelControllerContext(KernelControllerContext controllerContext) throws Exception
- {
- this.controllerContext = controllerContext;
- }
-
- public void unsetKernelControllerContext(KernelControllerContext controllerContext) throws Exception
- {
- this.controllerContext = null;
- }
-
- /**
- * Use the short class name as the default for the service name.
- *
- * @return a description of the mbean
- */
- public String getName()
- {
- // TODO: Check if this gets called often, if so cache this or remove if not used
- // use the logger so we can better be used as a delegate instead of sub-class
- return org.jboss.util.Classes.stripPackageName(log.getName());
- }
-
- public ObjectName getServiceName()
- {
- return serviceName;
- }
-
- public MBeanServer getServer()
- {
- return server;
- }
-
- public int getState()
- {
- return state;
- }
-
- public String getStateString()
- {
- return states[state];
- }
-
- public Logger getLog()
- {
- return log;
- }
-
-
- ///////////////////////////////////////////////////////////////////////////
- // State Mutators //
- ///////////////////////////////////////////////////////////////////////////
-
- @Create
- public void pojoCreate() throws Exception
- {
- jbossInternalCreate();
- }
-
- @Start
- public void pojoStart() throws Exception
- {
- jbossInternalStart();
- }
-
- @Stop
- public void pojoStop() throws Exception
- {
- jbossInternalStop();
- }
-
- @Destroy
- public void pojoDestroy() throws Exception
- {
- jbossInternalDestroy();
- }
-
- protected void pojoChange(ControllerState state)
- {
- Controller controller = controllerContext.getController();
- try
- {
- controller.change(controllerContext, state);
- }
- catch (RuntimeException e)
- {
- throw e;
- }
- catch (Error e)
- {
- throw e;
- }
- catch (Throwable t)
- {
- throw new RuntimeException("Error changing state of " + controllerContext.getName() + " to " + state.getStateString(), t);
- }
- }
-
- public void create() throws Exception
- {
- if (controllerContext != null)
- pojoChange(ControllerState.CREATE);
- else if (serviceName != null && isJBossInternalLifecycleExposed)
- server.invoke(ServiceController.OBJECT_NAME, "create", new Object[] { serviceName }, SERVICE_CONTROLLER_SIG);
- else
- jbossInternalCreate();
- }
-
- public void start() throws Exception
- {
- if (controllerContext != null)
- pojoChange(ControllerState.START);
- else if (serviceName != null && isJBossInternalLifecycleExposed)
- server.invoke(ServiceController.OBJECT_NAME, "start", new Object[] { serviceName }, SERVICE_CONTROLLER_SIG);
- else
- jbossInternalStart();
- }
-
- public void stop()
- {
- try
- {
- if (controllerContext != null)
- pojoChange(ControllerState.CREATE);
- else if (serviceName != null && isJBossInternalLifecycleExposed)
- server.invoke(ServiceController.OBJECT_NAME, "stop", new Object[] { serviceName }, SERVICE_CONTROLLER_SIG);
- else
- jbossInternalStop();
- }
- catch (Throwable t)
- {
- log.warn("Error in stop " + jbossInternalDescription(), t);
- }
- }
-
- public void destroy()
- {
- try
- {
- if (controllerContext != null)
- pojoChange(ControllerState.CONFIGURED);
- else if (serviceName != null && isJBossInternalLifecycleExposed)
- server.invoke(ServiceController.OBJECT_NAME, "destroy", new Object[] { serviceName }, SERVICE_CONTROLLER_SIG);
- else
- jbossInternalDestroy();
- }
- catch (Throwable t)
- {
- log.warn("Error in destroy " + jbossInternalDescription(), t);
- }
- }
-
- protected String jbossInternalDescription()
- {
- if (serviceName != null)
- return serviceName.toString();
- else
- return getName();
- }
-
- public void jbossInternalLifecycle(String method) throws Exception
- {
- if (method == null)
- throw new IllegalArgumentException("Null method name");
-
- if (method.equals("create"))
- jbossInternalCreate();
- else if (method.equals("start"))
- jbossInternalStart();
- else if (method.equals("stop"))
- jbossInternalStop();
- else if (method.equals("destroy"))
- jbossInternalDestroy();
- else
- throw new IllegalArgumentException("Unknown lifecyle method " + method);
- }
-
- protected void jbossInternalCreate() throws Exception
- {
- if (state == CREATED || state == STARTING || state == STARTED
- || state == STOPPING || state == STOPPED)
- {
- log.debug("Ignoring create call; current state is " + getStateString());
- return;
- }
-
- log.debug("Creating " + jbossInternalDescription());
-
- try
- {
- createService();
- state = CREATED;
- }
- catch (Exception e)
- {
- log.debug("Initialization failed " + jbossInternalDescription(), e);
- throw e;
- }
-
- log.debug("Created " + jbossInternalDescription());
- }
-
- protected void jbossInternalStart() throws Exception
- {
- if (state == STARTING || state == STARTED || state == STOPPING)
- {
- log.debug("Ignoring start call; current state is " + getStateString());
- return;
- }
-
- if (state != CREATED && state != STOPPED && state != FAILED)
- {
- log.debug("Start requested before create, calling create now");
- create();
- }
-
- state = STARTING;
- sendStateChangeNotification(STOPPED, STARTING, getName() + " starting", null);
- log.debug("Starting " + jbossInternalDescription());
-
- try
- {
- startService();
- }
- catch (Exception e)
- {
- state = FAILED;
- sendStateChangeNotification(STARTING, FAILED, getName() + " failed", e);
- log.debug("Starting failed " + jbossInternalDescription(), e);
- throw e;
- }
-
- state = STARTED;
- sendStateChangeNotification(STARTING, STARTED, getName() + " started", null);
- log.debug("Started " + jbossInternalDescription());
- }
-
- protected void jbossInternalStop()
- {
- if (state != STARTED)
- {
- log.debug("Ignoring stop call; current state is " + getStateString());
- return;
- }
-
- state = STOPPING;
- sendStateChangeNotification(STARTED, STOPPING, getName() + " stopping", null);
- log.debug("Stopping " + jbossInternalDescription());
-
- try
- {
- stopService();
- }
- catch (Throwable e)
- {
- state = FAILED;
- sendStateChangeNotification(STOPPING, FAILED, getName() + " failed", e);
- log.warn("Stopping failed " + jbossInternalDescription(), e);
- return;
- }
-
- state = STOPPED;
- sendStateChangeNotification(STOPPING, STOPPED, getName() + " stopped", null);
- log.debug("Stopped " + jbossInternalDescription());
- }
-
- protected void jbossInternalDestroy()
- {
- if (state == DESTROYED)
- {
- log.debug("Ignoring destroy call; current state is " + getStateString());
- return;
- }
-
- if (state == STARTED)
- {
- log.debug("Destroy requested before stop, calling stop now");
- stop();
- }
-
- log.debug("Destroying " + jbossInternalDescription());
-
- try
- {
- destroyService();
- }
- catch (Throwable t)
- {
- log.warn("Destroying failed " + jbossInternalDescription(), t);
- }
- state = DESTROYED;
- log.debug("Destroyed " + jbossInternalDescription());
- }
-
-
- ///////////////////////////////////////////////////////////////////////////
- // JMX Hooks //
- ///////////////////////////////////////////////////////////////////////////
-
- /**
- * Callback method of {@link MBeanRegistration}
- * before the MBean is registered at the JMX Agent.
- *
- * <p>
- * <b>Attention</b>: Always call this method when you overwrite it in a subclass
- * because it saves the Object Name of the MBean.
- *
- * @param server Reference to the JMX Agent this MBean is registered on
- * @param name Name specified by the creator of the MBean. Note that you can
- * overwrite it when the given ObjectName is null otherwise the
- * change is discarded (maybe a bug in JMX-RI).
- * @return the ObjectName
- * @throws Exception for any error
- */
- public ObjectName preRegister(MBeanServer server, ObjectName name)
- throws Exception
- {
- this.server = server;
-
- serviceName = getObjectName(server, name);
-
- return serviceName;
- }
-
- public void postRegister(Boolean registrationDone)
- {
- if (!registrationDone.booleanValue())
- {
- log.info( "Registration is not done -> stop" );
- stop();
- }
- else
- {
- state = REGISTERED;
- // This is for backwards compatibility - see whether jbossInternalLifecycle is exposed
- try
- {
- MBeanInfo info = server.getMBeanInfo(serviceName);
- MBeanOperationInfo[] ops = info.getOperations();
- for (int i = 0; i < ops.length; ++i)
- {
- if (ops[i] != null && ServiceController.JBOSS_INTERNAL_LIFECYCLE.equals(ops[i].getName()))
- {
- isJBossInternalLifecycleExposed = true;
- break;
- }
- }
- }
- catch (Throwable t)
- {
- log.warn("Unexcepted error accessing MBeanInfo for " + serviceName, t);
- }
- }
- }
-
- public void preDeregister() throws Exception
- {
- }
-
- public void postDeregister()
- {
- server = null;
- serviceName = null;
- state = UNREGISTERED;
- }
-
- /**
- * The <code>getNextNotificationSequenceNumber</code> method returns
- * the next sequence number for use in notifications.
- *
- * @return a <code>long</code> value
- */
- protected long getNextNotificationSequenceNumber()
- {
- return nextNotificationSequenceNumber();
- }
-
-
- ///////////////////////////////////////////////////////////////////////////
- // Concrete Service Overrides //
- ///////////////////////////////////////////////////////////////////////////
-
- /**
- * Sub-classes should override this method if they only need to set their
- * object name during MBean pre-registration.
- *
- * @param server the mbeanserver
- * @param name the suggested name, maybe null
- * @return the object name
- * @throws MalformedObjectNameException for a bad object name
- */
- protected ObjectName getObjectName(MBeanServer server, ObjectName name)
- throws MalformedObjectNameException
- {
- return name;
- }
-
- /**
- * Sub-classes should override this method to provide
- * custum 'create' logic.
- *
- * <p>This method is empty, and is provided for convenience
- * when concrete service classes do not need to perform
- * anything specific for this state change.
- *
- * @throws Exception for any error
- */
- protected void createService() throws Exception {}
-
- /**
- * Sub-classes should override this method to provide
- * custum 'start' logic.
- *
- * <p>This method is empty, and is provided for convenience
- * when concrete service classes do not need to perform
- * anything specific for this state change.
- *
- * @throws Exception for any error
- */
- protected void startService() throws Exception {}
-
- /**
- * Sub-classes should override this method to provide
- * custum 'stop' logic.
- *
- * <p>This method is empty, and is provided for convenience
- * when concrete service classes do not need to perform
- * anything specific for this state change.
- *
- * @throws Exception for any error
- */
- protected void stopService() throws Exception {}
-
- /**
- * Sub-classes should override this method to provide
- * custum 'destroy' logic.
- *
- * <p>This method is empty, and is provided for convenience
- * when concrete service classes do not need to perform
- * anything specific for this state change.
- *
- * @throws Exception for any error
- */
- protected void destroyService() throws Exception {}
-
- // Private -------------------------------------------------------
-
- /**
- * Helper for sending out state change notifications
- */
- private void sendStateChangeNotification(int oldState, int newState, String msg, Throwable t)
- {
- long now = System.currentTimeMillis();
-
- AttributeChangeNotification stateChangeNotification = new AttributeChangeNotification(
- this,
- getNextNotificationSequenceNumber(), now, msg,
- "State", "java.lang.Integer",
- new Integer(oldState), new Integer(newState)
- );
- stateChangeNotification.setUserData(t);
-
- sendNotification(stateChangeNotification);
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/LoaderRepositoryConfigHelper.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/LoaderRepositoryConfigHelper.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/LoaderRepositoryConfigHelper.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,149 +0,0 @@
-/*
-* JBoss, Home of Professional Open Source
-* Copyright 2008, Red Hat Middleware LLC, and individual contributors
-* by the @authors tag. See the copyright.txt in the distribution for a
-* full listing of individual contributors.
-*
-* This is free software; you can redistribute it and/or modify it
-* under the terms of the GNU Lesser General Public License as
-* published by the Free Software Foundation; either version 2.1 of
-* the License, or (at your option) any later version.
-*
-* This software is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-* Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public
-* License along with this software; if not, write to the Free
-* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-*/
-package org.jboss.system.deployers;
-
-import java.io.ByteArrayInputStream;
-import java.util.Properties;
-
-import javax.management.ObjectName;
-
-import org.jboss.classloading.spi.metadata.ClassLoadingMetaData;
-import org.jboss.classloading.spi.metadata.ExportAll;
-import org.jboss.classloading.spi.version.Version;
-import org.jboss.deployers.spi.DeploymentException;
-import org.jboss.deployers.structure.spi.DeploymentUnit;
-import org.jboss.mx.loading.LoaderRepositoryFactory.LoaderRepositoryConfig;
-
-/**
- * LoaderRepositoryConfigHelper.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class LoaderRepositoryConfigHelper
-{
- /**
- * Populate the deployment's classloading metadata from a loader repository config
- * with parent delegation false.
- *
- * @param unit the deployment unit
- * @param loaderConfig the loader repository config
- * @return the classloading metadata
- * @throws DeploymentException for any error
- */
- public static ClassLoadingMetaData create(DeploymentUnit unit, LoaderRepositoryConfig loaderConfig) throws DeploymentException
- {
- return create(unit, loaderConfig, false);
- }
-
- /**
- * Populate the deployment's classloading metadata from a loader repository config
- *
- * @param unit the deployment unit
- * @param loaderConfig the loader repository config
- * @param parentDelegation the default value for parent delegation
- * @return the classloading metadata
- * @throws DeploymentException for any error
- */
- public static ClassLoadingMetaData create(DeploymentUnit unit, LoaderRepositoryConfig loaderConfig, boolean parentDelegation) throws DeploymentException
- {
- if (unit == null)
- throw new IllegalArgumentException("Null unit");
-
- ClassLoadingMetaData clmd = unit.getAttachment(ClassLoadingMetaData.class);
- if (clmd != null)
- return clmd;
-
- clmd = create(unit.getName(), loaderConfig, parentDelegation);
- if (clmd != null)
- unit.addAttachment(ClassLoadingMetaData.class, clmd);
- return clmd;
- }
-
- /**
- * Create classloading metadata from a loader repository config
- * with parent delegation false
- *
- * @param deploymentName the deployment name
- * @param loaderConfig the loader repository config
- * @return the classloading metadata
- * @throws DeploymentException for any error
- */
- public static ClassLoadingMetaData create(String deploymentName, LoaderRepositoryConfig loaderConfig) throws DeploymentException
- {
- return create(deploymentName, loaderConfig, false);
- }
-
- /**
- * Create classloading metadata from a loader repository config
- *
- * @param deploymentName the deployment name
- * @param loaderConfig the loader repository config
- * @param parentDelegation the default value for parent delegation
- * @return the classloading metadata
- * @throws DeploymentException for any error
- */
- public static ClassLoadingMetaData create(String deploymentName, LoaderRepositoryConfig loaderConfig, boolean parentDelegation) throws DeploymentException
- {
- if (deploymentName == null)
- throw new IllegalArgumentException("Null deployment name");
- if (loaderConfig == null)
- throw new IllegalArgumentException("Null loader config");
-
- ObjectName name = loaderConfig.repositoryName;
- if (name == null)
- return null;
- String domain = name.getCanonicalName().trim();
- if (domain.length() == 0)
- return null;
- ClassLoadingMetaData metaData = new ClassLoadingMetaData();
- metaData.setName(deploymentName);
- metaData.setDomain(domain);
- metaData.setExportAll(ExportAll.NON_EMPTY);
- metaData.setImportAll(true);
- metaData.setVersion(Version.DEFAULT_VERSION);
-
- Properties props = new Properties();
- String config = loaderConfig.repositoryConfig;
- try
- {
- if (config != null)
- {
- ByteArrayInputStream bais = new ByteArrayInputStream(config.getBytes());
- props.load(bais);
- }
- }
- catch (Exception e)
- {
- throw DeploymentException.rethrowAsDeploymentException("Error parsing repository config " + config, e);
- }
- String java2ParentDelegation = props.getProperty("java2ParentDelegation");
- // Check for previous mis-spelled property name
- if( java2ParentDelegation == null )
- java2ParentDelegation = props.getProperty("java2ParentDelegaton");
- boolean useParentFirst = parentDelegation;
- if (java2ParentDelegation != null)
- useParentFirst = Boolean.valueOf(java2ParentDelegation);
- metaData.setJ2seClassLoadingCompliance(useParentFirst);
- return metaData;
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/SARArchiveFilter.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/SARArchiveFilter.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/SARArchiveFilter.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,72 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.deployers;
-
-import java.util.HashSet;
-import java.util.Set;
-import java.util.StringTokenizer;
-
-import org.jboss.vfs.VirtualFile;
-import org.jboss.vfs.VirtualFileFilter;
-
-/**
- * SARArchiveFilter.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class SARArchiveFilter implements VirtualFileFilter
-{
- /** The patterns */
- private final Set<String> patterns;
-
- /** Whether there is the accept all wildcard */
- private final boolean allowAll;
-
- /**
- * Create a new SARArchiveFilter.
- *
- * @param patternsString the pattern string
- * @throws IllegalArgumentException for a null string
- */
- public SARArchiveFilter(String patternsString)
- {
- if (patternsString == null)
- throw new IllegalArgumentException("Null patternsString");
-
- StringTokenizer tokens = new StringTokenizer (patternsString, ",");
- patterns = new HashSet<String>(tokens.countTokens());
- for (int i=0; tokens.hasMoreTokens (); ++i)
- {
- String token = tokens.nextToken();
- patterns.add(token.trim());
- }
- allowAll = patterns.contains("*");
- }
-
- public boolean accepts(VirtualFile file)
- {
- if (allowAll)
- return true;
- return patterns.contains(file.getName());
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/SARDeployer.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/SARDeployer.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/SARDeployer.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,187 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.deployers;
-
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.jboss.bootstrap.api.as.config.JBossASServerConfig;
-import org.jboss.deployers.spi.DeploymentException;
-import org.jboss.deployers.vfs.spi.deployer.JAXPDeployer;
-import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
-import org.jboss.system.metadata.ServiceDeployment;
-import org.jboss.system.metadata.ServiceDeploymentClassPath;
-import org.jboss.system.metadata.ServiceDeploymentParser;
-import org.jboss.system.metadata.ServiceMetaData;
-import org.jboss.system.metadata.ServiceMetaDataParser;
-import org.jboss.system.server.ServerConfigLocator;
-import org.jboss.util.xml.DOMWriter;
-import org.jboss.vfs.VFS;
-import org.jboss.vfs.VirtualFile;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-
-/**
- * SARDeployer.<p>
- *
- * This deployer is responsible for looking for -service.xml
- * and creating the metadata object.<p>
- *
- * The {@link ServiceClassLoaderDeployer} and {@link ServiceDeployer} does the
- * real work of deployment.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @author Scott.Stark at jboss.org
- * @author <a href="ales.justin at jboss.com">Ales Justin</a>
- * @version $Revision$
- */
-public class SARDeployer extends JAXPDeployer<ServiceDeployment>
-{
- /**
- * Create a new SARDeployer.
- *
- * @throws IllegalArgumentException for a null kernel
- */
- public SARDeployer()
- {
- super(ServiceDeployment.class);
- setSuffix("-service.xml");
- // Enable the super class ManagedObjectCreator implementation
- setBuildManagedObject(true);
- setAllowMultipleFiles(true);
- }
-
- /**
- * @param unit - the deployment unit
- * @param file - the vf for the jboss-service.xml descriptor
- * @param document - the jaxp document for the jboss-service.xml descriptor
- */
- @Override
- protected ServiceDeployment parse(VFSDeploymentUnit unit, VirtualFile file, Document document) throws Exception
- {
- ServiceDeploymentParser parser = new ServiceDeploymentParser(document);
- ServiceDeployment parsed = parser.parse();
- String name = file.toURI().toString();
- parsed.setName(name);
-
- List<ServiceDeploymentClassPath> classPaths = parsed.getClassPaths();
- if (classPaths != null)
- processXMLClasspath(unit, classPaths);
-
- List<ServiceMetaData> services = parsed.getServices();
- if (services == null)
- {
- Element config = parsed.getConfig();
- if (config == null)
- {
- log.debug("Service deployment has no services: " + parsed.getName());
- return parsed;
- }
- if (log.isTraceEnabled())
- {
- String docStr = DOMWriter.printNode(config, true);
- int index = docStr.toLowerCase().indexOf("password");
- if (index != -1)
- {
- docStr = maskPasswords(docStr, index);
- }
- log.trace(docStr);
- }
- ServiceMetaDataParser SMDparser = new ServiceMetaDataParser(config);
- services = SMDparser.parse();
- parsed.setServices(services);
- }
-
- return parsed;
- }
-
- /**
- * Process the xml classpath
- *
- * @param unit the unit
- * @param classpaths the classpaths
- * @throws Exception for any error
- */
- private void processXMLClasspath(VFSDeploymentUnit unit, List<ServiceDeploymentClassPath> classpaths) throws Exception
- {
- ArrayList<VirtualFile> classpath = new ArrayList<VirtualFile>();
-
- for (ServiceDeploymentClassPath path : classpaths)
- {
- String codebase = path.getCodeBase();
- String archives = path.getArchives();
-
- log.debug("Processing classpath: " + unit.getName() + " codebase=" + codebase + " archives=" + archives);
- VirtualFile codebaseFile = unit.getRoot();
- if (".".equals(codebase) == false)
- {
- JBossASServerConfig config = ServerConfigLocator.locate();
- URL codeBaseURL = new URL(config.getServerHomeLocation(), codebase);
- codebaseFile = VFS.getChild(codeBaseURL);
- }
-
- if (codebaseFile == null)
- throw new DeploymentException("Cannot use classpath without a root: " + unit.getName());
-
- if (archives == null)
- {
- classpath.add(codebaseFile);
- log.debug("Using codebase as classpath: " + unit.getName());
- }
- else
- {
- SARArchiveFilter filter = new SARArchiveFilter(archives);
- List<VirtualFile> archiveFiles = codebaseFile.getChildren(filter);
- classpath.addAll(archiveFiles);
- }
- }
-
- unit.prependClassPath(classpath);
- }
-
- private String maskPasswords(String original, int index)
- {
- StringBuilder sb = new StringBuilder(original);
- String modified;
- int startPasswdStringIndex = sb.indexOf(">", index);
- if (startPasswdStringIndex != -1)
- {
- // checks if the keyword 'password' was not in a comment
- if (sb.charAt(startPasswdStringIndex - 1) != '-')
- {
- int endPasswdStringIndex = sb.indexOf("<", startPasswdStringIndex);
- if (endPasswdStringIndex != -1) // shouldn't happen, but check anyway
- {
- sb.replace(startPasswdStringIndex + 1, endPasswdStringIndex, "****");
- }
- }
- modified = sb.toString();
- // unlikely event of more than one password
- index = modified.toLowerCase().indexOf("password", startPasswdStringIndex);
- if (index != -1)
- return maskPasswords(modified, index);
- return modified;
- }
- return original;
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceClassLoaderDeployer.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceClassLoaderDeployer.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceClassLoaderDeployer.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,62 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.deployers;
-
-import org.jboss.classloading.spi.metadata.ClassLoadingMetaData;
-import org.jboss.deployers.spi.DeploymentException;
-import org.jboss.deployers.spi.deployer.DeploymentStages;
-import org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer;
-import org.jboss.deployers.structure.spi.DeploymentUnit;
-import org.jboss.mx.loading.LoaderRepositoryFactory.LoaderRepositoryConfig;
-import org.jboss.system.metadata.ServiceDeployment;
-
-/**
- * ServiceClassLoaderDeployer
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class ServiceClassLoaderDeployer extends AbstractSimpleRealDeployer<ServiceDeployment>
-{
- /**
- * Create a new ServiceClassLoaderDeployer.
- */
- public ServiceClassLoaderDeployer()
- {
- super(ServiceDeployment.class);
- setOutput(ClassLoadingMetaData.class);
- setStage(DeploymentStages.POST_PARSE);
- setTopLevelOnly(true);
- }
-
- @Override
- public void deploy(DeploymentUnit unit, ServiceDeployment metaData) throws DeploymentException
- {
- ClassLoadingMetaData classLoadingMetaData = unit.getAttachment(ClassLoadingMetaData.class);
- if (classLoadingMetaData != null)
- return;
-
- LoaderRepositoryConfig config = metaData.getLoaderRepositoryConfig();
- if (config != null)
- LoaderRepositoryConfigHelper.create(unit, config);
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceDeployer.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceDeployer.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceDeployer.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,201 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.deployers;
-
-import javax.management.ObjectName;
-
-import org.jboss.classloading.spi.RealClassLoader;
-import org.jboss.deployers.spi.DeploymentException;
-import org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer;
-import org.jboss.deployers.structure.spi.DeploymentUnit;
-import org.jboss.mx.util.ObjectNameFactory;
-import org.jboss.system.ServiceContext;
-import org.jboss.system.ServiceController;
-import org.jboss.system.metadata.ServiceDeployment;
-import org.jboss.system.metadata.ServiceMetaData;
-
-/**
- * ServiceDeployer.<p>
- *
- * This deployer is responsible for deploying services of
- * type {@link ServiceDeployment}.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @author <a href="ales.justin at jboss.com">Ales Justin</a>
- * @version $Revision$
- */
-public class ServiceDeployer extends AbstractSimpleRealDeployer<ServiceMetaData>
-{
- /** The service controller */
- private final ServiceController controller;
- public static final ObjectName DEFAULT_CLASSLOADER_OBJECT_NAME = ObjectNameFactory.create("jboss:service=defaultClassLoader");
-
- private ObjectName defaultClassLoader = DEFAULT_CLASSLOADER_OBJECT_NAME;
-
- /**
- * Create a new ServiceDeployer.
- *
- * @param controller the service controller
- * @throws IllegalArgumentException for a null controller
- */
- public ServiceDeployer(ServiceController controller)
- {
- super(ServiceMetaData.class);
- if (controller == null)
- throw new IllegalArgumentException("Null controller");
- this.controller = controller;
- setComponentsOnly(true);
- setUseUnitName(true);
- }
-
-
- public ObjectName getDefaultClassLoader()
- {
- return defaultClassLoader;
- }
-
- public void setDefaultClassLoader(ObjectName defaultClassLoader)
- {
- this.defaultClassLoader = defaultClassLoader;
- }
-
- public void deploy(DeploymentUnit unit, ServiceMetaData deployment) throws DeploymentException
- {
- ObjectName name = deployment.getObjectName();
- try
- {
- ObjectName loaderName = deployment.getClassLoaderName();
- if (loaderName == null)
- loaderName = findLoaderName(unit.getClassLoader());
-
- controller.install(deployment, loaderName);
- ServiceContext context = controller.getServiceContext(name);
- if (context == null)
- throw new IllegalStateException("No context for " + name);
- try
- {
- create(context);
- try
- {
- start(context);
- Throwable t = context.getProblem();
- if (t != null)
- throw t;
- }
- catch (Throwable t)
- {
- destroy(name);
- throw t;
- }
- }
- catch (Throwable t)
- {
- remove(name);
- throw t;
- }
- }
- catch (Throwable t)
- {
- throw DeploymentException.rethrowAsDeploymentException("Error deploying: " + name, t);
- }
- }
-
- /**
- * Find first RealClassLoader instance
- * and return its ObjectName.
- * If none is found return defaultClassloader.
- *
- * @param cl the classloader
- * @return classloader's ObjectName
- */
- protected ObjectName findLoaderName(ClassLoader cl)
- {
- if (cl == null)
- return defaultClassLoader;
-
- if (cl instanceof RealClassLoader)
- {
- RealClassLoader rcl = RealClassLoader.class.cast(cl);
- return rcl.getObjectName();
- }
-
- return findLoaderName(cl.getParent());
- }
-
- public void undeploy(DeploymentUnit unit, ServiceMetaData deployment)
- {
- ObjectName name = deployment.getObjectName();
- ServiceContext context = controller.getServiceContext(name);
- if (context != null)
- {
- stop(name);
- destroy(name);
- remove(name);
- }
- }
-
- protected void create(ServiceContext context) throws Throwable
- {
- controller.create(context.objectName);
- }
-
- protected void start(ServiceContext context) throws Throwable
- {
- controller.start(context.objectName);
- }
-
- protected void stop(ObjectName name)
- {
- try
- {
- controller.stop(name);
- }
- catch (Throwable t)
- {
- log.warn("Error during stop for " + name, t);
- }
- }
-
- protected void destroy(ObjectName name)
- {
- try
- {
- controller.destroy(name);
- }
- catch (Throwable t)
- {
- log.warn("Error during destroy for " + name, t);
- }
- }
-
- protected void remove(ObjectName name)
- {
- try
- {
- controller.remove(name);
- }
- catch (Throwable t)
- {
- log.warn("Error during destroy for " + name, t);
- }
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceDeploymentDeployer.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceDeploymentDeployer.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceDeploymentDeployer.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,191 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.deployers;
-
-import java.util.List;
-
-import javax.management.ObjectName;
-
-import org.jboss.deployers.spi.DeploymentException;
-import org.jboss.deployers.spi.deployer.helpers.AbstractComponentDeployer;
-import org.jboss.deployers.spi.deployer.helpers.DeploymentVisitor;
-import org.jboss.deployers.structure.spi.DeploymentUnit;
-import org.jboss.system.metadata.ServiceDeployment;
-import org.jboss.system.metadata.ServiceMetaData;
-import org.jboss.system.metadata.ServiceMetaDataParser;
-import org.jboss.util.xml.DOMWriter;
-import org.w3c.dom.Element;
-
-/**
- * ServiceDeployer.<p>
- *
- * This deployer is responsible for deploying services of
- * type {@link ServiceDeployment}.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class ServiceDeploymentDeployer extends AbstractComponentDeployer<ServiceDeployment, ServiceMetaData>
-{
- /**
- * Create a new ServiceDeploymentDeployer.
- */
- public ServiceDeploymentDeployer()
- {
- setDeploymentVisitor(new ServiceDeploymentVisitor());
- setComponentVisitor(new ServiceMetaDataVisitor());
- }
-
- protected static void addServiceComponent(DeploymentUnit unit, ServiceMetaData service)
- {
- ObjectName objectName = service.getObjectName();
- String name = objectName.getCanonicalName();
- DeploymentUnit component = unit.addComponent(name);
- component.addAttachment(ServiceMetaData.class.getName(), service);
- }
-
- protected static void removeServiceComponent(DeploymentUnit unit, ServiceMetaData service)
- {
- ObjectName objectName = service.getObjectName();
- String name = objectName.getCanonicalName();
- unit.removeComponent(name);
- }
-
- /**
- * ServiceDeploymentVisitor.
- */
- public class ServiceDeploymentVisitor implements DeploymentVisitor<ServiceDeployment>
- {
- public Class<ServiceDeployment> getVisitorType()
- {
- return ServiceDeployment.class;
- }
-
- public void deploy(DeploymentUnit unit, ServiceDeployment deployment) throws DeploymentException
- {
- try
- {
- List<ServiceMetaData> services = deployment.getServices();
- if (services == null)
- {
- Element config = deployment.getConfig();
- if (config == null)
- {
- log.debug("Service deployment has no services: " + deployment.getName());
- return;
- }
- if (log.isDebugEnabled())
- {
- String docStr = DOMWriter.printNode(config, true);
- int index = docStr.toLowerCase().indexOf("password");
- if (index != -1)
- {
- docStr = maskPasswords(docStr, index);
- }
- log.debug(docStr);
- }
- ServiceMetaDataParser parser = new ServiceMetaDataParser(config);
- services = parser.parse();
- deployment.setServices(services);
- }
-
- if (services == null || services.isEmpty())
- return;
-
- for (ServiceMetaData service : services)
- addServiceComponent(unit, service);
- }
- catch (Throwable t)
- {
- throw DeploymentException.rethrowAsDeploymentException("Error deploying: " + deployment.getName(), t);
- }
- }
-
- public void undeploy(DeploymentUnit unit, ServiceDeployment deployment)
- {
- List<ServiceMetaData> services = deployment.getServices();
- if (services == null)
- return;
-
- for (ServiceMetaData service : services)
- {
- ObjectName objectName = service.getObjectName();
- String name = objectName.getCanonicalName();
- unit.removeComponent(name);
- }
- }
- }
-
- /**
- * ServiceMetaDataVisitor.
- */
- public static class ServiceMetaDataVisitor implements DeploymentVisitor<ServiceMetaData>
- {
- public Class<ServiceMetaData> getVisitorType()
- {
- return ServiceMetaData.class;
- }
-
- public void deploy(DeploymentUnit unit, ServiceMetaData deployment) throws DeploymentException
- {
- addServiceComponent(unit, deployment);
- }
-
- public void undeploy(DeploymentUnit unit, ServiceMetaData deployment)
- {
- removeServiceComponent(unit, deployment);
- }
- }
-
- /**
- * Masks passwords so they are not visible in the log.
- *
- * @param original <code>String</code> plain-text passwords
- * @param index index where the password keyword was found
- * @return modified <code>String</code> with masked passwords
- */
- private String maskPasswords(String original, int index)
- {
- StringBuilder sb = new StringBuilder(original);
- String modified = null;
- int startPasswdStringIndex = sb.indexOf(">", index);
- if (startPasswdStringIndex != -1)
- {
- // checks if the keyword 'password' was not in a comment
- if (sb.charAt(startPasswdStringIndex - 1) != '-')
- {
- int endPasswdStringIndex = sb.indexOf("<", startPasswdStringIndex);
- if (endPasswdStringIndex != -1) // shouldn't happen, but check anyway
- {
- sb.replace(startPasswdStringIndex + 1, endPasswdStringIndex, "****");
- }
- }
- modified = sb.toString();
- // unlikely event of more than one password
- index = modified.toLowerCase().indexOf("password", startPasswdStringIndex);
- if (index != -1)
- return maskPasswords(modified, index);
- return modified;
- }
- return original;
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceXSLDeployer.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceXSLDeployer.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/deployers/ServiceXSLDeployer.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,54 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.deployers;
-
-import org.jboss.deployers.vfs.spi.deployer.XSLDeployer;
-import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
-import org.jboss.system.metadata.ServiceDeployment;
-import org.jboss.system.metadata.ServiceDeploymentParser;
-import org.jboss.vfs.VirtualFile;
-import org.w3c.dom.Document;
-
-public class ServiceXSLDeployer extends XSLDeployer<ServiceDeployment>
-{
- /**
- * Create a new ServiceXSLDeployer.
- */
- public ServiceXSLDeployer()
- {
- super(ServiceDeployment.class);
- }
-
- protected boolean allowsReparse()
- {
- return true;
- }
-
- protected ServiceDeployment parse(VFSDeploymentUnit unit, VirtualFile file, Document document) throws Exception
- {
- ServiceDeploymentParser parser = new ServiceDeploymentParser(document);
- ServiceDeployment parsed = parser.parse();
- String name = file.toURI().toString();
- parsed.setName(name);
- return parsed;
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ConfigureAction.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ConfigureAction.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ConfigureAction.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,68 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.microcontainer;
-
-import java.util.List;
-
-import javax.management.MBeanServer;
-import javax.management.ObjectName;
-
-import org.jboss.system.ServiceBinding;
-import org.jboss.system.ServiceConfigurator;
-import org.jboss.system.ServiceContext;
-import org.jboss.system.ServiceController;
-import org.jboss.system.metadata.ServiceAttributeMetaData;
-import org.jboss.system.metadata.ServiceMetaData;
-
-/**
- * ConfigureAction.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class ConfigureAction extends ServiceControllerContextAction
-{
- public void installAction(ServiceControllerContext context) throws Throwable
- {
- ServiceController controller = context.getServiceController();
- MBeanServer server = controller.getMBeanServer();
- ObjectName objectName = context.getObjectName();
-
- // Configure any attributes
- ServiceMetaData metaData = context.getServiceMetaData();
- if (metaData != null)
- {
- List<ServiceAttributeMetaData> attrs = metaData.getAttributes();
- if (attrs.size() > 0)
- {
- ObjectName classLoaderName = metaData.getClassLoaderName();
- ServiceConfigurator.configure(null, controller, objectName, classLoaderName, attrs);
- }
- }
-
- context.getServiceContext().state = ServiceContext.CONFIGURED;
- }
-
- public void uninstallAction(ServiceControllerContext context)
- {
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/CreateDestroyLifecycleAction.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/CreateDestroyLifecycleAction.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/CreateDestroyLifecycleAction.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,69 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.microcontainer;
-
-import javax.management.ObjectName;
-
-import org.jboss.system.Service;
-import org.jboss.system.ServiceContext;
-import org.jboss.system.ServiceController;
-import org.jboss.system.ServiceMBean;
-
-/**
- * CreateDestroyLifecycleAction.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class CreateDestroyLifecycleAction extends ServiceControllerContextAction
-{
- public void installAction(ServiceControllerContext context) throws Throwable
- {
- Service service = context.getServiceProxy();
- service.create();
-
- context.getServiceContext().state = ServiceContext.CREATED;
-
- ObjectName objectName = context.getObjectName();
- ServiceController serviceController = context.getServiceController();
- serviceController.sendControllerNotification(ServiceMBean.CREATE_EVENT, objectName);
- }
-
- public void uninstallAction(ServiceControllerContext context)
- {
- try
- {
- Service service = context.getServiceProxy();
- service.destroy();
-
- context.getServiceContext().state = ServiceContext.DESTROYED;
-
- ObjectName objectName = context.getObjectName();
- ServiceController serviceController = context.getServiceController();
- serviceController.sendControllerNotification(ServiceMBean.DESTROY_EVENT, objectName);
- }
- catch (Throwable t)
- {
- log.debug("Error during destroy for " + context.getObjectName(), t);
- }
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/DescribeAction.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/DescribeAction.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/DescribeAction.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,39 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.microcontainer;
-
-/**
- * DescribeAction.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class DescribeAction extends ServiceControllerContextAction
-{
- public void installAction(ServiceControllerContext context) throws Throwable
- {
- }
-
- public void uninstallAction(ServiceControllerContext context)
- {
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/InstallAction.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/InstallAction.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/InstallAction.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,39 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.microcontainer;
-
-/**
- * InstallAction.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class InstallAction extends ServiceControllerContextAction
-{
- public void installAction(ServiceControllerContext context) throws Throwable
- {
- }
-
- public void uninstallAction(ServiceControllerContext context)
- {
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/InstantiateAction.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/InstantiateAction.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/InstantiateAction.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,58 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.microcontainer;
-
-import javax.management.MBeanServer;
-import javax.management.ObjectName;
-
-import org.jboss.system.ServiceCreator;
-import org.jboss.system.ServiceInstance;
-import org.jboss.system.metadata.ServiceMetaData;
-
-/**
- * InstantiateAction.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class InstantiateAction extends ServiceControllerContextAction
-{
- public void installAction(ServiceControllerContext context) throws Throwable
- {
- MBeanServer server = context.getServiceController().getMBeanServer();
- ObjectName objectName = context.getObjectName();
- ServiceMetaData metaData = context.getServiceMetaData();
- Object mbean = context.getTarget();
- ServiceInstance instance = ServiceCreator.install(server, objectName, metaData, mbean);
- context.setTarget(instance.getResource());
- }
-
- public void uninstallAction(ServiceControllerContext context)
- {
- MBeanServer server = context.getServiceController().getMBeanServer();
- ObjectName objectName = context.getObjectName();
- ServiceCreator.uninstall(server, objectName);
- ServiceMetaData metaData = context.getServiceMetaData();
- if (metaData != null)
- context.setTarget(null);
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/LifecycleDependencyItem.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/LifecycleDependencyItem.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/LifecycleDependencyItem.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,46 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.microcontainer;
-
-import org.jboss.dependency.plugins.AbstractDependencyItem;
-import org.jboss.dependency.spi.ControllerState;
-
-/**
- * A LifecycleDependencyItem.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class LifecycleDependencyItem extends AbstractDependencyItem
-{
- /**
- * Create a new LifecycleDependencyItem.
- *
- * @param name the name
- * @param dependency the dependency
- * @param state the state
- */
- public LifecycleDependencyItem(Object name, Object dependency, ControllerState state)
- {
- super(name, dependency, state, state);
- }
-}
\ No newline at end of file
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/LifecycleInfo.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/LifecycleInfo.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/LifecycleInfo.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,155 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.microcontainer;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.management.MBeanInfo;
-import javax.management.MBeanOperationInfo;
-import javax.management.MBeanServer;
-
-import org.jboss.dependency.spi.Controller;
-import org.jboss.dependency.spi.ControllerState;
-import org.jboss.dependency.spi.ControllerStateModel;
-import org.jboss.system.ServiceController;
-
-/**
- * Holds the needed kernel bus lifecycle invocation info.
- * Used by {@link ServiceControllerContext#lifecycleInvocation(String, Object[], String[])}
- * to make invocations on the MBean lifecycle methods.
- *
- * @author <a href="mailto:ales.justin at jboss.org">Ales Justin</a>
- */
-public class LifecycleInfo
-{
- private ServiceControllerContext context;
- private Map<String, StateInfo> lifecycleOps;
-
- /**
- * @param context the ServiceControllerContext
- * @throws Throwable for any error
- */
- public LifecycleInfo(ServiceControllerContext context) throws Throwable
- {
- if (context == null)
- throw new IllegalArgumentException("Null context");
-
- this.context = context;
- // build possible lifecycle ops
- lifecycleOps = new HashMap<String, StateInfo>();
- lifecycleOps.put("create", new StateInfo(false, true, ControllerState.CREATE));
- lifecycleOps.put("start", new StateInfo(false, true, ControllerState.INSTALLED));
- lifecycleOps.put("stop", new StateInfo(false, false, ControllerState.CREATE));
- lifecycleOps.put("destroy", new StateInfo(false, false, ControllerState.CONFIGURED));
-
- ServiceController controller = context.getServiceController();
- MBeanServer server = controller.getMBeanServer();
- if (server != null)
- {
- MBeanInfo info = server.getMBeanInfo(context.getObjectName());
- MBeanOperationInfo[] ops = info.getOperations();
- if (ops != null)
- {
- for (MBeanOperationInfo op : ops)
- {
- String name = op.getName();
-
- StateInfo flag = lifecycleOps.get(name);
- if (flag == null)
- {
- continue;
- }
-
- // Validate that is a no-arg void return type method
- if (op.getReturnType().equals("void") == false)
- {
- continue;
- }
- if (op.getSignature().length != 0)
- {
- continue;
- }
-
- flag.opExists = true;
- }
- }
- }
- }
-
- /**
- * Is this invocation a lifecycle invocation.
- *
- * Return state value to which this context should be moved
- * or return current state if we're already past the lifecycle state
- * or null if the invocation is actually not a lifecycle invocation.
- *
- * @param opName operation name
- * @param signature method's parameter types / signatures
- * @return state to which we should move this context, or null if this is not lifecycle invocation
- * @throws Throwable for any error
- */
- public ControllerState lifecycleInvocation(String opName, String[] signature) throws Throwable
- {
- if (signature != null && signature.length > 0)
- return null;
-
- StateInfo flag = lifecycleOps.get(opName);
- if (flag == null || flag.opExists == false)
- return null;
-
- Controller controller = context.getController();
- ControllerStateModel model = controller.getStates();
- ControllerState state = context.getState();
- if (flag.installPhase)
- {
- if (model.isAfterState(flag.state, state))
- return flag.state;
- else
- return state;
- }
- else
- {
- if (model.isBeforeState(flag.state, state))
- return flag.state;
- else
- return state;
- }
- }
-
- /**
- * State info holder.
- */
- private class StateInfo
- {
- boolean opExists;
- boolean installPhase;
- ControllerState state;
-
- private StateInfo(boolean opExists, boolean installPhase, ControllerState state)
- {
- this.opExists = opExists;
- this.installPhase = installPhase;
- this.state = state;
- }
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/OnlyUnregisterAction.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/OnlyUnregisterAction.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/OnlyUnregisterAction.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,48 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.microcontainer;
-
-import javax.management.MBeanServer;
-import javax.management.ObjectName;
-
-import org.jboss.system.ServiceCreator;
-
-/**
- * Only unregister action
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class OnlyUnregisterAction extends ServiceControllerContextAction
-{
- public void installAction(ServiceControllerContext context) throws Throwable
- {
- }
-
- public void uninstallAction(ServiceControllerContext context)
- {
- MBeanServer server = context.getServiceController().getMBeanServer();
- ObjectName objectName = context.getObjectName();
- ServiceCreator.uninstall(server, objectName);
- context.setTarget(null);
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceControllerContext.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceControllerContext.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceControllerContext.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,401 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.microcontainer;
-
-import java.security.AccessController;
-import java.security.PrivilegedAction;
-import java.util.Iterator;
-import javax.management.Attribute;
-import javax.management.MBeanServer;
-import javax.management.ObjectName;
-
-import org.jboss.dependency.plugins.AbstractControllerContext;
-import org.jboss.dependency.spi.Controller;
-import org.jboss.dependency.spi.ControllerMode;
-import org.jboss.dependency.spi.ControllerState;
-import org.jboss.dependency.spi.DependencyItem;
-import org.jboss.dependency.spi.dispatch.LifecycleDispatchContext;
-import org.jboss.system.Service;
-import org.jboss.system.ServiceContext;
-import org.jboss.system.ServiceController;
-import org.jboss.system.metadata.ServiceMetaData;
-import org.jboss.system.metadata.ServiceMetaDataVisitor;
-import org.jboss.system.metadata.ServiceMetaDataVisitorNode;
-
-/**
- * ServiceControllerContext.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @author <a href="ales.justin at jboss.com">Ales Justin</a>
- * @version $Revision$
- */
-public class ServiceControllerContext extends AbstractControllerContext implements LifecycleDispatchContext
-{
- /** The ObjectName */
- private ObjectName objectName;
-
- /** The service controller */
- private ServiceController serviceController;
-
- /** The meta data */
- private ServiceMetaData serviceMetaData;
-
- /** The service context */
- private ServiceContext serviceContext = new ServiceContext();
-
- // Whether to include the lifecycle
- private boolean includeLifecycle = true;
-
- /** The lifecycle info */
- private volatile LifecycleInfo lifecycleInfo;
-
- /**
- * Create a new ServiceControllerContext.
- *
- * @param serviceController the service controller
- * @param name the name of the context
- */
- public ServiceControllerContext(ServiceController serviceController, ObjectName name)
- {
- this(serviceController, name, true);
- }
-
- /**
- * Create a new ServiceControllerContext.
- *
- * @param serviceController the service controller
- * @param name the name of the context
- * @param includeLifecycle whether to include the lifecycle callouts
- */
- public ServiceControllerContext(ServiceController serviceController, ObjectName name, boolean includeLifecycle)
- {
- this(serviceController, name, includeLifecycle, null);
- }
-
- /**
- * Create a new ServiceControllerContext.
- *
- * @param serviceController the service controller
- * @param name the name of the context
- * @param includeLifecycle whether to include the lifecycle callouts
- * @param target the target
- */
- public ServiceControllerContext(ServiceController serviceController, ObjectName name, boolean includeLifecycle, Object target)
- {
- super(name.getCanonicalName(), ServiceControllerContextActions.getLifecycleOnly());
- this.objectName = name;
- serviceContext.objectName = objectName;
- this.serviceController = serviceController;
- setMode(ControllerMode.MANUAL);
- this.includeLifecycle = includeLifecycle;
- if (target != null)
- setTarget(target);
- }
-
- /**
- * Create a new ServiceControllerContext.
- *
- * @param serviceController the service controller
- * @param metaData the meta data
- */
- public ServiceControllerContext(ServiceController serviceController, ServiceMetaData metaData)
- {
- super(metaData.getObjectName().getCanonicalName(), ServiceControllerContextActions.getInstance());
- this.objectName = metaData.getObjectName();
- serviceContext.objectName = objectName;
- this.serviceController = serviceController;
- ControllerMode mode = metaData.getMode();
- this.serviceMetaData = metaData;
- if (mode == null)
- setMode(ControllerMode.MANUAL);
- else
- setMode(mode);
- }
-
- /**
- * Create a new ServiceControllerContext.
- *
- * @param serviceController the service controller
- * @param name the name
- * @param target the target
- */
- public ServiceControllerContext(ServiceController serviceController, ObjectName name, Object target)
- {
- super(name.getCanonicalName(), ServiceControllerContextActions.getInstance());
- this.objectName = name;
- serviceContext.objectName = objectName;
- this.serviceController = serviceController;
- setTarget(target);
- setMode(ControllerMode.MANUAL);
- }
-
- private MBeanServer getMBeanServer()
- {
- MBeanServer server = serviceController.getMBeanServer();
- if (server == null)
- {
- throw new IllegalStateException("MBeanServer not available.");
- }
- return server;
- }
-
- protected static String getAttributeName(String name)
- {
- if (name == null || name.length() == 0)
- throw new IllegalArgumentException("Illegal name: " + name);
-
- char firstCharacter = name.charAt(0);
- if (Character.isLowerCase(firstCharacter))
- {
- String attributeName = String.valueOf(Character.toUpperCase(firstCharacter));
- if (name.length() > 1)
- attributeName += name.substring(1);
- return attributeName;
- }
- return name;
- }
-
- public Object get(String name) throws Throwable
- {
- return getMBeanServer().getAttribute(objectName, getAttributeName(name));
- }
-
- public void set(String name, Object value) throws Throwable
- {
- Attribute attribute = new Attribute(getAttributeName(name), value);
- getMBeanServer().setAttribute(objectName, attribute);
- }
-
- public Object invoke(String name, Object parameters[], String[] signature) throws Throwable
- {
- return getMBeanServer().invoke(objectName, name, parameters, signature);
- }
-
- public ClassLoader getClassLoader() throws Throwable
- {
- if (serviceMetaData != null)
- {
- return getMBeanServer().getClassLoader(serviceMetaData.getClassLoaderName());
- }
- else
- {
- return getMBeanServer().getClassLoaderFor(objectName);
- }
- }
-
- public ControllerState lifecycleInvocation(String name, Object parameters[], String[] signature) throws Throwable
- {
- if (lifecycleInfo == null)
- lifecycleInfo = new LifecycleInfo(this);
-
- return lifecycleInfo.lifecycleInvocation(name, signature);
- }
-
- /**
- * Get the ObjectName.
- *
- * @return the ObjectName.
- */
- public ObjectName getObjectName()
- {
- return objectName;
- }
-
- /**
- * Get the serviceMetaData.
- *
- * @return the serviceMetaData.
- */
- public ServiceMetaData getServiceMetaData()
- {
- return serviceMetaData;
- }
-
- /**
- * Set the serviceMetaData.
- *
- * @param serviceMetaData the serviceMetaData.
- */
- public void setServiceMetaData(ServiceMetaData serviceMetaData)
- {
- this.serviceMetaData = serviceMetaData;
- }
-
- /**
- * Get the serviceController.
- *
- * @return the serviceController.
- */
- public ServiceController getServiceController()
- {
- return serviceController;
- }
-
- /**
- * Get the service proxy
- *
- * @return the service proxy
- * @throws Exception for any error
- */
- public Service getServiceProxy() throws Exception
- {
- if (serviceContext.proxy != null)
- return serviceContext.proxy;
-
- MBeanServer server = serviceController.getMBeanServer();
- if (server != null)
- serviceContext.proxy = ServiceProxy.getServiceProxy(objectName, server, includeLifecycle);
-
- return serviceContext.proxy;
- }
-
- /**
- * Get the service context
- *
- * @return the service context
- */
- public ServiceContext getServiceContext()
- {
- try
- {
- serviceContext.proxy = getServiceProxy();
- }
- catch (Exception ignored)
- {
- }
- if (getError() != null)
- serviceContext.setProblem(getError());
- if (getState() == ControllerState.ERROR)
- serviceContext.state = ServiceContext.FAILED;
- return serviceContext;
- }
-
- // Overridden to update the service context with any failure
- public void install(ControllerState fromState, ControllerState toState) throws Throwable
- {
- try
- {
- super.install(fromState, toState);
- }
- catch (Throwable t)
- {
- serviceContext.setProblem(t);
- serviceContext.state = ServiceContext.FAILED;
- throw t;
- }
- }
-
- // Overridden to update the service context with the installed/not installed state
- // i.e. of the ServiceController registration
- // Not to be confused with the microcontainer's (fully) installed state
- public void setController(Controller controller)
- {
- super.setController(controller);
- if (controller != null)
- {
- preprocessMetaData();
- serviceContext.state = ServiceContext.INSTALLED;
- }
- else
- serviceContext.state = ServiceContext.NOTYETINSTALLED;
- }
-
- /**
- * Preprocess the metadata for this context
- */
- protected void preprocessMetaData()
- {
- if (serviceMetaData == null)
- return;
- PreprocessMetaDataVisitor visitor = new PreprocessMetaDataVisitor();
- AccessController.doPrivileged(visitor);
- }
-
- /**
- * A visitor for the metadata that looks for dependencies.
- */
- protected class PreprocessMetaDataVisitor implements ServiceMetaDataVisitor, PrivilegedAction<Object>
- {
- /** The current context for when the dependencies are required */
- private ControllerState contextState = ControllerState.INSTANTIATED;
-
- /**
- * Visit the bean metadata node, this is the starting point
- */
- public Object run()
- {
- serviceMetaData.visit(this);
- return null;
- }
-
- /**
- * Visit a node
- *
- * @param node the node
- */
- public void visit(ServiceMetaDataVisitorNode node)
- {
- boolean trace = log.isTraceEnabled();
- if (trace)
- log.trace("Visit node " + node);
-
- // Visit the children of this node
- Iterator<? extends ServiceMetaDataVisitorNode> children = node.getChildren();
- if (children != null)
- {
- ControllerState restoreState = contextState;
- while (children.hasNext())
- {
- ServiceMetaDataVisitorNode child = children.next();
- try
- {
- child.visit(this);
- }
- finally
- {
- contextState = restoreState;
- }
- }
- }
- }
-
- public ServiceControllerContext getControllerContext()
- {
- return ServiceControllerContext.this;
- }
-
- public ControllerState getContextState()
- {
- return contextState;
- }
-
- public void addDependency(DependencyItem dependency)
- {
- getDependencyInfo().addIDependOn(dependency);
- }
-
- public void setContextState(ControllerState contextState)
- {
- this.contextState = contextState;
- }
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceControllerContextAction.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceControllerContextAction.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceControllerContextAction.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,56 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.microcontainer;
-
-import org.jboss.dependency.plugins.action.SimpleControllerContextAction;
-import org.jboss.dependency.spi.ControllerContext;
-import org.jboss.logging.Logger;
-
-/**
- * ServiceControllerContextAction.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @author <a href="ales.justin at jboss.com">Ales Justin</a>
- * @version $Revision$
- */
-public class ServiceControllerContextAction extends SimpleControllerContextAction<ServiceControllerContext>
-{
- protected Logger log = Logger.getLogger(getClass());
-
- protected ServiceControllerContext contextCast(ControllerContext context)
- {
- return ServiceControllerContext.class.cast(context);
- }
-
- protected boolean validateContext(ControllerContext context)
- {
- return (context instanceof ServiceControllerContext);
- }
-
- public void installAction(ServiceControllerContext context) throws Throwable
- {
- }
-
- public void uninstallAction(ServiceControllerContext context)
- {
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceControllerContextActions.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceControllerContextActions.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceControllerContextActions.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,93 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.microcontainer;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.jboss.dependency.plugins.AbstractControllerContextActions;
-import org.jboss.dependency.plugins.action.ControllerContextAction;
-import org.jboss.dependency.spi.ControllerState;
-
-/**
- * ServiceControllerContextActions.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class ServiceControllerContextActions extends AbstractControllerContextActions
-{
- /** The single instance */
- private static ServiceControllerContextActions instance;
- /** The lifecycle instance */
- private static ServiceControllerContextActions lifecycleOnly;
-
- /**
- * Get the instance
- *
- * @return the actions
- */
- public static ServiceControllerContextActions getInstance()
- {
- if (instance == null)
- {
- Map<ControllerState, ControllerContextAction> actions = new HashMap<ControllerState, ControllerContextAction>();
- actions.put(ControllerState.DESCRIBED, new DescribeAction());
- actions.put(ControllerState.INSTANTIATED, new InstantiateAction());
- actions.put(ControllerState.CONFIGURED, new ConfigureAction());
- actions.put(ControllerState.CREATE, new CreateDestroyLifecycleAction());
- actions.put(ControllerState.START, new StartStopLifecycleAction());
- actions.put(ControllerState.INSTALLED, new InstallAction());
- instance = new ServiceControllerContextActions(actions);
- }
- return instance;
- }
-
- /**
- * Get the instance
- *
- * @return the actions
- */
- public static ServiceControllerContextActions getLifecycleOnly()
- {
- if (lifecycleOnly == null)
- {
- Map<ControllerState, ControllerContextAction> actions = new HashMap<ControllerState, ControllerContextAction>();
- actions.put(ControllerState.INSTANTIATED, new OnlyUnregisterAction());
- actions.put(ControllerState.CREATE, new CreateDestroyLifecycleAction());
- actions.put(ControllerState.START, new StartStopLifecycleAction());
- lifecycleOnly = new ServiceControllerContextActions(actions);
- }
- return lifecycleOnly;
- }
-
-
- /**
- * Create a new ServiceControllerContextActions.
- *
- * @param actions the actions
- */
- protected ServiceControllerContextActions(Map<ControllerState, ControllerContextAction> actions)
- {
- super(actions);
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceProxy.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceProxy.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/ServiceProxy.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,227 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.microcontainer;
-
-import java.lang.reflect.InvocationHandler;
-import java.lang.reflect.Method;
-import java.lang.reflect.Proxy;
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.management.MBeanInfo;
-import javax.management.MBeanOperationInfo;
-import javax.management.MBeanServer;
-import javax.management.ObjectName;
-
-import org.jboss.mx.util.JMXExceptionDecoder;
-import org.jboss.system.Service;
-import org.jboss.system.ServiceController;
-
-/**
- * An implementation of InvocationHandler used to proxy of the Service
- * interface for mbeans. It determines which of the start/stop
- * methods of the Service interface an mbean implements by inspecting its
- * MBeanOperationInfo values. Each Service interface method that has a
- * matching operation is forwarded to the mbean by invoking the method
- * through the MBeanServer object.<p>
- *
- * This class is based on the old ServiceConfigurator
- *
- * @author <a href="mailto:marc at jboss.org">Marc Fleury</a>
- * @author <a href="mailto:hiram at jboss.org">Hiram Chirino</a>
- * @author <a href="mailto:d_jencks at users.sourceforge.net">David Jencks</a>
- * @author <a href="mailto:jason at planet57.com">Jason Dillon</a>
- * @author <a href="mailto:dimitris at jboss.org">Dimitris Andreadis</a>
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @author <a href="ales.justin at jboss.com">Ales Justin</a>
- * @version $Revision$
- */
-public class ServiceProxy implements InvocationHandler
-{
- /**
- * A mapping from the Service interface method names to the corresponding
- * index into the ServiceProxy.hasOp array.
- */
- private static Map<String, Integer> serviceOpMap = new HashMap<String, Integer>();
-
- // A singleton proxy with no callouts
- private static Service NO_LIFECYCLE_CALLOUT;
-
- /**
- * Initialize the service operation map.
- */
- static
- {
- serviceOpMap.put("create", 0);
- serviceOpMap.put("start", 1);
- serviceOpMap.put("destroy", 2);
- serviceOpMap.put("stop", 3);
- Class<?>[] interfaces = { Service.class };
- NO_LIFECYCLE_CALLOUT = (Service) Proxy.newProxyInstance(Service.class.getClassLoader(), interfaces, NoLifecycleCallout.INSTANCE);
- }
-
- private boolean[] hasOp = {false, false, false, false};
- private ObjectName objectName;
- private MBeanServer server;
-
- /** Whether we have the lifecycle method */
- private boolean hasJBossInternalLifecycle;
-
- /**
- * Get the Service interface through which the mbean given by objectName will be managed.
- *
- * @param objectName the object name
- * @param server the mbean server
- * @return The Service value
- * @throws Exception for any error
- */
- public static Service getServiceProxy(ObjectName objectName, MBeanServer server) throws Exception
- {
- return getServiceProxy(objectName, server, true);
- }
-
- /**
- * Get the Service interface through which the mbean given by objectName will be managed.
- *
- * @param objectName the object name
- * @param server the mbean server
- * @param includeLifecycle include lifecycle
- * @return The Service value
- * @throws Exception for any error
- */
- public static Service getServiceProxy(ObjectName objectName, MBeanServer server, boolean includeLifecycle) throws Exception
- {
- if (includeLifecycle)
- {
- MBeanInfo info = server.getMBeanInfo(objectName);
- MBeanOperationInfo[] opInfo = info.getOperations();
- Class<?>[] interfaces = { Service.class };
- InvocationHandler handler = new ServiceProxy(objectName, server, opInfo);
- return (Service) Proxy.newProxyInstance(Service.class.getClassLoader(), interfaces, handler);
- }
- else
- {
- return NO_LIFECYCLE_CALLOUT;
- }
- }
-
- /**
- * Go through the opInfo array and for each operation that matches on of
- * the Service interface methods set the corresponding hasOp array value
- * to true.
- *
- * @param objectName the object name
- * @param server the mbean server
- * @param opInfo the MBean operation info
- */
- public ServiceProxy(ObjectName objectName, MBeanServer server, MBeanOperationInfo[] opInfo)
- {
- this.server = server;
- this.objectName = objectName;
-
- for (MBeanOperationInfo info : opInfo)
- {
- String name = info.getName();
-
- if (name.equals(ServiceController.JBOSS_INTERNAL_LIFECYCLE))
- {
- hasJBossInternalLifecycle = true;
- continue;
- }
-
- Integer opID = serviceOpMap.get(name);
- if (opID == null)
- {
- continue;
- }
-
- // Validate that is a no-arg void return type method
- if (info.getReturnType().equals("void") == false)
- {
- continue;
- }
- if (info.getSignature().length != 0)
- {
- continue;
- }
-
- hasOp[opID] = true;
- }
- }
-
- /**
- * Map the method name to a Service interface method index and if the
- * corresponding hasOp array element is true, dispatch the method to the
- * mbean we are proxying.
- *
- * @param proxy the proxy
- * @param method the method
- * @param args the args
- * @return always null.
- * @throws Throwable for any error
- */
- public Object invoke(Object proxy, Method method, Object[] args) throws Throwable
- {
- String name = method.getName();
-
- if (hasJBossInternalLifecycle)
- {
- try
- {
- server.invoke(objectName, ServiceController.JBOSS_INTERNAL_LIFECYCLE, new Object[] { name }, ServiceController.JBOSS_INTERNAL_LIFECYCLE_SIG);
- return null;
- }
- catch (Exception e)
- {
- throw JMXExceptionDecoder.decode(e);
- }
- }
-
- Integer opID = serviceOpMap.get(name);
-
- if (opID != null && hasOp[opID])
- {
- // deal with those pesky JMX exceptions
- try
- {
- String[] sig = {};
- server.invoke(objectName, name, args, sig);
- }
- catch (Exception e)
- {
- throw JMXExceptionDecoder.decode(e);
- }
- }
-
- return null;
- }
-
- private static class NoLifecycleCallout implements InvocationHandler
- {
- private static NoLifecycleCallout INSTANCE = new NoLifecycleCallout();
-
- public Object invoke(Object proxy, Method method, Object[] args) throws Throwable
- {
- return null;
- }
- }
-}
Deleted: branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/StartStopLifecycleAction.java
===================================================================
--- branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/StartStopLifecycleAction.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/system-jmx/src/main/java/org/jboss/system/microcontainer/StartStopLifecycleAction.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,69 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.system.microcontainer;
-
-import javax.management.ObjectName;
-
-import org.jboss.system.Service;
-import org.jboss.system.ServiceContext;
-import org.jboss.system.ServiceController;
-import org.jboss.system.ServiceMBean;
-
-/**
- * StartStopLifecycleAction.
- *
- * @author <a href="adrian at jboss.com">Adrian Brock</a>
- * @version $Revision$
- */
-public class StartStopLifecycleAction extends ServiceControllerContextAction
-{
- public void installAction(ServiceControllerContext context) throws Throwable
- {
- Service service = context.getServiceProxy();
- service.start();
-
- context.getServiceContext().state = ServiceContext.RUNNING;
-
- ObjectName objectName = context.getObjectName();
- ServiceController serviceController = context.getServiceController();
- serviceController.sendControllerNotification(ServiceMBean.START_EVENT, objectName);
- }
-
- public void uninstallAction(ServiceControllerContext context)
- {
- try
- {
- Service service = context.getServiceProxy();
- service.stop();
-
- context.getServiceContext().state = ServiceContext.STOPPED;
-
- ObjectName objectName = context.getObjectName();
- ServiceController serviceController = context.getServiceController();
- serviceController.sendControllerNotification(ServiceMBean.STOP_EVENT, objectName);
- }
- catch (Throwable t)
- {
- log.debug("Error during stop for " + context.getObjectName(), t);
- }
- }
-}
Modified: branches/vfs3-int/testsuite/.classpath
===================================================================
--- branches/vfs3-int/testsuite/.classpath 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/.classpath 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
+ <classpathentry excluding="org/jboss/test/JBossRMIAdaptorHelper.java|org/jboss/test/JBossTestSuite.java|org/jboss/test/SmokeTestSuite.java|org/jboss/test/bank/|org/jboss/test/bankiiop/|org/jboss/test/banknew/|org/jboss/test/bench/|org/jboss/test/binding/|org/jboss/test/bmp/|org/jboss/test/bootstrapdependencies/|org/jboss/test/bpel/|org/jboss/test/cache/|org/jboss/test/classloader/|org/jboss/test/client/|org/jboss/test/cluster/|org/jboss/test/cmp2/|org/jboss/test/common/|org/jboss/test/compatibility/|org/jboss/test/console/|org/jboss/test/cts/|org/jboss/test/dbtest/|org/jboss/test/deadlock/|org/jboss/test/deployers/|org/jboss/test/deployment/|org/jboss/test/ee5client/|org/jboss/test/ejb/|org/jboss/test/ejb3/|org/jboss/test/ejbconf/|org/jboss/test/entity/|org/jboss/test/entitydepends/|org/jboss/test/entityexc/|org/jboss/test/excepiiop/|org/jboss/test/exception/|org/jboss/test/guid/|org/jboss/test/ha/|org/jboss/test/hello/|org/jboss/test/helloiiop/|org/jboss/test/hellojrmpiio!
p/|org/jboss/test/hibernate/|org/jboss/test/idgen/|org/jboss/test/iiop/|org/jboss/test/iiopperf/|org/jboss/test/invokers/|org/jboss/test/isolation/|org/jboss/test/jacc/|org/jboss/test/javassist/|org/jboss/test/jaxr/|org/jboss/test/jbossmessaging/|org/jboss/test/jbossmx/|org/jboss/test/jbossts/|org/jboss/test/jca/|org/jboss/test/jcaprops/|org/jboss/test/jms/|org/jboss/test/jmsra/|org/jboss/test/jmx/|org/jboss/test/jpa/|org/jboss/test/jrmp/|org/jboss/test/jsf/|org/jboss/test/kernel/|org/jboss/test/load/|org/jboss/test/lock/|org/jboss/test/management/|org/jboss/test/marathon/|org/jboss/test/marshal/|org/jboss/test/marshaliiop/|org/jboss/test/mdb/|org/jboss/test/mdbsessionpoolclear/|org/jboss/test/messagedriven/|org/jboss/test/naming/|org/jboss/test/passwordinjection/|org/jboss/test/perf/|org/jboss/test/pooled/|org/jboss/test/profileservice/|org/jboss/test/proxycompiler/|org/jboss/test/readahead/|org/jboss/test/refs/|org/jboss/test/retry/|org/jboss/test/scoped/|org/jboss/test/s!
ecurity/|org/jboss/test/securitymgr/|org/jboss/test/session/|o!
rg/jboss
/test/sessionsync/|org/jboss/test/snmp/|org/jboss/test/spring/|org/jboss/test/stax/|org/jboss/test/testbean/|org/jboss/test/testbean2/|org/jboss/test/testbeancluster/|org/jboss/test/testbyvalue/|org/jboss/test/threading/|org/jboss/test/timer/|org/jboss/test/tm/|org/jboss/test/txiiop/|org/jboss/test/txtimer/|org/jboss/test/varia/|org/jboss/test/web/|org/jboss/test/webservice/|org/jboss/test/ws/|org/jboss/test/xa/|org/jboss/test/xml/|org/jboss/test/xslt/" kind="src" path="src/main"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
<classpathentry kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
<classpathentry kind="output" path="target/classes"/>
Modified: branches/vfs3-int/testsuite/build.xml
===================================================================
--- branches/vfs3-int/testsuite/build.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/build.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -285,12 +285,11 @@
<fileset refid="org.jboss.ws:jbossws-spi:jar"/>
<fileset refid="org.jboss.ws.native:jbossws-native-client:jar"/>
<fileset refid="org.jboss.ws.native:jbossws-native-core:jar"/>
- <fileset refid="org.jboss.ws.native:jbossws-native-jaxrpc:jar"/>
- <fileset refid="org.jboss.ws.native:jbossws-native-jaxws-ext:jar"/>
- <fileset refid="org.jboss.ws.native:jbossws-native-jaxws:jar"/>
<fileset refid="org.jboss.ws.native:jbossws-native-management:war"/>
<fileset refid="org.jboss.ws.native:jbossws-native-resources:jar"/>
- <fileset refid="org.jboss.ws.native:jbossws-native-saaj:jar"/>
+ <fileset refid="org.jboss.ws.native:jbossws-native-factories:jar"/>
+ <fileset refid="javax.xml:jaxrpc-api:jar"/>
+ <fileset refid="javax.xml.soap:saaj-api:jar"/>
<fileset refid="org.jboss:jbossxb:jar"/>
<fileset refid="org.jboss.metadata:jboss-metadata-common:jar"/>
<fileset refid="org.jboss.metadata:jboss-metadata-client:jar"/>
@@ -335,6 +334,7 @@
<fileset refid="org.jboss.deployers:jboss-deployers-core:jar"/>
<fileset refid="org.jboss.deployers:jboss-deployers-core-spi:jar"/>
<fileset refid="org.jboss.deployers:jboss-deployers-impl:jar"/>
+ <fileset refid="org.jboss.deployers:jboss-deployers-jmx:jar"/>
<fileset refid="org.jboss.deployers:jboss-deployers-spi:jar"/>
<fileset refid="org.jboss.deployers:jboss-deployers-structure-spi:jar"/>
<fileset refid="org.jboss.deployers:jboss-deployers-vfs-spi:jar"/>
@@ -345,6 +345,7 @@
<fileset refid="org.jboss.kernel:jboss-aop-mc-int:jar"/>
<fileset refid="org.jboss.kernel:jboss-dependency:jar"/>
<fileset refid="org.jboss.kernel:jboss-kernel:jar"/>
+ <fileset refid="org.jboss.kernel:jboss-jmx-mc-int:jar"/>
<!-- For classloader leak tests -->
<fileset refid="jboss.profiler.jvmti:jboss-profiler-jvmti:jar"/>
@@ -395,7 +396,9 @@
<path refid="jboss.internal-server.classpath"/>
<fileset refid="org.jboss.mx:jboss-j2se:jar"/>
<fileset refid="org.jboss.mx:jboss-jmx:jar"/>
+ <fileset refid="org.jboss.mx:jboss-jmx-annotations:jar"/>
<fileset refid="org.jboss.mx:jboss-mbeans:jar"/>
+ <fileset refid="org.jboss.mx:jboss-mbeanserver:jar"/>
<fileset refid="org.jboss.javaee:jboss-jaspi-api:jar"/>
<fileset refid="org.jboss.javaee:jboss-javaee:jar"/>
<fileset refid="org.jboss.javaee:jboss-ejb-api:jar"/>
@@ -3675,7 +3678,7 @@
</target>
-->
- <target name="validate-server-configs"
+ <target name="validate-server-configs" depends="init"
description="Validate the start/stop of the testsuite server configs">
<!-- minimal -->
<server:start name="minimal"/>
Modified: branches/vfs3-int/testsuite/imports/config/tests-jts-propagation.xml
===================================================================
--- branches/vfs3-int/testsuite/imports/config/tests-jts-propagation.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/imports/config/tests-jts-propagation.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -23,9 +23,10 @@
| ./build.sh tests-jts-propagation
|
| or for particular test scenario:
- | ./build.sh -Djbossts.ejbX={ejb2|ejb3} -Djbossts.transport={jrmp|iiop} -Djbossts.target=jts-propagation-tests-single tests-jts-propagation
+ | ./build.sh -Djbossts.ejbX={ejb2|ejb3} -Djbossts.transport={jrmp|iiop} -Djbossts.clientTx={false|true} -Djbossts.target=jts-propagation-tests-single tests-jts-propagation
|
| Note: If you want to force the wiping out any txs in doubt from DB before the test you can use the property -DwipeOutTxsInDoubtBeforeTest=true.
+ | Note 2: The default database is PostgreSQL 8.3. To change this you need to set the property jbossts.db like for the crash recovery tests.
-->
<target name="tests-jts-propagation" depends="init-dependencies"
description="Runs JBossTS JTS propagation tests">
@@ -44,6 +45,7 @@
<property name="jbossts.target" value="jts-propagation-tests" />
<property name="jbossts.max.time" value="300000" />
<property name="jbossts.clientTx" value="false" />
+ <property name="jbossts.db" value="psql_8.3" />
<run-jts-propag-test target="${jbossts.target}" />
@@ -77,6 +79,8 @@
<sysproperty key="jboss.home" value="${jbosstest.dist}" />
<sysproperty key="jboss.dist" value="${jboss.dist}" />
<sysproperty key="astest.jar.dir" value="${build.lib}" />
+ <sysproperty key="astest.jar.name" value="jts-propagation-ejb3.jar" />
+ <sysproperty key="astest.ejb2.jar.name" value="jts-propagation-ejb2.jar" />
<sysproperty key="astest.jar.deploy.dir" value="../../lib" />
<sysproperty key="build.reports" value="${build.reports}" />
<sysproperty key="jbossas.startup.timeout" value="480" />
@@ -85,6 +89,7 @@
<sysproperty key="jbossts.ejbX" value="${jbossts.ejbX}" />
<sysproperty key="jbossts.transport" value="${jbossts.transport}" />
<sysproperty key="jbossts.clientTx" value="${jbossts.clientTx}" />
+ <sysproperty key="jbossts.db" value="${jbossts.db}" />
<sysproperty key="node0" value="${node0}" />
<sysproperty key="node1" value="${node0}" /> <!-- uses the Service Binding Manager -->
<sysproperty key="testTime" value="${jbossts.max.time}" />
@@ -153,7 +158,7 @@
</replace>
<!-- more verbose logging
- FIXME modify it for new transactions, i.e. for deploy/transaction-jboss-beans.xml file
+ FIXME modify it for new jbossts version, i.e. for deploy/transaction-jboss-beans.xml file
<replace file="${jboss.dist}/server/@{conf}/conf/jbossts-properties.xml">
<replacetoken><![CDATA[type="System" value="0x00000000"]]></replacetoken>
<replacevalue><![CDATA[type="System" value="0xffffffff"]]></replacevalue>
Modified: branches/vfs3-int/testsuite/imports/sections/ejb3.xml
===================================================================
--- branches/vfs3-int/testsuite/imports/sections/ejb3.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/imports/sections/ejb3.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -124,10 +124,49 @@
</fileset>
</jar>
</target>
+
+ <target name="ejb31nointerface" depends="compile">
+ <mkdir dir="${build.lib}" />
+
+ <jar destfile="${build.lib}/ejb31nointerface.jar">
+ <fileset dir="${build.classes}">
+ <include name="org/jboss/test/ejb3/nointerface/**" />
+ </fileset>
+ </jar>
+ </target>
+ <target name="ejb3war" depends="compile">
+ <mkdir dir="${build.lib}" />
+
+ <jar destfile="${build.lib}/ejb3-webinf-lib-jar.jar">
+ <fileset dir="${build.classes}">
+ <include name="org/jboss/test/ejb3/war/deployment/CounterBeanInWEBINFLibJar.class" />
+ </fileset>
+ </jar>
+
+ <war warfile="${build.lib}/ejb3war.war"
+ webxml="${source.resources}/ejb3/war/deployment/web.xml">
+
+ <webinf dir="${source.resources}/ejb3/war/deployment">
+ <include name="ejb-jar.xml"/>
+ </webinf>
+
+ <classes dir="${build.classes}">
+ <include name="org/jboss/test/ejb3/war/deployment/Counter.class"/>
+ <include name="org/jboss/test/ejb3/war/deployment/CounterDelegateBeanInWarEjbJarXml.class"/>
+ <include name="org/jboss/test/ejb3/war/deployment/CalculatorInWEBINFClasses.class"/>
+ </classes>
+ <lib dir="${build.lib}">
+ <include name="ejb3-webinf-lib-jar.jar"/>
+ </lib>
+ </war>
+
+ </target>
+
+
<target name="_jars-ejb3" depends="ejb3-servlet,jbas6161,jbas6239,
jbas7526,
- ejbthree1597,ejbthree7376, jboss51xsd">
+ ejbthree1597,ejbthree7376, jboss51xsd, ejb31nointerface, ejb3war">
<mkdir dir="${build.lib}" />
<!-- A jar with a simple ejb3 session -->
Modified: branches/vfs3-int/testsuite/imports/sections/seam.xml
===================================================================
--- branches/vfs3-int/testsuite/imports/sections/seam.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/imports/sections/seam.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -6,6 +6,7 @@
<mkdir dir="${build.lib}"/>
+<!--
<maven:dependencies filesetId="examples.fileset" versionsId="examples.versions">
<dependency groupId="org.jboss.seam.examples" artifactId="jboss-seam-booking" version="${seam_version}" type="ear"/>
<dependency groupId="org.jboss.seam.examples" artifactId="jboss-seam-booking" version="${seam_version}" type="xml" classifier="ds"/>
@@ -21,6 +22,15 @@
<fileset refid="examples.fileset" />
<mapper classpathref="maven-ant-tasks.classpath" classname="org.apache.maven.artifact.ant.VersionMapper" from="${examples.versions}" to="flatten" />
</copy>
+-->
+
+ <!-- JBAS-7594 -->
+ <copy todir="${build.lib}" overwrite="true" flatten="true">
+ <fileset dir="${source.resources}/deployers/seam">
+ <include name="*/*.*"/>
+ </fileset>
+ </copy>
+
</target>
Modified: branches/vfs3-int/testsuite/imports/server-config.xml
===================================================================
--- branches/vfs3-int/testsuite/imports/server-config.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/imports/server-config.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -10,7 +10,7 @@
be valid for the platform.
-->
<property name="jboss.dist"
- value="${project.root}${/}build${/}output${/}jboss-${version}"/>
+ value="${project.root}${/}build${/}target${/}jboss-${version}"/>
<property name="jboss.test.deploy.dir"
value="${project.root}${/}testsuite${/}output${/}lib"/>
<!-- Override for non-Sun compatible JDK layouts -->
Copied: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface (from rev 99666, trunk/testsuite/src/main/org/jboss/test/ejb3/nointerface)
Deleted: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManager.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManager.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManager.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,33 +0,0 @@
-/**
- *
- */
-package org.jboss.test.ejb3.nointerface;
-
-/**
- * AccountManager
- *
- * @author Jaikiran Pai
- * @version $Revision: $
- */
-public interface AccountManager
-{
- /**
- * Credits the amount from the account corresponding to the
- * <code>accountNumber</code>
- *
- * @param accountNumber Account number
- * @param amount Amount to be credited
- * @return
- */
- int credit(long accountNumber, int amount);
-
- /**
- * Debits the amount from the account corresponding to the
- * <code>accountNumber</code>
- *
- * @param accountNumber Account number
- * @param amount Amount to be debited
- * @return
- */
- int debit(long accountNumber, int amount);
-}
\ No newline at end of file
Copied: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManager.java (from rev 99666, trunk/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManager.java)
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManager.java (rev 0)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManager.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,33 @@
+/**
+ *
+ */
+package org.jboss.test.ejb3.nointerface;
+
+/**
+ * AccountManager
+ *
+ * @author Jaikiran Pai
+ * @version $Revision: $
+ */
+public interface AccountManager
+{
+ /**
+ * Credits the amount from the account corresponding to the
+ * <code>accountNumber</code>
+ *
+ * @param accountNumber Account number
+ * @param amount Amount to be credited
+ * @return
+ */
+ int credit(long accountNumber, int amount);
+
+ /**
+ * Debits the amount from the account corresponding to the
+ * <code>accountNumber</code>
+ *
+ * @param accountNumber Account number
+ * @param amount Amount to be debited
+ * @return
+ */
+ int debit(long accountNumber, int amount);
+}
\ No newline at end of file
Deleted: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManagerBean.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManagerBean.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManagerBean.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,81 +0,0 @@
-/**
- *
- */
-package org.jboss.test.ejb3.nointerface;
-
-import javax.ejb.EJB;
-import javax.ejb.Remote;
-import javax.ejb.Stateful;
-import javax.naming.Context;
-import javax.naming.InitialContext;
-import javax.naming.NamingException;
-
-import org.jboss.ejb3.annotation.RemoteBinding;
-
-
-
-/**
- * AccountManagerBean
- *
- * @author Jaikiran Pai
- * @version $Revision: $
- */
- at Stateful
- at Remote (AccountManager.class)
- at RemoteBinding (jndiBinding = AccountManagerBean.JNDI_NAME)
-public class AccountManagerBean implements AccountManager
-{
-
- /**
- * JNDI name
- */
- public static final String JNDI_NAME = "AccountManagerRemoteView";
-
- /**
- * Inject the no-interface view of the Calculator
- */
- @EJB
- private Calculator simpleCalculator;
-
- /**
- * @see org.jboss.ejb3.nointerface.integration.test.common.AccountManager#credit(int)
- */
- @Override
- public int credit(long accountNumber, int amount)
- {
- // get current account balance of this account number, from DB.
- // But for this example let's just hardcode it
- int currentBalance = 100;
-
- Calculator calculator = null;
- // lookup the no-interface view of the Calculator
- // We could have used the injected Calculator too, but
- // in this method we wanted to demonstrate how to lookup an no-interface view
- try
- {
- Context context = new InitialContext();
- calculator = (Calculator) context.lookup(Calculator.class.getSimpleName() + "/no-interface");
- }
- catch (NamingException ne)
- {
- throw new RuntimeException("Could not lookup no-interface view of calculator: ", ne);
- }
- return calculator.add(currentBalance, amount);
-
- }
-
- /**
- * @see org.jboss.ejb3.nointerface.integration.test.common.AccountManager#debit(int)
- */
- @Override
- public int debit(long accountNumber, int amount)
- {
- // get current account balance of this account number, from DB.
- // But for this example let's just hardcode it
- int currentBalance = 100;
-
- // let's use the injected calculator
- return this.simpleCalculator.subtract(currentBalance, amount);
- }
-
-}
Copied: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManagerBean.java (from rev 99666, trunk/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManagerBean.java)
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManagerBean.java (rev 0)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/AccountManagerBean.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,81 @@
+/**
+ *
+ */
+package org.jboss.test.ejb3.nointerface;
+
+import javax.ejb.EJB;
+import javax.ejb.Remote;
+import javax.ejb.Stateful;
+import javax.naming.Context;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+
+import org.jboss.ejb3.annotation.RemoteBinding;
+
+
+
+/**
+ * AccountManagerBean
+ *
+ * @author Jaikiran Pai
+ * @version $Revision: $
+ */
+ at Stateful
+ at Remote (AccountManager.class)
+ at RemoteBinding (jndiBinding = AccountManagerBean.JNDI_NAME)
+public class AccountManagerBean implements AccountManager
+{
+
+ /**
+ * JNDI name
+ */
+ public static final String JNDI_NAME = "AccountManagerRemoteView";
+
+ /**
+ * Inject the no-interface view of the Calculator
+ */
+ @EJB
+ private Calculator simpleCalculator;
+
+ /**
+ * @see org.jboss.ejb3.nointerface.integration.test.common.AccountManager#credit(int)
+ */
+ @Override
+ public int credit(long accountNumber, int amount)
+ {
+ // get current account balance of this account number, from DB.
+ // But for this example let's just hardcode it
+ int currentBalance = 100;
+
+ Calculator calculator = null;
+ // lookup the no-interface view of the Calculator
+ // We could have used the injected Calculator too, but
+ // in this method we wanted to demonstrate how to lookup an no-interface view
+ try
+ {
+ Context context = new InitialContext();
+ calculator = (Calculator) context.lookup(Calculator.class.getSimpleName() + "/no-interface");
+ }
+ catch (NamingException ne)
+ {
+ throw new RuntimeException("Could not lookup no-interface view of calculator: ", ne);
+ }
+ return calculator.add(currentBalance, amount);
+
+ }
+
+ /**
+ * @see org.jboss.ejb3.nointerface.integration.test.common.AccountManager#debit(int)
+ */
+ @Override
+ public int debit(long accountNumber, int amount)
+ {
+ // get current account balance of this account number, from DB.
+ // But for this example let's just hardcode it
+ int currentBalance = 100;
+
+ // let's use the injected calculator
+ return this.simpleCalculator.subtract(currentBalance, amount);
+ }
+
+}
Deleted: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/Calculator.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/ejb3/nointerface/Calculator.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/Calculator.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,26 +0,0 @@
-/**
- *
- */
-package org.jboss.test.ejb3.nointerface;
-
-import javax.ejb.Stateless;
-
-/**
- * Calculator
- *
- * @author Jaikiran Pai
- * @version $Revision: $
- */
- at Stateless
-public class Calculator
-{
- public int subtract(int a, int b)
- {
- return a - b;
- }
-
- public int add(int a, int b)
- {
- return a + b;
- }
-}
Copied: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/Calculator.java (from rev 99666, trunk/testsuite/src/main/org/jboss/test/ejb3/nointerface/Calculator.java)
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/Calculator.java (rev 0)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/Calculator.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,26 @@
+/**
+ *
+ */
+package org.jboss.test.ejb3.nointerface;
+
+import javax.ejb.Stateless;
+
+/**
+ * Calculator
+ *
+ * @author Jaikiran Pai
+ * @version $Revision: $
+ */
+ at Stateless
+public class Calculator
+{
+ public int subtract(int a, int b)
+ {
+ return a - b;
+ }
+
+ public int add(int a, int b)
+ {
+ return a + b;
+ }
+}
Copied: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/unit (from rev 99666, trunk/testsuite/src/main/org/jboss/test/ejb3/nointerface/unit)
Deleted: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/unit/EJB31NoInterfaceViewTestCase.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/ejb3/nointerface/unit/EJB31NoInterfaceViewTestCase.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/unit/EJB31NoInterfaceViewTestCase.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,72 +0,0 @@
-/**
- *
- */
-package org.jboss.test.ejb3.nointerface.unit;
-
-import javax.naming.Context;
-import javax.naming.InitialContext;
-
-import junit.framework.Test;
-
-import org.jboss.test.JBossTestCase;
-import org.jboss.test.ejb3.nointerface.AccountManager;
-import org.jboss.test.ejb3.nointerface.AccountManagerBean;
-import org.jboss.test.ejb3.nointerface.Calculator;
-
-/**
- * EJB31NoInterfaceViewTestCase
- *
- * Tests EJB3.1 no-interface view support
- *
- * @author Jaikiran Pai
- * @version $Revision: $
- */
-public class EJB31NoInterfaceViewTestCase extends JBossTestCase
-{
-
- /**
- *
- * @param name
- */
- public EJB31NoInterfaceViewTestCase(String name)
- {
- super(name);
- }
-
- /**
- *
- * @return
- * @throws Exception
- */
- public static Test suite() throws Exception
- {
- return getDeploySetup(EJB31NoInterfaceViewTestCase.class, "ejb31nointerface.jar");
- }
-
- /**
- * Tests (indirect) access to a no-interface view bean ({@link Calculator})
- *
- * @see Calculator and it's usage in {@link AccountManagerBean}
- * @throws Exception
- */
- public void testNoInterfaceViewAccess() throws Exception
- {
- Context ctx = new InitialContext();
- AccountManager accountMgr = (AccountManager) ctx.lookup(AccountManagerBean.JNDI_NAME);
-
- long dummyAccountNumber = 123;
- // credit 50 dollars (Note that the current balance is hard coded in the bean to 100)
- // so after crediting, the current balance is going to be 150
- int currentBalance = accountMgr.credit(dummyAccountNumber, 50);
-
- assertEquals("Unexpected account balance after credit", 150, currentBalance);
-
- // now let's debit 10 dollars (Note that the current balance is again hard coded in the bean to 100).
- // So after debiting, the current balance is going to be 90
- currentBalance = accountMgr.debit(dummyAccountNumber, 10);
-
- assertEquals("Unexpected account balance after debit", 90, currentBalance);
- }
-
-
-}
Copied: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/unit/EJB31NoInterfaceViewTestCase.java (from rev 99666, trunk/testsuite/src/main/org/jboss/test/ejb3/nointerface/unit/EJB31NoInterfaceViewTestCase.java)
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/unit/EJB31NoInterfaceViewTestCase.java (rev 0)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/nointerface/unit/EJB31NoInterfaceViewTestCase.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,72 @@
+/**
+ *
+ */
+package org.jboss.test.ejb3.nointerface.unit;
+
+import javax.naming.Context;
+import javax.naming.InitialContext;
+
+import junit.framework.Test;
+
+import org.jboss.test.JBossTestCase;
+import org.jboss.test.ejb3.nointerface.AccountManager;
+import org.jboss.test.ejb3.nointerface.AccountManagerBean;
+import org.jboss.test.ejb3.nointerface.Calculator;
+
+/**
+ * EJB31NoInterfaceViewTestCase
+ *
+ * Tests EJB3.1 no-interface view support
+ *
+ * @author Jaikiran Pai
+ * @version $Revision: $
+ */
+public class EJB31NoInterfaceViewTestCase extends JBossTestCase
+{
+
+ /**
+ *
+ * @param name
+ */
+ public EJB31NoInterfaceViewTestCase(String name)
+ {
+ super(name);
+ }
+
+ /**
+ *
+ * @return
+ * @throws Exception
+ */
+ public static Test suite() throws Exception
+ {
+ return getDeploySetup(EJB31NoInterfaceViewTestCase.class, "ejb31nointerface.jar");
+ }
+
+ /**
+ * Tests (indirect) access to a no-interface view bean ({@link Calculator})
+ *
+ * @see Calculator and it's usage in {@link AccountManagerBean}
+ * @throws Exception
+ */
+ public void testNoInterfaceViewAccess() throws Exception
+ {
+ Context ctx = new InitialContext();
+ AccountManager accountMgr = (AccountManager) ctx.lookup(AccountManagerBean.JNDI_NAME);
+
+ long dummyAccountNumber = 123;
+ // credit 50 dollars (Note that the current balance is hard coded in the bean to 100)
+ // so after crediting, the current balance is going to be 150
+ int currentBalance = accountMgr.credit(dummyAccountNumber, 50);
+
+ assertEquals("Unexpected account balance after credit", 150, currentBalance);
+
+ // now let's debit 10 dollars (Note that the current balance is again hard coded in the bean to 100).
+ // So after debiting, the current balance is going to be 90
+ currentBalance = accountMgr.debit(dummyAccountNumber, 10);
+
+ assertEquals("Unexpected account balance after debit", 90, currentBalance);
+ }
+
+
+}
Copied: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war (from rev 99666, trunk/testsuite/src/main/org/jboss/test/ejb3/war)
Copied: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment (from rev 99666, trunk/testsuite/src/main/org/jboss/test/ejb3/war/deployment)
Deleted: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CalculatorInWEBINFClasses.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CalculatorInWEBINFClasses.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CalculatorInWEBINFClasses.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,34 +0,0 @@
-/**
- *
- */
-package org.jboss.test.ejb3.war.deployment;
-
-import javax.ejb.Stateless;
-
-import org.jboss.test.ejb3.war.deployment.unit.Ejb3WarDeploymentTestCase;
-
-/**
- * CalculatorInWEBINFClasses
- *
- * A no-interface view bean which will be placed in the .war/WEB-INF/classes folder.
- * Will be used in {@link Ejb3WarDeploymentTestCase} for testing deployment of EJBs
- * through war files as defined in EJB3.1 Spec, Section 20.4
- *
- * @author Jaikiran Pai
- * @version $Revision: $
- */
- at Stateless
-public class CalculatorInWEBINFClasses
-{
-
- public int add (int a, int b)
- {
- return a + b;
- }
-
- public int subtract (int a, int b)
- {
- return a - b;
- }
-}
-
Copied: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CalculatorInWEBINFClasses.java (from rev 99666, trunk/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CalculatorInWEBINFClasses.java)
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CalculatorInWEBINFClasses.java (rev 0)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CalculatorInWEBINFClasses.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,34 @@
+/**
+ *
+ */
+package org.jboss.test.ejb3.war.deployment;
+
+import javax.ejb.Stateless;
+
+import org.jboss.test.ejb3.war.deployment.unit.Ejb3WarDeploymentTestCase;
+
+/**
+ * CalculatorInWEBINFClasses
+ *
+ * A no-interface view bean which will be placed in the .war/WEB-INF/classes folder.
+ * Will be used in {@link Ejb3WarDeploymentTestCase} for testing deployment of EJBs
+ * through war files as defined in EJB3.1 Spec, Section 20.4
+ *
+ * @author Jaikiran Pai
+ * @version $Revision: $
+ */
+ at Stateless
+public class CalculatorInWEBINFClasses
+{
+
+ public int add (int a, int b)
+ {
+ return a + b;
+ }
+
+ public int subtract (int a, int b)
+ {
+ return a - b;
+ }
+}
+
Deleted: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/Counter.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/ejb3/war/deployment/Counter.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/Counter.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,18 +0,0 @@
-/**
- *
- */
-package org.jboss.test.ejb3.war.deployment;
-
-/**
- * Counter
- *
- * @author Jaikiran Pai
- * @version $Revision: $
- */
-public interface Counter
-{
-
- int increment();
-
- int decrement();
-}
Copied: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/Counter.java (from rev 99666, trunk/testsuite/src/main/org/jboss/test/ejb3/war/deployment/Counter.java)
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/Counter.java (rev 0)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/Counter.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,18 @@
+/**
+ *
+ */
+package org.jboss.test.ejb3.war.deployment;
+
+/**
+ * Counter
+ *
+ * @author Jaikiran Pai
+ * @version $Revision: $
+ */
+public interface Counter
+{
+
+ int increment();
+
+ int decrement();
+}
Deleted: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterBeanInWEBINFLibJar.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterBeanInWEBINFLibJar.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterBeanInWEBINFLibJar.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,52 +0,0 @@
-/**
- *
- */
-package org.jboss.test.ejb3.war.deployment;
-
-import javax.ejb.EJB;
-import javax.ejb.Remote;
-import javax.ejb.Stateful;
-
-import org.jboss.test.ejb3.war.deployment.unit.Ejb3WarDeploymentTestCase;
-
-/**
- * CounterBeanInWEBINFLibJar
- *
- * A Stateful bean configured deployed through a jar file in .war/WEB-INF/lib folder.
- * This bean uses a no-interface view bean ({@link CalculatorInWEBINFClasses}) to
- * perform its operations.
- *
- * Will be used in {@link Ejb3WarDeploymentTestCase} for testing deployment of EJBs
- * through war files as defined in EJB3.1 Spec, Section 20.4
- *
- * @author Jaikiran Pai
- * @version $Revision: $
- */
- at Stateful
- at Remote (Counter.class)
-public class CounterBeanInWEBINFLibJar implements Counter
-{
-
- private int count = 0;
-
- /**
- * Inject the no-interface view bean
- */
- @EJB
- private CalculatorInWEBINFClasses calculator;
-
- @Override
- public int decrement()
- {
- this.count = this.calculator.subtract(this.count, 1);
- return this.count;
- }
-
- @Override
- public int increment()
- {
- this.count = this.calculator.add(this.count, 1);
- return this.count;
- }
-
-}
Copied: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterBeanInWEBINFLibJar.java (from rev 99666, trunk/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterBeanInWEBINFLibJar.java)
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterBeanInWEBINFLibJar.java (rev 0)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterBeanInWEBINFLibJar.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,52 @@
+/**
+ *
+ */
+package org.jboss.test.ejb3.war.deployment;
+
+import javax.ejb.EJB;
+import javax.ejb.Remote;
+import javax.ejb.Stateful;
+
+import org.jboss.test.ejb3.war.deployment.unit.Ejb3WarDeploymentTestCase;
+
+/**
+ * CounterBeanInWEBINFLibJar
+ *
+ * A Stateful bean configured deployed through a jar file in .war/WEB-INF/lib folder.
+ * This bean uses a no-interface view bean ({@link CalculatorInWEBINFClasses}) to
+ * perform its operations.
+ *
+ * Will be used in {@link Ejb3WarDeploymentTestCase} for testing deployment of EJBs
+ * through war files as defined in EJB3.1 Spec, Section 20.4
+ *
+ * @author Jaikiran Pai
+ * @version $Revision: $
+ */
+ at Stateful
+ at Remote (Counter.class)
+public class CounterBeanInWEBINFLibJar implements Counter
+{
+
+ private int count = 0;
+
+ /**
+ * Inject the no-interface view bean
+ */
+ @EJB
+ private CalculatorInWEBINFClasses calculator;
+
+ @Override
+ public int decrement()
+ {
+ this.count = this.calculator.subtract(this.count, 1);
+ return this.count;
+ }
+
+ @Override
+ public int increment()
+ {
+ this.count = this.calculator.add(this.count, 1);
+ return this.count;
+ }
+
+}
Deleted: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterDelegateBeanInWarEjbJarXml.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterDelegateBeanInWarEjbJarXml.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterDelegateBeanInWarEjbJarXml.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,47 +0,0 @@
-/**
- *
- */
-package org.jboss.test.ejb3.war.deployment;
-
-import javax.ejb.EJB;
-
-import org.jboss.test.ejb3.war.deployment.unit.Ejb3WarDeploymentTestCase;
-
-/**
- * CounterDelegateBeanInWarEjbJarXml
- *
- * A Stateful bean configured through a ejb-jar.xml in .war/WEB-INF folder. This bean
- * just delegates the calls to a bean ({@link CounterBeanInWEBINFLibJar}) which is deployed
- * in the .war/WEB-INF/lib/<somejar>.jar
- *
- * Will be used in {@link Ejb3WarDeploymentTestCase} for testing deployment of EJBs
- * through war files as defined in EJB3.1 Spec, Section 20.4
- *
- *
- * @author Jaikiran Pai
- * @version $Revision: $
- */
-public class CounterDelegateBeanInWarEjbJarXml implements Counter
-{
-
-
- /**
- *
- */
- @EJB(beanName = "CounterBeanInWEBINFLibJar")
- private Counter counterBean;
-
-
- @Override
- public int decrement()
- {
- return this.counterBean.decrement();
- }
-
- @Override
- public int increment()
- {
- return this.counterBean.increment();
- }
-
-}
Copied: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterDelegateBeanInWarEjbJarXml.java (from rev 99666, trunk/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterDelegateBeanInWarEjbJarXml.java)
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterDelegateBeanInWarEjbJarXml.java (rev 0)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/CounterDelegateBeanInWarEjbJarXml.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,47 @@
+/**
+ *
+ */
+package org.jboss.test.ejb3.war.deployment;
+
+import javax.ejb.EJB;
+
+import org.jboss.test.ejb3.war.deployment.unit.Ejb3WarDeploymentTestCase;
+
+/**
+ * CounterDelegateBeanInWarEjbJarXml
+ *
+ * A Stateful bean configured through a ejb-jar.xml in .war/WEB-INF folder. This bean
+ * just delegates the calls to a bean ({@link CounterBeanInWEBINFLibJar}) which is deployed
+ * in the .war/WEB-INF/lib/<somejar>.jar
+ *
+ * Will be used in {@link Ejb3WarDeploymentTestCase} for testing deployment of EJBs
+ * through war files as defined in EJB3.1 Spec, Section 20.4
+ *
+ *
+ * @author Jaikiran Pai
+ * @version $Revision: $
+ */
+public class CounterDelegateBeanInWarEjbJarXml implements Counter
+{
+
+
+ /**
+ *
+ */
+ @EJB(beanName = "CounterBeanInWEBINFLibJar")
+ private Counter counterBean;
+
+
+ @Override
+ public int decrement()
+ {
+ return this.counterBean.decrement();
+ }
+
+ @Override
+ public int increment()
+ {
+ return this.counterBean.increment();
+ }
+
+}
Copied: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/unit (from rev 99666, trunk/testsuite/src/main/org/jboss/test/ejb3/war/deployment/unit)
Deleted: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/unit/Ejb3WarDeploymentTestCase.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/ejb3/war/deployment/unit/Ejb3WarDeploymentTestCase.java 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/unit/Ejb3WarDeploymentTestCase.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,70 +0,0 @@
-/**
- *
- */
-package org.jboss.test.ejb3.war.deployment.unit;
-
-import javax.naming.Context;
-import javax.naming.InitialContext;
-
-import junit.framework.Test;
-
-import org.jboss.test.JBossTestCase;
-import org.jboss.test.ejb3.war.deployment.Counter;
-
-/**
- * Ejb3WarDeploymentTestCase
- *
- * TestCase for testing the deployment of EJBs through .war files as defined
- * in EJB3.1 Spec, Section 20.4.
- *
- * @see https://jira.jboss.org/jira/browse/JBAS-7639
- * @author Jaikiran Pai
- * @version $Revision: $
- */
-public class Ejb3WarDeploymentTestCase extends JBossTestCase
-{
-
- public Ejb3WarDeploymentTestCase(String name)
- {
- super(name);
- }
-
- /**
- *
- * @return
- * @throws Exception
- */
- public static Test suite() throws Exception
- {
- return getDeploySetup(Ejb3WarDeploymentTestCase.class, "ejb3war.war");
- }
-
- /**
- * Tests that the beans deployed through a .war, in various ways (WEB-INF/ejb-jar.xml,
- * WEB-INF/lib/<somejar>.jar, WEB-INF/classes) works correctly.
- *
- * @throws Exception
- */
- public void testEjbDeploymentInWar() throws Exception
- {
- Context ctx = new InitialContext();
- Counter counter = (Counter) ctx.lookup("CounterDelegateBean/remote");
-
- int count = counter.increment();
- assertEquals("Unexpected count after increment", 1, count);
-
- // increment one more time
- count = counter.increment();
- assertEquals("Unexpected count after second increment", 2, count);
-
- // now decrement
- count = counter.decrement();
- assertEquals("Unexpected count after decrement", 1, count);
-
- // decrement one more time
- count = counter.decrement();
- assertEquals("Unexpected count after second decrement", 0, count);
-
- }
-
-}
Copied: branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/unit/Ejb3WarDeploymentTestCase.java (from rev 99666, trunk/testsuite/src/main/org/jboss/test/ejb3/war/deployment/unit/Ejb3WarDeploymentTestCase.java)
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/unit/Ejb3WarDeploymentTestCase.java (rev 0)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/ejb3/war/deployment/unit/Ejb3WarDeploymentTestCase.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,70 @@
+/**
+ *
+ */
+package org.jboss.test.ejb3.war.deployment.unit;
+
+import javax.naming.Context;
+import javax.naming.InitialContext;
+
+import junit.framework.Test;
+
+import org.jboss.test.JBossTestCase;
+import org.jboss.test.ejb3.war.deployment.Counter;
+
+/**
+ * Ejb3WarDeploymentTestCase
+ *
+ * TestCase for testing the deployment of EJBs through .war files as defined
+ * in EJB3.1 Spec, Section 20.4.
+ *
+ * @see https://jira.jboss.org/jira/browse/JBAS-7639
+ * @author Jaikiran Pai
+ * @version $Revision: $
+ */
+public class Ejb3WarDeploymentTestCase extends JBossTestCase
+{
+
+ public Ejb3WarDeploymentTestCase(String name)
+ {
+ super(name);
+ }
+
+ /**
+ *
+ * @return
+ * @throws Exception
+ */
+ public static Test suite() throws Exception
+ {
+ return getDeploySetup(Ejb3WarDeploymentTestCase.class, "ejb3war.war");
+ }
+
+ /**
+ * Tests that the beans deployed through a .war, in various ways (WEB-INF/ejb-jar.xml,
+ * WEB-INF/lib/<somejar>.jar, WEB-INF/classes) works correctly.
+ *
+ * @throws Exception
+ */
+ public void testEjbDeploymentInWar() throws Exception
+ {
+ Context ctx = new InitialContext();
+ Counter counter = (Counter) ctx.lookup("CounterDelegateBean/remote");
+
+ int count = counter.increment();
+ assertEquals("Unexpected count after increment", 1, count);
+
+ // increment one more time
+ count = counter.increment();
+ assertEquals("Unexpected count after second increment", 2, count);
+
+ // now decrement
+ count = counter.decrement();
+ assertEquals("Unexpected count after decrement", 1, count);
+
+ // decrement one more time
+ count = counter.decrement();
+ assertEquals("Unexpected count after second decrement", 0, count);
+
+ }
+
+}
Deleted: branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/compliance/timer/JBossTimerBasicTestCase.java
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/compliance/timer/JBossTimerBasicTestCase.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/compliance/timer/JBossTimerBasicTestCase.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,50 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2006, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.test.jbossmx.compliance.timer;
-
-/**
- * Basic timer test, targeting org.jboss.mx.timer.JBossTimer.
- *
- * @see BasicTestCase
- *
- * @author <a href="mailto:dimitris at jboss.org">Dimitris Andreadis</a>
- */
-public class JBossTimerBasicTestCase extends BasicTestCase
-{
- // Constructor ---------------------------------------------------------------
-
- public JBossTimerBasicTestCase(String s)
- {
- super(s);
- }
-
- // Overrides -----------------------------------------------------------------
-
- /**
- * The timer class to test
- */
- protected String getTestedTimerClass()
- {
- // the jboss timer
- return "org.jboss.mx.timer.JBossTimer";
- }
-}
Deleted: branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/compliance/timer/JBossTimerPeriodTestCase.java
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/compliance/timer/JBossTimerPeriodTestCase.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/compliance/timer/JBossTimerPeriodTestCase.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,50 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2006, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.test.jbossmx.compliance.timer;
-
-/**
- * Period timer test, targeting org.jboss.mx.timer.JBossTimer.
- *
- * @see PeriodTestCase
- *
- * @author <a href="mailto:dimitris at jboss.org">Dimitris Andreadis</a>
- */
-public class JBossTimerPeriodTestCase extends PeriodTestCase
-{
- // Constructor ---------------------------------------------------------------
-
- public JBossTimerPeriodTestCase(String s)
- {
- super(s);
- }
-
- // Overrides -----------------------------------------------------------------
-
- /**
- * The timer class to test
- */
- protected String getTestedTimerClass()
- {
- // the jboss timer
- return "org.jboss.mx.timer.JBossTimer";
- }
-}
Deleted: branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/implementation/util/AgentIDTestCase.java
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/implementation/util/AgentIDTestCase.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/implementation/util/AgentIDTestCase.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,68 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source.
- * Copyright 2008, Red Hat Middleware LLC, and individual contributors
- * as indicated by the @author tags. See the copyright.txt file in the
- * distribution for a full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-package org.jboss.test.jbossmx.implementation.util;
-
-import javax.management.MBeanServer;
-import javax.management.MBeanServerFactory;
-import javax.management.ObjectName;
-
-import org.jboss.test.jbossmx.implementation.TestCase;
-
-import org.jboss.mx.server.ServerConstants;
-import org.jboss.mx.util.AgentID;
-
-
-public class AgentIDTestCase
- extends TestCase
- implements ServerConstants
-{
- public AgentIDTestCase(String s)
- {
- super(s);
- }
-
- public void testCreate()
- {
- String id1 = AgentID.create();
- String id2 = AgentID.create();
-
- assertTrue(!id1.equals(id2));
- }
-
- public void testGet()
- {
- try
- {
- MBeanServer server = MBeanServerFactory.createMBeanServer();
- String id1 = (String)server.getAttribute(new ObjectName(MBEAN_SERVER_DELEGATE), "MBeanServerId");
- String id2 = AgentID.get(server);
-
- assertTrue(id1.equals(id2));
- }
- catch (Throwable t)
- {
- log.debug("failed", t);
- fail("Unexpected error: " + t.toString());
- }
- }
-
-}
Modified: branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/implementation/util/MBeanProxyTestCase.java
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/implementation/util/MBeanProxyTestCase.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossmx/implementation/util/MBeanProxyTestCase.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -31,7 +31,7 @@
import org.jboss.test.jbossmx.implementation.util.support.TrivialMBean;
import org.jboss.mx.util.MBeanProxy;
-import org.jboss.mx.util.AgentID;
+import org.jboss.mx.util.MBeanServerLocator;
public class MBeanProxyTestCase
@@ -52,7 +52,7 @@
server.registerMBean(new Trivial(), oname);
TrivialMBean mbean = (TrivialMBean)MBeanProxy.get(
- TrivialMBean.class, oname, AgentID.get(server));
+ TrivialMBean.class, oname, MBeanServerLocator.getId(server));
}
catch (Throwable t)
{
@@ -71,7 +71,7 @@
server.registerMBean(new Trivial(), oname);
TrivialMBean mbean = (TrivialMBean)MBeanProxy.get(
- TrivialMBean.class, oname, AgentID.get(server));
+ TrivialMBean.class, oname, MBeanServerLocator.getId(server));
mbean.doOperation();
mbean.setSomething("JBossMX");
Modified: branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/JTSContextPropagation01/TestContextPropagation.java
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/JTSContextPropagation01/TestContextPropagation.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/JTSContextPropagation01/TestContextPropagation.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -200,11 +200,11 @@
print(existingXidsInDoubtServer0.size() + " txs in doubt in database on server0 before test run");
print(existingXidsInDoubtServer1.size() + " txs in doubt in database on server1 before test run");
}
-
+
// name of this test will be the primary key for test record in DB
String testEntityPKServer0 = getName() + "_" + serverName0;
String testEntityPKServer1 = getName() + "_" + serverName1;
-
+
// initialize databases
TestEntity initEntityServer0 = initDatabase(serverName0, testEntityPKServer0);
TestEntity initEntityServer1 = initDatabase(serverName1, testEntityPKServer1);
@@ -232,6 +232,7 @@
wipeOutTxsInDoubt(serverName1, existingXidsInDoubtServer1, xidsInDoubtAfterTestServer1);
}
+
assertTrue("Propagation test failed.", result);
assertTrue("Incorrect data in database on server0.", dbChangedServer0);
assertTrue("Incorrect data in database on server1.", dbChangedServer1);
@@ -268,7 +269,7 @@
String res = null;
if (clientTx)
- startTx(serverName0);
+ startTx(host0, jndiPort0);
if (useEJB3)
{
@@ -476,10 +477,10 @@
return (TestEntityHelperRem) config.getNamingContext(serverName).lookup(TestEntityHelper.REMOTE_JNDI_NAME);
}
- protected void startTx(String serverName) throws NamingException, SystemException, NotSupportedException, SubtransactionsUnavailable, org.omg.CORBA.SystemException, InvalidName
+ protected void startTx(String host, int jndiPort) throws Exception
{
if (isDebug)
- print("startTx at serverName=" + serverName + ", useOTS = " + useOTS);
+ print("startTx at host " + host + ", jndiPort " + jndiPort + " and useOTS " + useOTS);
if (useOTS)
{
@@ -488,7 +489,7 @@
}
else
{
- tx = (UserTransaction) config.getNamingContext(serverName).lookup("UserTransaction");
+ tx = (UserTransaction) EJBUtils.lookupObject(host, jndiPort, "UserTransaction");
tx.begin();
}
}
Modified: branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/recovery/ASFailureMode.java
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/recovery/ASFailureMode.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/recovery/ASFailureMode.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -23,34 +23,160 @@
import java.io.Serializable;
/**
- * Specification of what to do when a failure is injected
+ * Specification of what to do when a failure is injected.
*/
-public enum ASFailureMode implements Serializable
+public class ASFailureMode implements Serializable
{
- NONE(false)
+ private static final int _NONE = 0;
+ private static final int _HALT = 1;
+ private static final int _EXIT = 2;
+ private static final int _SUSPEND = 3;
+ private static final int _XAEXCEPTION = 4;
+ private static final int _EJBEXCEPTION = 5;
+ private static final int _ROLLBACK_ONLY = 6;
+
+ private static final String _NONE_NAME = "NONE";
+ private static final String _HALT_NAME = "HALT";
+ private static final String _EXIT_NAME = "EXIT";
+ private static final String _SUSPEND_NAME = "SUSPEND";
+ private static final String _XAEXCEPTION_NAME = "XAEXCEPTION";
+ private static final String _EJBEXCEPTION_NAME = "EJBEXCEPTION";
+ private static final String _ROLLBACK_ONLY_NAME = "ROLLBACK_ONLY";
+
+ /* just for simpler transition from the enum type */
+ public static final ASFailureMode NONE = new ASFailureMode(_NONE);
+ public static final ASFailureMode HALT = new ASFailureMode(_HALT);
+ public static final ASFailureMode EXIT = new ASFailureMode(_EXIT);
+ public static final ASFailureMode SUSPEND = new ASFailureMode(_SUSPEND);
+ public static final ASFailureMode XAEXCEPTION = new ASFailureMode(_XAEXCEPTION);
+ public static final ASFailureMode EJBEXCEPTION = new ASFailureMode(_EJBEXCEPTION);
+ public static final ASFailureMode ROLLBACK_ONLY = new ASFailureMode(_ROLLBACK_ONLY);
+
+ private int mode;
+
+ public ASFailureMode(int mode)
+ {
+ this.mode = mode;
+ }
+
+ public boolean willTerminateVM()
+ {
+ switch (mode)
+ {
+ case _HALT:
+ case _EXIT:
+ return true;
+ default:
+ return false;
+ }
+ }
+
+ /* enum like methods */
+ public String name()
+ {
+ switch (mode)
+ {
+ case _NONE:
+ return _NONE_NAME;
+ case _HALT:
+ return _HALT_NAME;
+ case _EXIT:
+ return _EXIT_NAME;
+ case _SUSPEND:
+ return _SUSPEND_NAME;
+ case _XAEXCEPTION:
+ return _XAEXCEPTION_NAME;
+ case _EJBEXCEPTION:
+ return _EJBEXCEPTION_NAME;
+ case _ROLLBACK_ONLY:
+ return _ROLLBACK_ONLY_NAME;
+ default:
+ return "uninstantiated";
+ }
+ }
+
+ public int ordinal()
+ {
+ return mode;
+ }
+
+ public static ASFailureMode valueOf(String mode)
+ {
+ if (_NONE_NAME.equalsIgnoreCase(mode))
+ return NONE;
+ else if (_HALT_NAME.equalsIgnoreCase(mode))
+ return HALT;
+ else if (_EXIT_NAME.equalsIgnoreCase(mode))
+ return EXIT;
+ else if (_SUSPEND_NAME.equalsIgnoreCase(mode))
+ return SUSPEND;
+ else if (_XAEXCEPTION_NAME.equalsIgnoreCase(mode))
+ return XAEXCEPTION;
+ else if (_EJBEXCEPTION_NAME.equalsIgnoreCase(mode))
+ return EJBEXCEPTION;
+ else if (_ROLLBACK_ONLY_NAME.equalsIgnoreCase(mode))
+ return ROLLBACK_ONLY;
+ else
+ throw new IllegalArgumentException("There is no such value of ASFailureMode like " + mode);
+ }
+
+ @Override
+ public int hashCode()
+ {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + mode;
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj)
+ {
+ if (this == obj)
+ return true;
+ if (obj == null)
+ return false;
+ if (getClass() != obj.getClass())
+ return false;
+ ASFailureMode other = (ASFailureMode) obj;
+ if (mode != other.mode)
+ return false;
+ return true;
+ }
+
+ @Override
+ public String toString()
+ {
+ return name();
+ }
+
+
+/*
+ NONE
- ,HALT(true) // halt the JVM
- ,EXIT(true) // exit the JVM
- ,SUSP(false) // suspend the calling thread
- ,XAEX(false) // fail via one of the xa exception codes
- ,EJEX(false) // fail via EJBException -- for using only with ASFailureType.PRE_PREPARE and SYNCH_BEFORE
- ,RBLY(false) // mark a transaction as rollback-only -- for using only with ASFailureType.PRE_PREPARE and SYNCH_BEFORE
+ ,HALT // halt the JVM
+ ,EXIT // exit the JVM
+ ,SUSPEND // suspend the calling thread
+ ,XAEXCEPTION // fail via one of the xa exception codes
+ ,EJBEXCEPTION // fail via EJBException -- for using only with ASFailureType.PRE_PREPARE and SYNCH_BEFORE
+ ,ROLLBACK_ONLY // mark a transaction as rollback-only -- for using only with ASFailureType.PRE_PREPARE and SYNCH_BEFORE
;
- private boolean willTerminateVM;
-
- ASFailureMode(boolean willTerminateVM)
- {
- this.willTerminateVM = willTerminateVM;
- }
-
public boolean willTerminateVM()
{
- return willTerminateVM;
+ switch (this)
+ {
+ case HALT:
+ case EXIT:
+ return true;
+ default:
+ return false;
+ }
}
public static ASFailureMode toEnum(String mode)
{
return ASFailureMode.valueOf(mode.toUpperCase());
}
+ */
}
Modified: branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/recovery/ASFailureType.java
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/recovery/ASFailureType.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/recovery/ASFailureType.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -23,10 +23,165 @@
import java.io.Serializable;
/**
- * Specification of when to inject a failure
+ * Specification of when to inject a failure.
*/
-public enum ASFailureType implements Serializable
+public class ASFailureType implements Serializable
{
+ private static final int _NONE = 1;
+ private static final int _PRE_PREPARE = 2;
+ private static final int _XARES_START = 3;
+ private static final int _XARES_END = 4;
+ private static final int _XARES_PREPARE = 5;
+ private static final int _XARES_ROLLBACK = 6;
+ private static final int _XARES_COMMIT = 7;
+ private static final int _XARES_RECOVER = 8;
+ private static final int _XARES_FORGET = 9;
+ private static final int _SYNCH_BEFORE = 10;
+ private static final int _SYNCH_AFTER = 11;
+
+ private static final String _NONE_NAME = "NONE";
+ private static final String _PRE_PREPARE_NAME = "PRE_PREPARE";
+ private static final String _XARES_START_NAME = "XARES_START";
+ private static final String _XARES_END_NAME = "XARES_END";
+ private static final String _XARES_PREPARE_NAME = "XARES_PREPARE";
+ private static final String _XARES_ROLLBACK_NAME = "XARES_ROLLBACK";
+ private static final String _XARES_COMMIT_NAME = "XARES_COMMIT";
+ private static final String _XARES_RECOVER_NAME = "XARES_RECOVER";
+ private static final String _XARES_FORGET_NAME = "XARES_FORGET";
+ private static final String _SYNCH_BEFORE_NAME = "SYNCH_BEFORE";
+ private static final String _SYNCH_AFTER_NAME = "SYNCH_AFTER";
+
+ public static final ASFailureType NONE = new ASFailureType(_NONE);
+ public static final ASFailureType PRE_PREPARE = new ASFailureType(_PRE_PREPARE);
+ public static final ASFailureType XARES_START = new ASFailureType(_XARES_START);
+ public static final ASFailureType XARES_END = new ASFailureType(_XARES_END);
+ public static final ASFailureType XARES_PREPARE = new ASFailureType(_XARES_PREPARE);
+ public static final ASFailureType XARES_ROLLBACK = new ASFailureType(_XARES_ROLLBACK);
+ public static final ASFailureType XARES_COMMIT = new ASFailureType(_XARES_COMMIT);
+ public static final ASFailureType XARES_RECOVER = new ASFailureType(_XARES_RECOVER);
+ public static final ASFailureType XARES_FORGET = new ASFailureType(_XARES_FORGET);
+ public static final ASFailureType SYNCH_BEFORE = new ASFailureType(_SYNCH_BEFORE);
+ public static final ASFailureType SYNCH_AFTER = new ASFailureType(_SYNCH_AFTER);
+
+ private int type;
+
+ public ASFailureType(int type)
+ {
+ this.type = type;
+ }
+
+ public boolean isXA()
+ {
+ return name().startsWith("XARES");
+ }
+
+ public boolean isSynchronization()
+ {
+ return name().startsWith("SYNCH");
+ }
+
+ public boolean isPreCommit()
+ {
+ return equals(PRE_PREPARE);
+ }
+
+ /* enum like methods */
+ public String name()
+ {
+ switch (type)
+ {
+ case _NONE:
+ return _NONE_NAME;
+ case _PRE_PREPARE:
+ return _PRE_PREPARE_NAME;
+ case _XARES_START:
+ return _XARES_START_NAME;
+ case _XARES_END:
+ return _XARES_END_NAME;
+ case _XARES_PREPARE:
+ return _XARES_PREPARE_NAME;
+ case _XARES_ROLLBACK:
+ return _XARES_ROLLBACK_NAME;
+ case _XARES_COMMIT:
+ return _XARES_COMMIT_NAME;
+ case _XARES_RECOVER:
+ return _XARES_RECOVER_NAME;
+ case _XARES_FORGET:
+ return _XARES_FORGET_NAME;
+ case _SYNCH_BEFORE:
+ return _SYNCH_BEFORE_NAME;
+ case _SYNCH_AFTER:
+ return _SYNCH_AFTER_NAME;
+ default:
+ return "uninstantiated";
+ }
+ }
+
+ public int ordinal()
+ {
+ return type;
+ }
+
+ public static ASFailureType valueOf(String mode)
+ {
+ if (_NONE_NAME.equalsIgnoreCase(mode))
+ return NONE;
+ else if (_PRE_PREPARE_NAME.equalsIgnoreCase(mode))
+ return PRE_PREPARE;
+ else if (_XARES_START_NAME.equalsIgnoreCase(mode))
+ return XARES_START;
+ else if (_XARES_END_NAME.equalsIgnoreCase(mode))
+ return XARES_END;
+ else if (_XARES_PREPARE_NAME.equalsIgnoreCase(mode))
+ return XARES_PREPARE;
+ else if (_XARES_ROLLBACK_NAME.equalsIgnoreCase(mode))
+ return XARES_ROLLBACK;
+ else if (_XARES_COMMIT_NAME.equalsIgnoreCase(mode))
+ return XARES_COMMIT;
+ else if (_XARES_RECOVER_NAME.equalsIgnoreCase(mode))
+ return XARES_RECOVER;
+ else if (_XARES_FORGET_NAME.equalsIgnoreCase(mode))
+ return XARES_FORGET;
+ else if (_SYNCH_BEFORE_NAME.equalsIgnoreCase(mode))
+ return SYNCH_BEFORE;
+ else if (_SYNCH_AFTER_NAME.equalsIgnoreCase(mode))
+ return SYNCH_AFTER;
+ else
+ throw new IllegalArgumentException("There is no such value of ASFailureType like " + mode);
+ }
+
+ @Override
+ public int hashCode()
+ {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + type;
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj)
+ {
+ if (this == obj)
+ return true;
+ if (obj == null)
+ return false;
+ if (getClass() != obj.getClass())
+ return false;
+ ASFailureType other = (ASFailureType) obj;
+ if (type != other.type)
+ return false;
+ return true;
+ }
+
+ @Override
+ public String toString()
+ {
+ return name();
+ }
+
+
+/*
NONE
,PRE_PREPARE // do something before prepare is called
@@ -62,4 +217,5 @@
{
return equals(PRE_PREPARE);
}
+*/
}
Modified: branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/recovery/ASTestResource.java
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/recovery/ASTestResource.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/recovery/ASTestResource.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -106,13 +106,13 @@
System.out.println(message + " ... exiting");
System.exit(1);
}
- else if (_xaFailureMode.equals(ASFailureMode.SUSP))
+ else if (_xaFailureMode.equals(ASFailureMode.SUSPEND))
{
System.out.println(message + " ... suspending for " + _suspend);
suspend(_suspend);
System.out.println(message + " ... resuming");
}
- else if (_xaFailureMode.equals(ASFailureMode.RBLY))
+ else if (_xaFailureMode.equals(ASFailureMode.ROLLBACK_ONLY))
{
System.out.println(message + " ... marking the current transaction as rollback-only");
setRollbackOnly();
@@ -156,18 +156,18 @@
if (args != null && args.length != 0)
{
- if (_xaFailureMode.equals(ASFailureMode.SUSP))
+ if (_xaFailureMode.equals(ASFailureMode.SUSPEND))
{
_suspend = Integer.parseInt(args[0]);
}
- else if (_xaFailureMode.equals(ASFailureMode.XAEX))
+ else if (_xaFailureMode.equals(ASFailureMode.XAEXCEPTION))
{
_xaException = xaCodeMap.get(args[0]);
if (_xaException == null)
_xaException = new XAException(XAException.XAER_RMFAIL);
}
- else if (_xaFailureMode.equals(ASFailureMode.EJEX))
+ else if (_xaFailureMode.equals(ASFailureMode.EJBEXCEPTION))
{
_ejbException = new EJBException(args[0]);
}
@@ -353,6 +353,6 @@
public boolean expectException()
{
- return _xaFailureMode.equals(ASFailureMode.XAEX);
+ return _xaFailureMode.equals(ASFailureMode.XAEXCEPTION) || _xaFailureMode.equals(ASFailureMode.EJBEXCEPTION);
}
}
Modified: branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/EJBUtils.java
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/EJBUtils.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/EJBUtils.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -32,6 +32,8 @@
import org.jboss.test.jbossts.txpropagation.ejb2.TxPropagationEJB2Rem;
import org.jboss.test.jbossts.txpropagation.ejb3.TxPropagationRem;
+import com.arjuna.orbportability.ORB;
+
public class EJBUtils
{
private static String EJB2_JNDI_CORBA_FAC = "com.sun.jndi.cosnaming.CNCtxFactory";
@@ -46,6 +48,7 @@
private static String JNDI_FAC = "org.jboss.naming.NamingContextFactory"; //"org.jnp.interfaces.NamingContextFactory"
private static String JNDI_URL = "jnp://HOST:PORT";
private static String JNDI_PKGS = "org.jboss.naming.client:org.jnp.interfaces";
+// private static String JNDI_PKGS_SERVER = "org.jboss.naming:org.jnp.interfaces";
@@ -67,6 +70,11 @@
}
}
+ public static Object lookupObject(String host, int jndiPort, String name) throws Exception
+ {
+ return lookupObject(host, jndiPort, 0, name, false);
+ }
+
public static Object lookupObject(String host, int jndiPort, int corbaPort, String name, boolean useOTS) throws Exception
{
System.out.println("looking up " + name + " on host " + host);
@@ -75,8 +83,30 @@
return ctx.lookup(name);
}
+
+ private static boolean oi = false;
+
+ /**
+ * Initialize an ORB for sending IIOP requests to another JBoss server
+ * TODO this should not be neccessary - figure out why the default orb
+ * running in the server is used
+ */
+ private static void initOrb()
+ {
+ if (!oi)
+ {
+ oi = true;
+ ORB orb = ORB.getInstance("ServerSide");
+ orb.initORB(new String[] {}, null);
+ }
+ }
+
+
public static Context getNamingContext(String host, int jndiPort, int corbaPort, boolean useOTS) throws NamingException, IOException
{
+// if (useOTS && corbaPort == 3628)
+// initOrb();
+
Properties properties = new Properties();
String url = useOTS ? EJB2_JNDI_CORBA_URL : JNDI_URL;
String fac = useOTS ? EJB2_JNDI_CORBA_FAC : JNDI_FAC;
@@ -104,7 +134,7 @@
if (useOTS)
throw new UnsupportedOperationException("ejb3 does not support IIOP protocol yet");
- return (TxPropagationRem) lookupEjb(host, jndiPort, corbaPort, TxPropagationRem.JNDI_NAME, TxPropagationRem.class, false);
+ return (TxPropagationRem) lookupObject(host, jndiPort, corbaPort, TxPropagationRem.JNDI_NAME, false);
}
}
Modified: branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/ORBWrapper.java
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/ORBWrapper.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/ORBWrapper.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -26,7 +26,7 @@
import com.arjuna.orbportability.RootOA;
/**
- * Simple class to start and stop an ORB for use with OTS based transactions
+ * Simple class to start and stop an ORB for use with OTS based transactions.
*/
public class ORBWrapper
{
@@ -36,9 +36,8 @@
public void start() throws InvalidName
{
orb = com.arjuna.orbportability.ORB.getInstance("ClientSide");
- System.err.println("orb="+orb);
oa = com.arjuna.orbportability.OA.getRootOA(orb);
- System.err.println("oa="+oa);
+
orb.initORB(new String[] {}, null);
oa.initOA();
}
Modified: branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/ejb3/TxPropagationBean.java
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/ejb3/TxPropagationBean.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/ejb3/TxPropagationBean.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -35,7 +35,7 @@
private static Logger log = Logger.getLogger(TxPropagationBean.class);
- // Dedicated for the first call of the propagation tests.
+ // Dedicated for the first call of the propagation tests.
@TransactionAttribute(TransactionAttributeType.REQUIRED)
public String testXA(ASFailureSpec[] fSpecsNode, ASFailureSpec[] fSpecsRemoteNode, String testEntityPK, String testEntityPKRemoteNode, String remoteHost, boolean expectFailureOnRemoteNode, boolean useOTS, int remoteJndiPort, int remoteCorbaPort)
{
@@ -112,5 +112,4 @@
return xatest.startTest(tx) ? "Passed" : "Failed";
}
}
-
}
Modified: branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/ejb3/TxPropagationRem.java
===================================================================
--- branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/ejb3/TxPropagationRem.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/main/org/jboss/test/jbossts/txpropagation/ejb3/TxPropagationRem.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -20,10 +20,10 @@
*/
package org.jboss.test.jbossts.txpropagation.ejb3;
+import javax.ejb.Remote;
+
import org.jboss.test.jbossts.recovery.ASFailureSpec;
-import javax.ejb.Remote;
-
@Remote
public interface TxPropagationRem
{
@@ -49,5 +49,5 @@
* @param testEntityPK
* @return
*/
- String testXA(ASFailureSpec[] fSpecsNode, String testEntityPK);
+ public String testXA(ASFailureSpec[] fSpecsNode, String testEntityPK);
}
Modified: branches/vfs3-int/testsuite/src/resources/aop/mcdefaultannotation/META-INF/jboss-beans.xml
===================================================================
--- branches/vfs3-int/testsuite/src/resources/aop/mcdefaultannotation/META-INF/jboss-beans.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/resources/aop/mcdefaultannotation/META-INF/jboss-beans.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -13,10 +13,12 @@
</aop:bind>
<bean name="TestAOPBean" class="org.jboss.test.aop.mcdefaultannotation.MyBean">
+ <annotation>@org.jboss.aop.microcontainer.annotations.EnableAopProxy</annotation>
<annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.aop:name=Bean", exposedInterface=org.jboss.test.aop.mcdefaultannotation.BeanInterface.class)</annotation>
<annotation>@org.jboss.test.aop.mcdefaultannotation.TestAnnotation</annotation>
</bean>
<bean name="TestAOPBean2" class="org.jboss.test.aop.mcdefaultannotation.MyBean">
+ <annotation>@org.jboss.aop.microcontainer.annotations.EnableAopProxy</annotation>
<annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.aop:name=Bean2", exposedInterface=org.jboss.test.aop.mcdefaultannotation.BeanInterface.class)</annotation>
<annotation>@org.jboss.test.aop.mcdefaultannotation.TestAnnotation(property="Overridden")</annotation>
</bean>
Modified: branches/vfs3-int/testsuite/src/resources/aop/mcjmx/META-INF/has-dependency-jboss-beans.xml
===================================================================
--- branches/vfs3-int/testsuite/src/resources/aop/mcjmx/META-INF/has-dependency-jboss-beans.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/resources/aop/mcjmx/META-INF/has-dependency-jboss-beans.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -17,6 +17,7 @@
<interceptor-ref name="DependencyAdvice"/>
</bind>
- <bean name="BeanWithDependency" class="org.jboss.test.aop.mcjmx.BeanWithDependency"/>
-
+ <bean name="BeanWithDependency" class="org.jboss.test.aop.mcjmx.BeanWithDependency">
+ <annotation>@org.jboss.aop.microcontainer.annotations.EnableAopProxy</annotation>
+ </bean>
</deployment>
Modified: branches/vfs3-int/testsuite/src/resources/aop/mcjmx/META-INF/jboss-beans.xml
===================================================================
--- branches/vfs3-int/testsuite/src/resources/aop/mcjmx/META-INF/jboss-beans.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/resources/aop/mcjmx/META-INF/jboss-beans.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -3,9 +3,11 @@
<bean name="AnnotatedBean" class="org.jboss.test.aop.mcjmx.AnnotatedBean"/>
<bean name="XmlBean" class="org.jboss.test.aop.mcjmx.XmlBean">
+ <annotation>@org.jboss.aop.microcontainer.annotations.EnableAopProxy</annotation>
<annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.aop:name=XmlBean", exposedInterface=org.jboss.test.aop.mcjmx.BeanInterface.class)</annotation>
</bean>
<bean name="BeanWithCtorMethodCall" class="org.jboss.test.aop.mcjmx.SubClassBeanWithMethodCallInCtor">
+ <annotation>@org.jboss.aop.microcontainer.annotations.EnableAopProxy</annotation>
<annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.aop:name=BeanWithCtorMethodCall", exposedInterface=org.jboss.test.aop.mcjmx.BeanInterface.class)</annotation>
</bean>
</deployment>
Modified: branches/vfs3-int/testsuite/src/resources/aop/scopeddependency/scoped/META-INF/jboss-beans.xml
===================================================================
--- branches/vfs3-int/testsuite/src/resources/aop/scopeddependency/scoped/META-INF/jboss-beans.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/resources/aop/scopeddependency/scoped/META-INF/jboss-beans.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -15,6 +15,7 @@
<interceptor-ref name="ScopedInterceptor"/>
</bind>
- <bean name="ScopedTester" class="org.jboss.test.aop.scopeddependency.ScopedTester"/>
-
+ <bean name="ScopedTester" class="org.jboss.test.aop.scopeddependency.ScopedTester">
+ <annotation>@org.jboss.aop.microcontainer.annotations.EnableAopProxy</annotation>
+ </bean>
</deployment>
Modified: branches/vfs3-int/testsuite/src/resources/cluster/ejb2/passexp/META-INF/partition-passexp-jboss-beans.xml
===================================================================
--- branches/vfs3-int/testsuite/src/resources/cluster/ejb2/passexp/META-INF/partition-passexp-jboss-beans.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/resources/cluster/ejb2/passexp/META-INF/partition-passexp-jboss-beans.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -5,16 +5,21 @@
<!-- Don't inject the real AS thread pool, as it has a classloader
leak and we don't want to leak this classloader to it
-->
- <threads xmlns="urn:jboss:threads:1.0">
+ <threads xmlns="urn:jboss:threads:2.0">
<thread-group name="PassExpThreadFactoryGroup" group-name="PassExp Threads"/>
- <thread-factory name="PassExpThreadFactory" group="PassExpThreadFactoryGroup"/>
- <thread-pool-executor name="PassExpThreadPool" thread-factory="PassExpThreadFactory" queue-length="1000">
- <core-pool-size count="2" per-cpu="2"/>
- <max-pool-size count="5" per-cpu="3"/>
- <keepalive-time time="1" unit="seconds"/>
- <reject-policy name="block"/>
- </thread-pool-executor>
+ <thread-factory name="PassExpThreadFactory">
+ <thread-group name="PassExpThreadFactoryGroup"/>
+ </thread-factory>
+
+ <queueless-thread-pool-executor name="PassExpThreadPool" blocking="true">
+ <max-threads count="200" per-cpu="500"/>
+ <thread-factory name="PassExpThreadFactory"/>
+ <task-filter>
+ <clear-context-classloader/>
+ <clear-tls/>
+ </task-filter>
+ </queueless-thread-pool-executor>
</threads>
<!-- Add a stack with JGroups message bundling disabled to the app server's standard JChannelFactory -->
Modified: branches/vfs3-int/testsuite/src/resources/cluster/partition/partition-restart-jboss-beans.xml
===================================================================
--- branches/vfs3-int/testsuite/src/resources/cluster/partition/partition-restart-jboss-beans.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/resources/cluster/partition/partition-restart-jboss-beans.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -5,16 +5,21 @@
<!-- Don't inject the real AS thread pool, as it has a classloader
leak and we don't want to leak this classloader to it
-->
- <threads xmlns="urn:jboss:threads:1.0">
+ <threads xmlns="urn:jboss:threads:2.0">
<thread-group name="RestartPartitionThreadFactoryGroup" group-name="RestartPartition Threads"/>
- <thread-factory name="RestartPartitionThreadFactory" group="RestartPartitionThreadFactoryGroup"/>
- <thread-pool-executor name="RestartPartitionThreadPool" thread-factory="RestartPartitionThreadFactory" queue-length="1000">
- <core-pool-size count="2" per-cpu="2"/>
- <max-pool-size count="5" per-cpu="3"/>
- <keepalive-time time="1" unit="seconds"/>
- <reject-policy name="block"/>
- </thread-pool-executor>
+ <thread-factory name="RestartPartitionThreadFactory">
+ <thread-group name="RestartPartitionThreadFactoryGroup"/>
+ </thread-factory>
+
+ <queueless-thread-pool-executor name="RestartPartitionThreadPool" blocking="true">
+ <max-threads count="200" per-cpu="500"/>
+ <thread-factory name="RestartPartitionThreadFactory"/>
+ <task-filter>
+ <clear-context-classloader/>
+ <clear-tls/>
+ </task-filter>
+ </queueless-thread-pool-executor>
</threads>
<!--
Copied: branches/vfs3-int/testsuite/src/resources/deployers/seam (from rev 99666, trunk/testsuite/src/resources/deployers/seam)
Copied: branches/vfs3-int/testsuite/src/resources/deployers/seam/booking (from rev 99666, trunk/testsuite/src/resources/deployers/seam/booking)
Deleted: branches/vfs3-int/testsuite/src/resources/deployers/seam/booking/jboss-seam-booking-ds.xml
===================================================================
--- trunk/testsuite/src/resources/deployers/seam/booking/jboss-seam-booking-ds.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/testsuite/src/resources/deployers/seam/booking/jboss-seam-booking-ds.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!DOCTYPE datasources
- PUBLIC "-//JBoss//DTD JBOSS JCA Config 1.5//EN"
- "http://www.jboss.org/j2ee/dtd/jboss-ds_1_5.dtd">
-
-<datasources>
- <local-tx-datasource>
- <jndi-name>bookingDatasource</jndi-name>
- <connection-url>jdbc:hsqldb:.</connection-url>
- <driver-class>org.hsqldb.jdbcDriver</driver-class>
- <user-name>sa</user-name>
- <password></password>
- </local-tx-datasource>
-</datasources>
-
Copied: branches/vfs3-int/testsuite/src/resources/deployers/seam/booking/jboss-seam-booking-ds.xml (from rev 99666, trunk/testsuite/src/resources/deployers/seam/booking/jboss-seam-booking-ds.xml)
===================================================================
--- branches/vfs3-int/testsuite/src/resources/deployers/seam/booking/jboss-seam-booking-ds.xml (rev 0)
+++ branches/vfs3-int/testsuite/src/resources/deployers/seam/booking/jboss-seam-booking-ds.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!DOCTYPE datasources
+ PUBLIC "-//JBoss//DTD JBOSS JCA Config 1.5//EN"
+ "http://www.jboss.org/j2ee/dtd/jboss-ds_1_5.dtd">
+
+<datasources>
+ <local-tx-datasource>
+ <jndi-name>bookingDatasource</jndi-name>
+ <connection-url>jdbc:hsqldb:.</connection-url>
+ <driver-class>org.hsqldb.jdbcDriver</driver-class>
+ <user-name>sa</user-name>
+ <password></password>
+ </local-tx-datasource>
+</datasources>
+
Deleted: branches/vfs3-int/testsuite/src/resources/deployers/seam/booking/jboss-seam-booking.ear
===================================================================
(Binary files differ)
Copied: branches/vfs3-int/testsuite/src/resources/deployers/seam/booking/jboss-seam-booking.ear (from rev 99666, trunk/testsuite/src/resources/deployers/seam/booking/jboss-seam-booking.ear)
===================================================================
(Binary files differ)
Copied: branches/vfs3-int/testsuite/src/resources/deployers/seam/dvd (from rev 99666, trunk/testsuite/src/resources/deployers/seam/dvd)
Deleted: branches/vfs3-int/testsuite/src/resources/deployers/seam/dvd/jboss-seam-dvd-ds.xml
===================================================================
--- trunk/testsuite/src/resources/deployers/seam/dvd/jboss-seam-dvd-ds.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/testsuite/src/resources/deployers/seam/dvd/jboss-seam-dvd-ds.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!DOCTYPE datasources
- PUBLIC "-//JBoss//DTD JBOSS JCA Config 1.5//EN"
- "http://www.jboss.org/j2ee/dtd/jboss-ds_1_5.dtd">
-
-<datasources>
- <local-tx-datasource>
- <jndi-name>dvdDatasource</jndi-name>
- <connection-url>jdbc:hsqldb:${jboss.server.data.dir}${/}hypersonic${/}dvd</connection-url>
- <!-- <connection-url>jdbc:hsqldb:.</connection-url> -->
- <driver-class>org.hsqldb.jdbcDriver</driver-class>
- <user-name>sa</user-name>
- <password></password>
- </local-tx-datasource>
-
- <mbean code="org.jboss.jdbc.HypersonicDatabase"
- name="jboss:service=Hypersonic,database=dvd">
- <attribute name="Database">dvd</attribute>
- <attribute name="InProcessMode">true</attribute>
- </mbean>
-
- <!-- -->
-<!--
- <local-tx-datasource>
- <jndi-name>dvdDatasource</jndi-name>
- <connection-url>jdbc:mysql://localhost:3306/dvdstore</connection-url>
- <driver-class>com.mysql.jdbc.Driver</driver-class>
- <user-name>gavin</user-name>
- <password></password>
- <exception-sorter-class-name>
- org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter
- </exception-sorter-class-name>
-
- <metadata>
- <type-mapping>mySQL</type-mapping>
- </metadata>
- </local-tx-datasource>
--->
-</datasources>
-
Copied: branches/vfs3-int/testsuite/src/resources/deployers/seam/dvd/jboss-seam-dvd-ds.xml (from rev 99666, trunk/testsuite/src/resources/deployers/seam/dvd/jboss-seam-dvd-ds.xml)
===================================================================
--- branches/vfs3-int/testsuite/src/resources/deployers/seam/dvd/jboss-seam-dvd-ds.xml (rev 0)
+++ branches/vfs3-int/testsuite/src/resources/deployers/seam/dvd/jboss-seam-dvd-ds.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!DOCTYPE datasources
+ PUBLIC "-//JBoss//DTD JBOSS JCA Config 1.5//EN"
+ "http://www.jboss.org/j2ee/dtd/jboss-ds_1_5.dtd">
+
+<datasources>
+ <local-tx-datasource>
+ <jndi-name>dvdDatasource</jndi-name>
+ <connection-url>jdbc:hsqldb:${jboss.server.data.dir}${/}hypersonic${/}dvd</connection-url>
+ <!-- <connection-url>jdbc:hsqldb:.</connection-url> -->
+ <driver-class>org.hsqldb.jdbcDriver</driver-class>
+ <user-name>sa</user-name>
+ <password></password>
+ </local-tx-datasource>
+
+ <mbean code="org.jboss.jdbc.HypersonicDatabase"
+ name="jboss:service=Hypersonic,database=dvd">
+ <attribute name="Database">dvd</attribute>
+ <attribute name="InProcessMode">true</attribute>
+ </mbean>
+
+ <!-- -->
+<!--
+ <local-tx-datasource>
+ <jndi-name>dvdDatasource</jndi-name>
+ <connection-url>jdbc:mysql://localhost:3306/dvdstore</connection-url>
+ <driver-class>com.mysql.jdbc.Driver</driver-class>
+ <user-name>gavin</user-name>
+ <password></password>
+ <exception-sorter-class-name>
+ org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter
+ </exception-sorter-class-name>
+
+ <metadata>
+ <type-mapping>mySQL</type-mapping>
+ </metadata>
+ </local-tx-datasource>
+-->
+</datasources>
+
Deleted: branches/vfs3-int/testsuite/src/resources/deployers/seam/dvd/jboss-seam-dvd.ear
===================================================================
(Binary files differ)
Copied: branches/vfs3-int/testsuite/src/resources/deployers/seam/dvd/jboss-seam-dvd.ear (from rev 99666, trunk/testsuite/src/resources/deployers/seam/dvd/jboss-seam-dvd.ear)
===================================================================
(Binary files differ)
Copied: branches/vfs3-int/testsuite/src/resources/deployers/seam/jpa-example (from rev 99666, trunk/testsuite/src/resources/deployers/seam/jpa-example)
Deleted: branches/vfs3-int/testsuite/src/resources/deployers/seam/jpa-example/jboss-seam-jpa.war
===================================================================
(Binary files differ)
Copied: branches/vfs3-int/testsuite/src/resources/deployers/seam/jpa-example/jboss-seam-jpa.war (from rev 99666, trunk/testsuite/src/resources/deployers/seam/jpa-example/jboss-seam-jpa.war)
===================================================================
(Binary files differ)
Copied: branches/vfs3-int/testsuite/src/resources/deployers/seam/numberguess (from rev 99666, trunk/testsuite/src/resources/deployers/seam/numberguess)
Deleted: branches/vfs3-int/testsuite/src/resources/deployers/seam/numberguess/jboss-seam-numberguess.ear
===================================================================
(Binary files differ)
Copied: branches/vfs3-int/testsuite/src/resources/deployers/seam/numberguess/jboss-seam-numberguess.ear (from rev 99666, trunk/testsuite/src/resources/deployers/seam/numberguess/jboss-seam-numberguess.ear)
===================================================================
(Binary files differ)
Copied: branches/vfs3-int/testsuite/src/resources/ejb3/war (from rev 99666, trunk/testsuite/src/resources/ejb3/war)
Copied: branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment (from rev 99666, trunk/testsuite/src/resources/ejb3/war/deployment)
Deleted: branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/ejb-jar.xml
===================================================================
--- trunk/testsuite/src/resources/ejb3/war/deployment/ejb-jar.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/ejb-jar.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ejb-jar xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
- http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd"
- version="3.1">
- <enterprise-beans>
- <session>
- <ejb-name>CounterDelegateBean</ejb-name>
- <business-remote>org.jboss.test.ejb3.war.deployment.Counter</business-remote>
- <ejb-class>org.jboss.test.ejb3.war.deployment.CounterDelegateBeanInWarEjbJarXml</ejb-class>
- <session-type>Stateful</session-type>
- </session>
- </enterprise-beans>
-</ejb-jar>
\ No newline at end of file
Copied: branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/ejb-jar.xml (from rev 99666, trunk/testsuite/src/resources/ejb3/war/deployment/ejb-jar.xml)
===================================================================
--- branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/ejb-jar.xml (rev 0)
+++ branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/ejb-jar.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ejb-jar xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
+ http://java.sun.com/xml/ns/javaee/ejb-jar_3_1.xsd"
+ version="3.1">
+ <enterprise-beans>
+ <session>
+ <ejb-name>CounterDelegateBean</ejb-name>
+ <business-remote>org.jboss.test.ejb3.war.deployment.Counter</business-remote>
+ <ejb-class>org.jboss.test.ejb3.war.deployment.CounterDelegateBeanInWarEjbJarXml</ejb-class>
+ <session-type>Stateful</session-type>
+ </session>
+ </enterprise-beans>
+</ejb-jar>
\ No newline at end of file
Deleted: branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/web.xml
===================================================================
--- trunk/testsuite/src/resources/ejb3/war/deployment/web.xml 2010-01-20 17:49:27 UTC (rev 99666)
+++ branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/web.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<web-app xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee web-app_3_0.xsd"
- version="3.0">
-
-
-</web-app>
\ No newline at end of file
Copied: branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/web.xml (from rev 99666, trunk/testsuite/src/resources/ejb3/war/deployment/web.xml)
===================================================================
--- branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/web.xml (rev 0)
+++ branches/vfs3-int/testsuite/src/resources/ejb3/war/deployment/web.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee web-app_3_0.xsd"
+ version="3.0">
+
+
+</web-app>
\ No newline at end of file
Modified: branches/vfs3-int/testsuite/src/resources/jbossts/scripts/as-tests.xml
===================================================================
--- branches/vfs3-int/testsuite/src/resources/jbossts/scripts/as-tests.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/resources/jbossts/scripts/as-tests.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -36,7 +36,7 @@
<target name="jts-propagation-tests" depends="want-all-ejbX, want-all-transports, jts-propagation-tests-single" />
- <target name="jts-propagation-tests-single" depends="init-propagation-tests, prepare-drivers, set-ejbX, set-transport, propag-tests-main" />
+ <target name="jts-propagation-tests-single" depends="init-propagation-tests, prepare-drivers, set-db, set-ejbX, set-transport, propag-tests-select-db" />
<!--
@@ -573,14 +573,7 @@
<target name="init-propagation-tests">
<property name="wipeOutTxsInDoubt" value="true" />
- <property name="dbdriver" value="postgresql-8.3.jar"/>
- <property name="datasource" value="postgres83-xa-ds.xml"/>
-
<echo message="jboss.home=${jboss.home}"/>
- <echo message="node0=${node0}"/>
- <echo message="node1=${node1}"/>
- <echo message="dbdriver=${dbdriver}"/>
- <echo message="datasource=${datasource}"/>
</target>
<target name="want-all-ejbX">
@@ -611,11 +604,17 @@
</condition>
</target>
+ <target name="propag-tests-select-db">
+ <antcall target="call-tests-for-all-dbs"><param name="call.target" value="propag-tests-main"/></antcall>
+ </target>
+
<target name="propag-tests-main"
- depends="start-servers-for-jts-propagation-tests,
+ depends="hack-before-astest-run,
+ start-servers-for-jts-propagation-tests,
propag-tests-ejb3,
propag-tests-ejb2,
- stop-servers-for-jts-propagation-tests" />
+ stop-servers-for-jts-propagation-tests,
+ hack-after-astest-run" />
<target name="propag-tests-ejb2" if="want.ejb2">
<antcall target="propag-tests-transport"><param name="ejb3" value="false" /></antcall>
@@ -636,14 +635,18 @@
</target>
<target name="jts-propagation-tests-batch">
+
+ <condition property="test.name.clientTx" value="clientTx-" else="">
+ <istrue value="${jbossts.clientTx}"/>
+ </condition>
<condition property="test.name.ejbX" value="ejb3" else="ejb2">
<istrue value="${ejb3}"/>
</condition>
<condition property="test.name.transport" value="iiop" else="jrmp">
<istrue value="${ots}"/>
</condition>
- <property name="testname.prefix" value="${test.name.ejbX}-${test.name.transport}"/>
-
+ <property name="testname.prefix" value="${test.name.clientTx}${test.name.ejbX}-${test.name.transport}"/>
+
<!-- batch of jts propagation test scenarios -->
<run-jts-propagation-test specs0="none" specs1="none" rollbackExpected="false" />
<run-jts-propagation-test specs0="none" specs1="pre_prepare_rollbackonly" rollbackExpected="true" />
@@ -654,35 +657,41 @@
<run-jts-propagation-test specs0="synch_before_rollbackonly" specs1="none" rollbackExpected="true" />
<run-jts-propagation-test specs0="none" specs1="prepare_ex_rollback" rollbackExpected="true" />
<run-jts-propagation-test specs0="prepare_ex_rollback" specs1="none" rollbackExpected="true" />
- <run-jts-propagation-test specs0="pre_prepare_suspend_long" specs1="none" rollbackExpected="true" />
- <run-jts-propagation-test specs0="none" specs1="pre_prepare_suspend_long" rollbackExpected="true" />
+ <run-jts-propagation-test specs0="none" specs1="pre_prepare_suspend" rollbackExpected="true" />
+ <!--run-jts-propagation-test specs0="pre_prepare_suspend" specs1="none" rollbackExpected="true" /-->
</target>
<target name="start-servers-for-jts-propagation-tests" unless="dont.start.server.for.astests">
+
+ <condition property="astest.app.jar.name" value="${astest.alternative.jar.name}">
+ <isset property="astest.alternative.jar.name"/>
+ </condition>
+ <property name="astest.app.jar.name" value="${astest.jar.name}" />
+
<astest:server method="start" serverName="jts-propagation-node0" >
<deploy from="dbdrivers/${dbdriver}" to="lib/${dbdriver}" />
<deploy from="resources/${datasource}" to="deploy/${datasource}" />
- <deploy from="${astest.jar.deploy.dir}/jts-propagation-ejb3.jar" to="deploy/jts-propagation-ejb3.jar" />
- <deploy from="${astest.jar.deploy.dir}/jts-propagation-ejb2.jar" to="deploy/jts-propagation-ejb2.jar" />
+ <deploy from="${astest.jar.deploy.dir}/${astest.app.jar.name}" to="deploy/${astest.jar.name}" />
+ <deploy from="${astest.jar.deploy.dir}/${astest.ejb2.jar.name}" to="deploy/${astest.ejb2.jar.name}" />
</astest:server>
<astest:server method="start" serverName="jts-propagation-node1" >
<deploy from="dbdrivers/${dbdriver}" to="lib/${dbdriver}" />
<deploy from="resources/${datasource}" to="deploy/${datasource}" />
- <deploy from="${astest.jar.deploy.dir}/jts-propagation-ejb3.jar" to="deploy/jts-propagation-ejb3.jar" />
- <deploy from="${astest.jar.deploy.dir}/jts-propagation-ejb2.jar" to="deploy/jts-propagation-ejb2.jar" />
+ <deploy from="${astest.jar.deploy.dir}/${astest.app.jar.name}" to="deploy/${astest.jar.name}" />
+ <deploy from="${astest.jar.deploy.dir}/${astest.ejb2.jar.name}" to="deploy/${astest.ejb2.jar.name}" />
</astest:server>
</target>
<target name="stop-servers-for-jts-propagation-tests" unless="dont.start.server.for.astests">
<astest:server method="stop" serverName="jts-propagation-node1">
- <undeploy from="deploy/jts-propagation-ejb2.jar" />
- <undeploy from="deploy/jts-propagation-ejb3.jar" />
+ <undeploy from="deploy/${astest.ejb2.jar.name}" />
+ <undeploy from="deploy/${astest.jar.name}" />
<undeploy from="deploy/${datasource}" />
<undeploy from="lib/${dbdriver}" />
</astest:server>
<astest:server method="stop" serverName="jts-propagation-node0">
- <undeploy from="deploy/jts-propagation-ejb2.jar" />
- <undeploy from="deploy/jts-propagation-ejb3.jar" />
+ <undeploy from="deploy/${astest.ejb2.jar.name}" />
+ <undeploy from="deploy/${astest.jar.name}" />
<undeploy from="deploy/${datasource}" />
<undeploy from="lib/${dbdriver}" />
</astest:server>
Modified: branches/vfs3-int/testsuite/src/resources/jbossts/scripts/imports/test-config.xml
===================================================================
--- branches/vfs3-int/testsuite/src/resources/jbossts/scripts/imports/test-config.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/resources/jbossts/scripts/imports/test-config.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -42,18 +42,15 @@
- server can be changed via the server.binding.name and server.binding.location properties.
-->
<astest:config javaHome="${env.JAVA_HOME}" debug="false">
- <spec name= "prepare_ex" mode="XAEX" type="XARES_PREPARE" modeArg="XAER_RMFAIL" />
+ <spec name= "none" mode="NONE" type="NONE" />
+ <spec name= "prepare_ex" mode="XAEXCEPTION" type="XARES_PREPARE" modeArg="XAER_RMFAIL" />
<spec name= "prepare_halt" mode="HALT" type="XARES_PREPARE" />
<spec name= "commit_halt" mode="HALT" type="XARES_COMMIT" />
- <spec name= "none" mode="NONE" type="NONE" />
- <spec name= "prepare_ex_rollback" mode="XAEX" type="XARES_PREPARE" modeArg="XA_RBROLLBACK" />
- <spec name= "pre_prepare_rollbackonly" mode="RBLY" type="PRE_PREPARE" />
- <spec name= "pre_prepare_ejbexception" mode="EJEX" type="PRE_PREPARE" modeArg="ejb exception before commit" />
- <spec name= "synch_before_rollbackonly" mode="RBLY" type="SYNCH_BEFORE" />
- <spec name= "pre_prepare_suspend_short" mode="SUSP" type="PRE_PREPARE" modeArg="100000" />
- <spec name= "pre_prepare_suspend_long" mode="SUSP" type="PRE_PREPARE" modeArg="200000" />
- <spec name= "synch_before_suspend_short" mode="SUSP" type="SYNCH_BEFORE" modeArg="100000" />
- <spec name= "synch_before_suspend_long" mode="SUSP" type="SYNCH_BEFORE" modeArg="200000" />
+ <spec name= "prepare_ex_rollback" mode="XAEXCEPTION" type="XARES_PREPARE" modeArg="XA_RBROLLBACK" />
+ <spec name= "pre_prepare_rollbackonly" mode="ROLLBACK_ONLY" type="PRE_PREPARE" />
+ <spec name= "pre_prepare_ejbexception" mode="EJBEXCEPTION" type="PRE_PREPARE" modeArg="ejb exception before commit" />
+ <spec name= "synch_before_rollbackonly" mode="ROLLBACK_ONLY" type="SYNCH_BEFORE" />
+ <spec name= "pre_prepare_suspend" mode="SUSPEND" type="PRE_PREPARE" modeArg="100000" />
<!--
Profiles for JBossAS Testsuite integration
Modified: branches/vfs3-int/testsuite/src/resources/naming/restart/naming-restart-jboss-beans.xml
===================================================================
--- branches/vfs3-int/testsuite/src/resources/naming/restart/naming-restart-jboss-beans.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/testsuite/src/resources/naming/restart/naming-restart-jboss-beans.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -5,14 +5,20 @@
<!-- Don't inject the real AS thread pool, as it has a classloader
leak and we don't want to leak this classloader to it
-->
- <threads xmlns="urn:jboss:threads:1.0">
+ <threads xmlns="urn:jboss:threads:2.0">
<thread-group name="RestartNamingThreadGroup" group-name="RestartNamingThreadGroup"/>
- <thread-factory name="RestartNamingThreadFactory" group="RestartNamingThreadGroup"/>
- <thread-pool-executor name="RestartNamingThreadPool" thread-factory="RestartNamingThreadFactory">
- <core-pool-size count="5"/>
- <max-pool-size count="20"/>
- <reject-policy name="block"/>
- </thread-pool-executor>
+ <thread-factory name="RestartNamingThreadFactory">
+ <thread-group name="RestartNamingThreadGroup"/>
+ </thread-factory>
+
+ <queueless-thread-pool-executor name="RestartNamingThreadPool" blocking="true">
+ <max-threads count="200" per-cpu="500"/>
+ <thread-factory name="RestartNamingThreadFactory"/>
+ <task-filter>
+ <clear-context-classloader/>
+ <clear-tls/>
+ </task-filter>
+ </queueless-thread-pool-executor>
</threads>
<bean name="RestartNamingBean" class="org.jnp.server.NamingBeanImpl">
Modified: branches/vfs3-int/tomcat/src/main/java/org/jboss/web/tomcat/service/deployers/TomcatDeployment.java
===================================================================
--- branches/vfs3-int/tomcat/src/main/java/org/jboss/web/tomcat/service/deployers/TomcatDeployment.java 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/tomcat/src/main/java/org/jboss/web/tomcat/service/deployers/TomcatDeployment.java 2010-01-20 20:46:46 UTC (rev 99677)
@@ -305,10 +305,10 @@
context.start();
// Build the ENC
}
- catch (Exception e)
+ catch (Throwable t)
{
context.destroy();
- DeploymentException.rethrowAsDeploymentException("URL " + warUrlStr + " deployment failed", e);
+ DeploymentException.rethrowAsDeploymentException("URL " + warUrlStr + " deployment failed", t);
}
finally
{
Modified: branches/vfs3-int/varia/src/resources/xnio/xnio-jboss-beans.xml
===================================================================
--- branches/vfs3-int/varia/src/resources/xnio/xnio-jboss-beans.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/varia/src/resources/xnio/xnio-jboss-beans.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -2,12 +2,18 @@
<deployment xmlns="urn:jboss:bean-deployer:2.0">
-<threads xmlns="urn:jboss:threads:1.0">
- <thread-group name="XnioThreadGroup" group-name="xnio"/>
+<threads xmlns="urn:jboss:threads:2.0">
+ <thread-group name="XnioThreadGroup" group-name="xnio">
+ <parent-thread-group name="SystemThreadGroup"/>
+ </thread-group>
- <thread-group name="XnioSelectorThreadGroup" group-name="selector" parent="XnioThreadGroup"/>
+ <thread-group name="XnioSelectorThreadGroup" group-name="xnio selector">
+ <parent-thread-group name="XnioThreadGroup"/>
+ </thread-group>
- <thread-factory name="XnioThreadFactory" group="XnioThreadGroup" thread-name-pattern="xnio-pool%f-%t"/>
+ <thread-factory name="XnioThreadFactory" thread-name-pattern="xnio-pool%f-%t">
+ <thread-group name="XnioSelectorThreadGroup"/>
+ </thread-factory>
<direct-executor name="XnioHandlerExecutor"/>
</threads>
Modified: branches/vfs3-int/webservices/pom.xml
===================================================================
--- branches/vfs3-int/webservices/pom.xml 2010-01-20 20:36:31 UTC (rev 99676)
+++ branches/vfs3-int/webservices/pom.xml 2010-01-20 20:46:46 UTC (rev 99677)
@@ -128,7 +128,6 @@
<dependency>
<groupId>org.jboss.ejb3</groupId>
<artifactId>jboss-ejb3_1</artifactId>
- <type>pom</type>
<exclusions>
<exclusion>
<groupId>org.jboss.cache</groupId>
@@ -140,6 +139,12 @@
<groupId>org.jboss.ejb3</groupId>
<artifactId>jboss-ejb3-common</artifactId>
<version>${version.org.jboss.ejb3.common.client}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.jboss.microcontainer</groupId>
+ <artifactId>jboss-kernel</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<!-- transitive dependencies -->
<dependency>
More information about the jboss-cvs-commits
mailing list