[jboss-cvs] JBossAS SVN: r104063 - in projects/reloaded/trunk/vdf-bootstrap-minimal: src/main/java/org/jboss/reloaded/api and 2 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Apr 16 11:44:29 EDT 2010


Author: ALRubinger
Date: 2010-04-16 11:44:28 -0400 (Fri, 16 Apr 2010)
New Revision: 104063

Added:
   projects/reloaded/trunk/vdf-bootstrap-minimal/src/main/resources/org.jboss.reloaded_threads.xml
Modified:
   projects/reloaded/trunk/vdf-bootstrap-minimal/pom.xml
   projects/reloaded/trunk/vdf-bootstrap-minimal/src/main/java/org/jboss/reloaded/api/ReloadedDescriptors.java
   projects/reloaded/trunk/vdf-bootstrap-minimal/src/main/resources/org.jboss.reloaded_TempFileProvider.xml
   projects/reloaded/trunk/vdf-bootstrap-minimal/src/test/java/org/jboss/reloaded/api/ShrinkWrapDeployerUnitTest.java
Log:
[RELOADED-15] Register the jboss-threads Schema w/ JBossXB in a bootstrap descriptor format

Modified: projects/reloaded/trunk/vdf-bootstrap-minimal/pom.xml
===================================================================
--- projects/reloaded/trunk/vdf-bootstrap-minimal/pom.xml	2010-04-16 15:20:10 UTC (rev 104062)
+++ projects/reloaded/trunk/vdf-bootstrap-minimal/pom.xml	2010-04-16 15:44:28 UTC (rev 104063)
@@ -202,6 +202,12 @@
       <version>${version.org.jboss.threads}</version>
       <scope>test</scope>
     </dependency>
+    <dependency>
+      <groupId>org.jboss.threads</groupId>
+      <artifactId>jboss-threads-metadata</artifactId>
+      <version>${version.org.jboss.threads}</version>
+      <scope>test</scope>
+    </dependency>
 
   </dependencies>
 </project>

Modified: projects/reloaded/trunk/vdf-bootstrap-minimal/src/main/java/org/jboss/reloaded/api/ReloadedDescriptors.java
===================================================================
--- projects/reloaded/trunk/vdf-bootstrap-minimal/src/main/java/org/jboss/reloaded/api/ReloadedDescriptors.java	2010-04-16 15:20:10 UTC (rev 104062)
+++ projects/reloaded/trunk/vdf-bootstrap-minimal/src/main/java/org/jboss/reloaded/api/ReloadedDescriptors.java	2010-04-16 15:44:28 UTC (rev 104063)
@@ -1,4 +1,5 @@
 package org.jboss.reloaded.api;
+
 /*
  * JBoss, Home of Professional Open Source.
  * Copyright 2010, Red Hat Middleware LLC, and individual contributors
@@ -64,6 +65,12 @@
     */
    public static String RESOURCE_NAME_CLASSLOADING = "org.jboss.reloaded_classloading.xml";
 
+   /**
+    * Name of the resource containing a Microcontainer
+    * deployment descriptor capable of registering jboss-threads with XB
+    */
+   public static String RESOURCE_NAME_THREADS = "org.jboss.reloaded_threads.xml";
+
    //-------------------------------------------------------------------------------------||
    // Functional Methods -----------------------------------------------------------------||
    //-------------------------------------------------------------------------------------||
@@ -135,4 +142,36 @@
       return new ClassLoaderResourceBootstrapDescriptor(RESOURCE_NAME_CLASSLOADING, cl);
    }
 
+   /**
+    * Obtains a {@link BootstrapDescriptor} containing components necessary 
+    * for registering jboss-threads with JBossXB
+    * @return
+    */
+   public static BootstrapDescriptor getThreadsDescriptor()
+   {
+      // Return
+      return new ClassLoaderResourceBootstrapDescriptor(RESOURCE_NAME_THREADS);
+   }
+
+   /**
+    * Obtains a {@link BootstrapDescriptor} containing components necessary 
+    * for registering jboss-threads with JBossXB
+    * The descriptor will be found as a {@link ClassLoader} resource
+    * of name {@link ReloadedDescriptors#RESOURCE_NAME_THREADS} from the specified
+    * @return
+    * @param cl {@link ClassLoader} used to obtain the resource
+    * @throws IllegalArgumentException If the {@link ClassLoader} is not specified
+    */
+   public static BootstrapDescriptor getThreadsDescriptor(final ClassLoader cl)
+   {
+      // Precondition check
+      if (cl == null)
+      {
+         throw new IllegalArgumentException("ClassLoader must be specified");
+      }
+
+      // Return
+      return new ClassLoaderResourceBootstrapDescriptor(RESOURCE_NAME_THREADS, cl);
+   }
+
 }

Modified: projects/reloaded/trunk/vdf-bootstrap-minimal/src/main/resources/org.jboss.reloaded_TempFileProvider.xml
===================================================================
--- projects/reloaded/trunk/vdf-bootstrap-minimal/src/main/resources/org.jboss.reloaded_TempFileProvider.xml	2010-04-16 15:20:10 UTC (rev 104062)
+++ projects/reloaded/trunk/vdf-bootstrap-minimal/src/main/resources/org.jboss.reloaded_TempFileProvider.xml	2010-04-16 15:44:28 UTC (rev 104063)
@@ -1,31 +1,38 @@
 <deployment xmlns="urn:jboss:bean-deployer:2.0">
 
-  <!-- Deployment configuration for a VFS TempFileProvider -->
+  <!-- Deployment configuration for a VFS TempFileProvider 
 
-
-  <!--
-
-    JBossXB isn't liking the inclusion of this namespace: TODO: Why?
-    <threads xmlns="urn:jboss:threads:2.0"> 
-    
-    [Comment] This will execute
-    in the calling Thread. Probably better to use another,
-    Single-threaded executor type, but this is fine for now [/Comment]
-    
-      <direct-executor name="org.jboss.reloaded.TempFileExecutorService"/> 
-    
-    </threads>
+  <threads xmlns="urn:jboss:threads:2.0"> 
+    <thread-factory name="org.jboss.reloaded.TempFileThreadFactory"/>
+    <scheduled-thread-pool-executor name="org.jboss.reloaded.TempFileExecutorService">
+        <max-threads count="1" per-cpu="1"/>
+        <thread-factory name="org.jboss.reloaded.TempFileThreadFactory"/>
+    </scheduled-thread-pool-executor>
+  </threads>
+  
+  Currently fails with:
+  
+  org.jboss.joinpoint.spi.JoinpointException: Constructor not found 
+  org.jboss.threads.QueuelessExecutor[int, java.util.concurrent.ThreadFactory] in 
+  [ReflectConstructorInfoImpl at 11afd9cc{[ReflectClassInfoImpl at 3003e926{name=java.util.concurrent.ThreadFactory}, 
+  ReflectClassInfoImpl at 50bfd66a{name=org.jboss.threads.DirectExecutor}, 
+  ReflectClassInfoImpl at 6295f290{name=java.util.concurrent.Executor}, long]}]
+  
+  FIXME:  Example on http://community.jboss.org/wiki/ThreadPoolConfiguration might need to be updated
+  Ask DML
+  
   -->
 
   <!--
     Define the Executor, but this should really be done in threads.xsd
     format above
+    TODO Remove this when the above works
   -->
   <bean name="org.jboss.reloaded.TempFileExecutorService" class="org.jboss.threads.JBossScheduledThreadPoolExecutor">
     <constructor>
       <parameter>1</parameter>
     </constructor>
-  </bean>
+  </bean> 
 
   <bean name="org.jboss.reloaded.TempFileProvider" class="org.jboss.vfs.TempFileProvider">
     <constructor factoryClass="org.jboss.vfs.TempFileProvider"

Added: projects/reloaded/trunk/vdf-bootstrap-minimal/src/main/resources/org.jboss.reloaded_threads.xml
===================================================================
--- projects/reloaded/trunk/vdf-bootstrap-minimal/src/main/resources/org.jboss.reloaded_threads.xml	                        (rev 0)
+++ projects/reloaded/trunk/vdf-bootstrap-minimal/src/main/resources/org.jboss.reloaded_threads.xml	2010-04-16 15:44:28 UTC (rev 104063)
@@ -0,0 +1,24 @@
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+  <!-- 
+  
+  Initializes XB for use with jboss-threads Schema
+   -->
+   
+  <bean name="JBossThreadsMetaDataFactoryDeployer"
+    class="org.jboss.deployers.vfs.deployer.kernel.BeanMetaDataFactoryDeployer">
+    <constructor>
+      <parameter>org.jboss.threads.metadata.ThreadsMetaData</parameter>
+    </constructor>
+  </bean>
+
+  <bean name="JBossThreadsMetaDataSchemaResolverDeployer"
+    class="org.jboss.deployers.vfs.spi.deployer.SchemaResolverDeployer">
+    <constructor>
+      <parameter>org.jboss.threads.metadata.ThreadsMetaData</parameter>
+    </constructor>
+    <property name="name">jboss-threads.xml</property>
+    <property name="registerWithJBossXB">true</property>
+  </bean>
+
+</deployment>
\ No newline at end of file

Modified: projects/reloaded/trunk/vdf-bootstrap-minimal/src/test/java/org/jboss/reloaded/api/ShrinkWrapDeployerUnitTest.java
===================================================================
--- projects/reloaded/trunk/vdf-bootstrap-minimal/src/test/java/org/jboss/reloaded/api/ShrinkWrapDeployerUnitTest.java	2010-04-16 15:20:10 UTC (rev 104062)
+++ projects/reloaded/trunk/vdf-bootstrap-minimal/src/test/java/org/jboss/reloaded/api/ShrinkWrapDeployerUnitTest.java	2010-04-16 15:44:28 UTC (rev 104063)
@@ -64,6 +64,7 @@
       final List<BootstrapDescriptor> descriptors = server.getConfiguration().getBootstrapDescriptors();
       descriptors.add(ReloadedDescriptors.getClassLoadingDescriptor());
       descriptors.add(ReloadedDescriptors.getVdfDescriptor());
+      descriptors.add(ReloadedDescriptors.getThreadsDescriptor());
       descriptors.add(ShrinkWrapReloadedDescriptors.getTempFileProviderDescriptor());
       descriptors.add(ShrinkWrapReloadedDescriptors.getShrinkWrapDeployerDescriptor());
    }




More information about the jboss-cvs-commits mailing list