[jboss-cvs] JBossAS SVN: r95961 - in projects/demos/microcontainer/trunk: bootstrap/src/main/resources/META-INF and 1 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Nov 3 11:12:39 EST 2009


Author: alesj
Date: 2009-11-03 11:12:38 -0500 (Tue, 03 Nov 2009)
New Revision: 95961

Added:
   projects/demos/microcontainer/trunk/bootstrap/src/main/resources/META-INF/cl-describe-beans.xml
Removed:
   projects/demos/microcontainer/trunk/bootstrap/src/main/resources/META-INF/bootstrap-beans-bak.xml
Modified:
   projects/demos/microcontainer/trunk/bootstrap/src/main/java/org/jboss/demos/bootstrap/Main.java
   projects/demos/microcontainer/trunk/bootstrap/src/main/resources/META-INF/bootstrap-beans.xml
   projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/bootstrap/cl/ClassLoaderMain.java
Log:
Allow for CL describe override.

Modified: projects/demos/microcontainer/trunk/bootstrap/src/main/java/org/jboss/demos/bootstrap/Main.java
===================================================================
--- projects/demos/microcontainer/trunk/bootstrap/src/main/java/org/jboss/demos/bootstrap/Main.java	2009-11-03 16:11:57 UTC (rev 95960)
+++ projects/demos/microcontainer/trunk/bootstrap/src/main/java/org/jboss/demos/bootstrap/Main.java	2009-11-03 16:12:38 UTC (rev 95961)
@@ -23,6 +23,8 @@
 
 import java.io.File;
 import java.net.URL;
+import java.util.Collections;
+import java.util.Map;
 
 import org.jboss.kernel.Kernel;
 import org.jboss.kernel.plugins.bootstrap.basic.BasicBootstrap;
@@ -34,6 +36,8 @@
  */
 public class Main
 {
+   public static final String CL_DESCRIBE = "CL_DESCRIBE";
+
    private static Main main;
 
    private Kernel kernel;
@@ -41,8 +45,13 @@
 
    public static void main(String[] args)
    {
+      main(args, null);
+   }
+
+   public static void main(String[] args, Map<String, String> map)
+   {
       main = new Main();
-      main.configure(args);
+      main.configure(args, map);
    }
 
    protected static void setSystemProperty(String key, String value, boolean override)
@@ -53,6 +62,14 @@
 
    protected void configure(String[] args)
    {
+      configure(args, null);
+   }
+
+   protected void configure(String[] args, Map<String, String> map)
+   {
+      if (map == null)
+         map = Collections.emptyMap();
+
       int index = 0;
 
       // demos.home
@@ -83,12 +100,19 @@
          URL rootURL = getURL(rootString);
          System.out.println("Using bootstrap: " + rootURL.toExternalForm());
 
+         String clString = map.get(CL_DESCRIBE);
+         if (clString == null)
+            clString = "${demos.home}/bootstrap/src/main/resources/META-INF/cl-describe-beans.xml";
+         URL clURL = getURL(clString);
+         System.out.println("Using cl describe: " + clURL.toExternalForm());
+
          BasicBootstrap bootstrap = new BasicBootstrap();
          bootstrap.run();
          kernel = bootstrap.getKernel();
 
          kernelDeployer = new BasicXMLDeployer(kernel);
          kernelDeployer.deploy(rootURL);
+         kernelDeployer.deploy(clURL);
          kernelDeployer.validate();
       }
       catch (Throwable t)

Deleted: projects/demos/microcontainer/trunk/bootstrap/src/main/resources/META-INF/bootstrap-beans-bak.xml
===================================================================
--- projects/demos/microcontainer/trunk/bootstrap/src/main/resources/META-INF/bootstrap-beans-bak.xml	2009-11-03 16:11:57 UTC (rev 95960)
+++ projects/demos/microcontainer/trunk/bootstrap/src/main/resources/META-INF/bootstrap-beans-bak.xml	2009-11-03 16:12:38 UTC (rev 95961)
@@ -1,154 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-   The bootstrap of the server. This should only have the minimum
-   needed to bootstrap the mc kernel and profile service.
-   $Id:$
--->
-<deployment xmlns="urn:jboss:bean-deployer:2.0">
-
-   <!-- The MainDeployer -->
-   <bean name="MainDeployer" class="org.jboss.deployers.plugins.main.MainDeployerImpl">
-      <property name="structuralDeployers"><inject bean="StructuralDeployers"/></property>
-      <property name="deployers"><inject bean="Deployers"/></property>
-      <property name="mgtDeploymentCreator"><inject bean="ManagedDeploymentCreator"/></property>
-   </bean>
-
-   <!-- The ManagedDeploymentCreator implementation -->
-   <bean name="ManagedDeploymentCreator" class="org.jboss.deployers.plugins.managed.DefaultManagedDeploymentCreator" />
-
-   <!-- The holder for deployers that determine structure -->
-   <bean name="StructuralDeployers" class="org.jboss.deployers.vfs.plugins.structure.VFSStructuralDeployersImpl">
-      <property name="structureBuilder">
-         <!-- The consolidator of the structure information -->
-         <bean name="StructureBuilder" class="org.jboss.deployers.vfs.plugins.structure.VFSStructureBuilder"/>
-      </property>
-      <!-- Accept any implementor of structure deployer -->
-      <incallback method="addDeployer"/>
-      <uncallback method="removeDeployer"/>
-   </bean>
-
-   <!-- The holder for deployers that do real deployment -->
-   <bean name="Deployers" class="org.jboss.deployers.plugins.deployers.DeployersImpl">
-      <constructor><parameter><inject bean="jboss.kernel:service=KernelController"/></parameter></constructor>
-      <!-- Accept any implementor of deployer -->
-      <incallback method="addDeployer"/>
-      <uncallback method="removeDeployer"/>
-   </bean>
-
-   <!-- A declared structure descriptor deployer -->
-   <bean name="DeclaredStructure" class="org.jboss.deployers.vfs.plugins.structure.explicit.DeclaredStructure"/>
-
-    <!-- JAR Structure -->
-    <bean name="JARStructure" class="org.jboss.deployers.vfs.plugins.structure.jar.JARStructure">
-       <!-- Unless specified the default list of suffixes is .zip, .ear, .jar, ,.rar, .war, .sar, .har, .aop -->
-       <constructor>
-          <parameter>
-             <set elementClass="java.lang.String">
-                <value>.zip</value>
-                <value>.ear</value>
-                <value>.jar</value>
-                <value>.rar</value>
-                <value>.war</value>
-                <value>.sar</value>
-                <value>.har</value>
-                <value>.aop</value>
-                <value>.deployer</value>
-                <value>.beans</value>
-             </set>
-          </parameter>
-       </constructor>
-       <property name="candidateStructureVisitorFactory">
-          <!-- Any file that is not an ordinary directory is a candidate -->
-          <bean name="JARStructureCandidates" class="org.jboss.deployers.vfs.spi.structure.helpers.DefaultCandidateStructureVisitorFactory">
-             <!-- A filter to exclude some obvious non-subdeployments -->
-             <property name="filter">
-                <bean name="JARFilter" class="org.jboss.virtual.plugins.vfs.helpers.SuffixesExcludeFilter">
-                   <constructor><parameter>
-                      <list elementClass="java.lang.String">
-                         <!-- Exclude class files as subdeployments -->
-                         <value>.class</value>
-                      </list>
-                   </parameter></constructor>
-                </bean>
-             </property>
-          </bean>
-       </property>
-    </bean>
-
-    <!-- File Structure -->
-    <bean name="FileStructure" class="org.jboss.deployers.vfs.plugins.structure.file.FileStructure">
-       <!-- Unless specified the default list of suffixes is -service.xml, -beans.xml, -ds.xml, -aop.xml -->
-       <constructor>
-          <parameter>
-             <set elementClass="java.lang.String">
-                <value>-service.xml</value>
-                <value>-beans.xml</value>
-                <value>-ds.xml</value>
-                <value>-aop.xml</value>
-             </set>
-          </parameter>
-       </constructor>
-    </bean>
-
-   <!-- POJO Deployment -->
-   <bean name="BeanDeployer" class="org.jboss.deployers.vfs.deployer.kernel.BeanDeployer">
-      <property name="type">beans</property>
-   </bean>
-   <bean name="KernelDeploymentDeployer" class="org.jboss.deployers.vfs.deployer.kernel.KernelDeploymentDeployer">
-      <property name="type">beans</property>
-   </bean>
-   <bean name="BeanMetaDataDeployer" class="org.jboss.deployers.vfs.deployer.kernel.BeanMetaDataDeployer">
-      <constructor><parameter><inject bean="jboss.kernel:service=Kernel"/></parameter></constructor>
-      <property name="type">beans</property>
-   </bean>
-
-   <!-- VFS ClassLoader -->
-   <bean name="ClassLoaderSystem" class="org.jboss.classloader.spi.ClassLoaderSystem">
-      <constructor factoryClass="org.jboss.classloader.spi.ClassLoaderSystem" factoryMethod="getInstance"/>
-   </bean>
-   <bean name="ClassLoading" class="org.jboss.classloading.spi.dependency.ClassLoading">
-      <incallback method="addModule" state="Configured"/>
-      <uncallback method="removeModule" state="Configured"/>
-   </bean>
-
-   <!--<bean name="CustomClassLoadingMetaDataParser" class="org.jboss.demos.system.deployers.PropertyClassloaderMetaDataDeployer"/>-->
-
-<!--
-   <bean name="ManifestParser" class="org.jboss.osgi.plugins.deployers.OSGiMetaDataDeployer"/>
-   <bean name="OSGi2ClassLoadingMetaDataDeployer" class="org.jboss.osgi.plugins.deployers.OSGiMetaData2ClassLoadingMetaDataDeployer"/>
--->
-
-   <bean name="ClassLoadingMetaDataParser" class="org.jboss.deployers.vfs.spi.deployer.SchemaResolverDeployer">
-      <constructor>
-         <parameter>org.jboss.classloading.spi.metadata.ClassLoadingMetaData</parameter>
-      </constructor>
-      <property name="name">jboss-classloading.xml</property>
-   </bean>
-
-   <bean name="ClassloadingDeployer" class="org.jboss.demos.system.deployers.ClassloadingDescribeDeployer">
-     <property name="classLoading"><inject bean="ClassLoading"/></property>
-   </bean>
-   <bean name="VFSClassLoaderDeployer" class="org.jboss.deployers.plugins.classloading.AbstractLevelClassLoaderSystemDeployer">
-      <property name="classLoading"><inject bean="ClassLoading"/></property>
-      <property name="system"><inject bean="ClassLoaderSystem"/></property>
-   </bean>
-
-   <!-- Hotdeployment of applications -->
-
-   <bean name="MainDeployerHelper" class="org.jboss.demos.bootstrap.MainDeployerHelper">
-      <constructor>
-         <parameter><inject bean="MainDeployer"/></parameter>
-      </constructor>
-   </bean>
-
-   <bean name="HDScanner" class="org.jboss.demos.bootstrap.HDScanner">
-      <constructor>
-         <parameter><inject bean="MainDeployerHelper"/></parameter>
-         <parameter>C:\\projects\\demos\\osgi\\boot\\work</parameter>
-      </constructor>
-      <property name="scanPeriod">10000</property>
-      <property name="scanThreadName">HDScanner</property>
-   </bean>
-
-</deployment>

Modified: projects/demos/microcontainer/trunk/bootstrap/src/main/resources/META-INF/bootstrap-beans.xml
===================================================================
--- projects/demos/microcontainer/trunk/bootstrap/src/main/resources/META-INF/bootstrap-beans.xml	2009-11-03 16:11:57 UTC (rev 95960)
+++ projects/demos/microcontainer/trunk/bootstrap/src/main/resources/META-INF/bootstrap-beans.xml	2009-11-03 16:12:38 UTC (rev 95961)
@@ -124,14 +124,9 @@
       </property>
    </bean>
    <bean name="ClassLoaderClassPathDeployer" class="org.jboss.deployers.vfs.plugins.classloader.VFSClassLoaderClassPathDeployer"/>
-   <bean name="ClassLoaderDescribeDeployer" class="org.jboss.deployers.vfs.plugins.classloader.VFSClassLoaderDescribeDeployer">
-      <property name="classLoading"><inject bean="ClassLoading"/></property>
-   </bean>
-<!--
-   <bean name="ClassLoaderDescribeDeployer" class="org.jboss.demos.system.deployers.ClassloadingDescribeDeployer">
-      <property name="classLoading"><inject bean="ClassLoading"/></property>
-   </bean>
--->
+
+   <!-- CL describe deployer is defined separately, so it can be overridden -->
+
    <bean name="ClassLoaderDeployer" class="org.jboss.deployers.plugins.classloading.AbstractLevelClassLoaderSystemDeployer">
       <property name="classLoading"><inject bean="ClassLoading"/></property>
       <property name="system"><inject bean="ClassLoaderSystem"/></property>

Copied: projects/demos/microcontainer/trunk/bootstrap/src/main/resources/META-INF/cl-describe-beans.xml (from rev 92345, projects/demos/microcontainer/trunk/bootstrap/src/main/resources/META-INF/bootstrap-beans.xml)
===================================================================
--- projects/demos/microcontainer/trunk/bootstrap/src/main/resources/META-INF/cl-describe-beans.xml	                        (rev 0)
+++ projects/demos/microcontainer/trunk/bootstrap/src/main/resources/META-INF/cl-describe-beans.xml	2009-11-03 16:12:38 UTC (rev 95961)
@@ -0,0 +1,8 @@
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <!-- Default CL describe deployer -->
+   <bean name="ClassLoaderDescribeDeployer" class="org.jboss.deployers.vfs.plugins.classloader.VFSClassLoaderDescribeDeployer">
+      <property name="classLoading"><inject bean="ClassLoading"/></property>
+   </bean>
+
+</deployment>

Modified: projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/bootstrap/cl/ClassLoaderMain.java
===================================================================
--- projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/bootstrap/cl/ClassLoaderMain.java	2009-11-03 16:11:57 UTC (rev 95960)
+++ projects/demos/microcontainer/trunk/classloader/src/main/java/org/jboss/demos/bootstrap/cl/ClassLoaderMain.java	2009-11-03 16:12:38 UTC (rev 95961)
@@ -21,6 +21,9 @@
  */
 package org.jboss.demos.bootstrap.cl;
 
+import java.util.Collections;
+import java.util.Map;
+
 import org.jboss.demos.bootstrap.Main;
 
 /**
@@ -30,16 +33,7 @@
 {
    public static void main(String[] args)
    {
-      Main.main(args);
-
-      try
-      {
-         Main.deploy("${demos.home}/classloader/src/main/resources/META-INF/classloader-beans.xml");
-         Main.validate();
-      }
-      catch (Throwable t)
-      {
-         t.printStackTrace();
-      }
+      Map<String, String> map = Collections.singletonMap(Main.CL_DESCRIBE, "${demos.home}/classloader/src/main/resources/META-INF/classloader-beans.xml");
+      Main.main(args, map);
    }
 }




More information about the jboss-cvs-commits mailing list