[jboss-cvs] JBossAS SVN: r69692 - in projects/demos: acme1 and 38 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Feb 7 06:38:00 EST 2008


Author: alesj
Date: 2008-02-07 06:38:00 -0500 (Thu, 07 Feb 2008)
New Revision: 69692

Added:
   projects/demos/acme1/
   projects/demos/acme1/acme1.iml
   projects/demos/acme1/src/
   projects/demos/acme1/src/META-INF/
   projects/demos/acme1/src/META-INF/acme-beans.xml
   projects/demos/acme1/src/META-INF/acme-clmd.properties
   projects/demos/acme1/src/org/
   projects/demos/acme1/src/org/jboss/
   projects/demos/acme1/src/org/jboss/acme/
   projects/demos/acme1/src/org/jboss/acme/CommonService.java
   projects/demos/acme1/src/org/jboss/acme/ales/
   projects/demos/acme1/src/org/jboss/acme/ales/AlesService.java
   projects/demos/acme1/src/org/jboss/acme/ales/impl/
   projects/demos/acme1/src/org/jboss/acme/ales/impl/AlesServiceImpl.java
   projects/demos/acme1/src/org/jboss/acme/print/
   projects/demos/acme1/src/org/jboss/acme/print/PrettyPrint.java
   projects/demos/acme1/src/org/jboss/acme/scott/
   projects/demos/acme1/src/org/jboss/acme/scott/ScottService.java
   projects/demos/acme1/src/org/jboss/acme/scott/impl/
   projects/demos/acme1/src/org/jboss/acme/scott/impl/ScottServiceImpl.java
   projects/demos/acme2/
   projects/demos/acme2/acme2.iml
   projects/demos/acme2/src/
   projects/demos/acme2/src/META-INF/
   projects/demos/acme2/src/META-INF/acme-beans.xml
   projects/demos/acme2/src/META-INF/acme-clmd.properties
   projects/demos/acme2/src/org/
   projects/demos/acme2/src/org/jboss/
   projects/demos/acme2/src/org/jboss/acme/
   projects/demos/acme2/src/org/jboss/acme/CommonService.java
   projects/demos/acme2/src/org/jboss/acme/ales/
   projects/demos/acme2/src/org/jboss/acme/ales/AlesService.java
   projects/demos/acme2/src/org/jboss/acme/ales/impl/
   projects/demos/acme2/src/org/jboss/acme/ales/impl/AlesServiceImpl.java
   projects/demos/acme2/src/org/jboss/acme/print/
   projects/demos/acme2/src/org/jboss/acme/print/PrettyPrint.java
   projects/demos/acme2/src/org/jboss/acme/scott/
   projects/demos/acme2/src/org/jboss/acme/scott/ScottService.java
   projects/demos/acme2/src/org/jboss/acme/scott/impl/
   projects/demos/acme2/src/org/jboss/acme/scott/impl/ScottServiceImpl.java
   projects/demos/boot/
   projects/demos/boot/acme2.jar
   projects/demos/boot/bootstrap-beans.xml
   projects/demos/boot/work/
   projects/demos/boot/work/acme1.jar
   projects/demos/boot/work/acme2.jar
   projects/demos/boot/work/foo.jar
   projects/demos/bootstrap/
   projects/demos/bootstrap/bootstrap.iml
   projects/demos/bootstrap/resources/
   projects/demos/bootstrap/resources/bootstrap-beans.xml
   projects/demos/bootstrap/src/
   projects/demos/bootstrap/src/log4j.properties
   projects/demos/bootstrap/src/org/
   projects/demos/bootstrap/src/org/jboss/
   projects/demos/bootstrap/src/org/jboss/bootstrap/
   projects/demos/bootstrap/src/org/jboss/bootstrap/HDScanner.java
   projects/demos/bootstrap/src/org/jboss/bootstrap/Main.java
   projects/demos/bootstrap/src/org/jboss/bootstrap/MainDeployerHelper.java
   projects/demos/bootstrap/src/org/jboss/system/
   projects/demos/bootstrap/src/org/jboss/system/classloader/
   projects/demos/bootstrap/src/org/jboss/system/classloader/MockClassLoaderPolicy.java
   projects/demos/bootstrap/src/org/jboss/system/classloader/NoAnnotationURLClassLoader.java
   projects/demos/bootstrap/src/org/jboss/system/classloader/PackageVisitor.java
   projects/demos/bootstrap/src/org/jboss/system/deployers/
   projects/demos/bootstrap/src/org/jboss/system/deployers/ClassloadingDeployer.java
   projects/demos/bootstrap/src/org/jboss/system/deployers/MockTopLevelClassLoaderSystemDeployer.java
   projects/demos/bootstrap/src/org/jboss/system/deployers/PropertyClassloaderMetaDataDeployer.java
   projects/demos/foo/
   projects/demos/foo/foo.iml
   projects/demos/foo/src/
   projects/demos/foo/src/META-INF/
   projects/demos/foo/src/META-INF/foo-beans.xml
   projects/demos/foo/src/META-INF/foo-clmd.properties
   projects/demos/foo/src/org/
   projects/demos/foo/src/org/jboss/
   projects/demos/foo/src/org/jboss/foo/
   projects/demos/foo/src/org/jboss/foo/FooBarService.java
   projects/demos/osgi.ipr
   projects/demos/osgi.iws
Log:
OSGi demo

Added: projects/demos/acme1/acme1.iml
===================================================================
--- projects/demos/acme1/acme1.iml	                        (rev 0)
+++ projects/demos/acme1/acme1.iml	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module version="4" relativePaths="true" type="JAVA_MODULE">
+  <component name="BuildJarSettings">
+    <containerInfo>
+      <containerElement type="module" name="acme1">
+        <attribute name="method" value="1" />
+        <attribute name="URI" value="/" />
+      </containerElement>
+    </containerInfo>
+    <setting name="jarUrl" value="file://$MODULE_DIR$/../boot/work/acme1.jar" />
+    <setting name="buildJar" value="true" />
+    <setting name="mainClass" value="" />
+  </component>
+  <component name="DependecySynchronizer" />
+  <component name="ModuleRootManager" />
+  <component name="NewModuleRootManager" inherit-compiler-output="true">
+    <exclude-output />
+    <content url="file://$MODULE_DIR$">
+      <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
+    </content>
+    <orderEntry type="inheritedJdk" />
+    <orderEntry type="sourceFolder" forTests="false" />
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-logging-spi.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntryProperties />
+  </component>
+</module>
+

Added: projects/demos/acme1/src/META-INF/acme-beans.xml
===================================================================
--- projects/demos/acme1/src/META-INF/acme-beans.xml	                        (rev 0)
+++ projects/demos/acme1/src/META-INF/acme-beans.xml	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AlesService1" class="org.jboss.acme.ales.impl.AlesServiceImpl"/>
+   <bean name="ScottService1" class="org.jboss.acme.scott.impl.ScottServiceImpl"/>
+
+</deployment>

Added: projects/demos/acme1/src/META-INF/acme-clmd.properties
===================================================================
--- projects/demos/acme1/src/META-INF/acme-clmd.properties	                        (rev 0)
+++ projects/demos/acme1/src/META-INF/acme-clmd.properties	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,3 @@
+domain=FooBarDomain
+capabilities=org.jboss.acme.ales:1|org.jboss.acme.ales.impl:1|org.jboss.acme.scott:1|org.jboss.acme.scott.impl:1|org.jboss.acme.print:1||org.jboss.acme:1
+

Added: projects/demos/acme1/src/org/jboss/acme/CommonService.java
===================================================================
--- projects/demos/acme1/src/org/jboss/acme/CommonService.java	                        (rev 0)
+++ projects/demos/acme1/src/org/jboss/acme/CommonService.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,37 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.acme;
+
+import org.jboss.logging.Logger;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class CommonService
+{
+   private Logger log = Logger.getLogger(getClass());
+
+   public CommonService()
+   {
+      log.debug(getClass() + " -> " + getClass().getClassLoader());
+   }
+}

Added: projects/demos/acme1/src/org/jboss/acme/ales/AlesService.java
===================================================================
--- projects/demos/acme1/src/org/jboss/acme/ales/AlesService.java	                        (rev 0)
+++ projects/demos/acme1/src/org/jboss/acme/ales/AlesService.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,30 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.acme.ales;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public interface AlesService
+{
+   void useFreeTime();
+}

Added: projects/demos/acme1/src/org/jboss/acme/ales/impl/AlesServiceImpl.java
===================================================================
--- projects/demos/acme1/src/org/jboss/acme/ales/impl/AlesServiceImpl.java	                        (rev 0)
+++ projects/demos/acme1/src/org/jboss/acme/ales/impl/AlesServiceImpl.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,37 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.acme.ales.impl;
+
+import org.jboss.acme.ales.AlesService;
+import org.jboss.acme.print.PrettyPrint;
+import org.jboss.acme.CommonService;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class AlesServiceImpl extends CommonService implements AlesService
+{
+   public void useFreeTime()
+   {
+      PrettyPrint.prettyPrint("Play basketball and have a beer.");
+   }
+}

Added: projects/demos/acme1/src/org/jboss/acme/print/PrettyPrint.java
===================================================================
--- projects/demos/acme1/src/org/jboss/acme/print/PrettyPrint.java	                        (rev 0)
+++ projects/demos/acme1/src/org/jboss/acme/print/PrettyPrint.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,33 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.acme.print;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class PrettyPrint
+{
+   public static void prettyPrint(String string)
+   {
+      System.out.println("PretyPrint: " + string);
+   }
+}

Added: projects/demos/acme1/src/org/jboss/acme/scott/ScottService.java
===================================================================
--- projects/demos/acme1/src/org/jboss/acme/scott/ScottService.java	                        (rev 0)
+++ projects/demos/acme1/src/org/jboss/acme/scott/ScottService.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,30 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.acme.scott;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public interface ScottService
+{
+   void snowTime();
+}

Added: projects/demos/acme1/src/org/jboss/acme/scott/impl/ScottServiceImpl.java
===================================================================
--- projects/demos/acme1/src/org/jboss/acme/scott/impl/ScottServiceImpl.java	                        (rev 0)
+++ projects/demos/acme1/src/org/jboss/acme/scott/impl/ScottServiceImpl.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,37 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.acme.scott.impl;
+
+import org.jboss.acme.scott.ScottService;
+import org.jboss.acme.print.PrettyPrint;
+import org.jboss.acme.CommonService;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class ScottServiceImpl extends CommonService implements ScottService
+{
+   public void snowTime()
+   {
+      PrettyPrint.prettyPrint("Ski, ski, ski ... :-)");
+   }
+}

Added: projects/demos/acme2/acme2.iml
===================================================================
--- projects/demos/acme2/acme2.iml	                        (rev 0)
+++ projects/demos/acme2/acme2.iml	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module version="4" relativePaths="true" type="JAVA_MODULE">
+  <component name="BuildJarSettings">
+    <containerInfo>
+      <containerElement type="module" name="acme2">
+        <attribute name="method" value="1" />
+        <attribute name="URI" value="/" />
+      </containerElement>
+    </containerInfo>
+    <setting name="jarUrl" value="file://$MODULE_DIR$/../boot/work/acme2.jar" />
+    <setting name="buildJar" value="true" />
+    <setting name="mainClass" value="" />
+  </component>
+  <component name="DependecySynchronizer" />
+  <component name="ModuleRootManager" />
+  <component name="NewModuleRootManager" inherit-compiler-output="true">
+    <exclude-output />
+    <content url="file://$MODULE_DIR$">
+      <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
+    </content>
+    <orderEntry type="inheritedJdk" />
+    <orderEntry type="sourceFolder" forTests="false" />
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-logging-spi.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntryProperties />
+  </component>
+</module>
+

Added: projects/demos/acme2/src/META-INF/acme-beans.xml
===================================================================
--- projects/demos/acme2/src/META-INF/acme-beans.xml	                        (rev 0)
+++ projects/demos/acme2/src/META-INF/acme-beans.xml	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="AlesService2" class="org.jboss.acme.ales.impl.AlesServiceImpl"/>
+   <bean name="ScottService2" class="org.jboss.acme.scott.impl.ScottServiceImpl"/>
+
+</deployment>

Added: projects/demos/acme2/src/META-INF/acme-clmd.properties
===================================================================
--- projects/demos/acme2/src/META-INF/acme-clmd.properties	                        (rev 0)
+++ projects/demos/acme2/src/META-INF/acme-clmd.properties	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,2 @@
+domain=FooBarDomain
+capabilities=org.jboss.acme.ales:2|org.jboss.acme.ales.impl:2|org.jboss.acme.scott:3|org.jboss.acme.scott.impl:3|org.jboss.acme.print:2|org.jboss.acme:2
\ No newline at end of file

Added: projects/demos/acme2/src/org/jboss/acme/CommonService.java
===================================================================
--- projects/demos/acme2/src/org/jboss/acme/CommonService.java	                        (rev 0)
+++ projects/demos/acme2/src/org/jboss/acme/CommonService.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,37 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.acme;
+
+import org.jboss.logging.Logger;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class CommonService
+{
+   private Logger log = Logger.getLogger(getClass());
+
+   public CommonService()
+   {
+      log.debug(getClass() + " -> " + getClass().getClassLoader());
+   }
+}

Added: projects/demos/acme2/src/org/jboss/acme/ales/AlesService.java
===================================================================
--- projects/demos/acme2/src/org/jboss/acme/ales/AlesService.java	                        (rev 0)
+++ projects/demos/acme2/src/org/jboss/acme/ales/AlesService.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,30 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.acme.ales;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public interface AlesService
+{
+   void useFreeTime();
+}

Added: projects/demos/acme2/src/org/jboss/acme/ales/impl/AlesServiceImpl.java
===================================================================
--- projects/demos/acme2/src/org/jboss/acme/ales/impl/AlesServiceImpl.java	                        (rev 0)
+++ projects/demos/acme2/src/org/jboss/acme/ales/impl/AlesServiceImpl.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,37 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.acme.ales.impl;
+
+import org.jboss.acme.ales.AlesService;
+import org.jboss.acme.print.PrettyPrint;
+import org.jboss.acme.CommonService;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class AlesServiceImpl extends CommonService implements AlesService
+{
+   public void useFreeTime()
+   {
+      PrettyPrint.prettyPrint("No free time, JBW demo to finish.");
+   }
+}

Added: projects/demos/acme2/src/org/jboss/acme/print/PrettyPrint.java
===================================================================
--- projects/demos/acme2/src/org/jboss/acme/print/PrettyPrint.java	                        (rev 0)
+++ projects/demos/acme2/src/org/jboss/acme/print/PrettyPrint.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,36 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.acme.print;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class PrettyPrint
+{
+   public static void prettyPrint(String string)
+   {
+      System.out.println("ImprovedPrettyPrint");
+      System.out.println("*******************");
+      System.out.println("*** " + string);
+      System.out.println("*******************");
+   }
+}

Added: projects/demos/acme2/src/org/jboss/acme/scott/ScottService.java
===================================================================
--- projects/demos/acme2/src/org/jboss/acme/scott/ScottService.java	                        (rev 0)
+++ projects/demos/acme2/src/org/jboss/acme/scott/ScottService.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,30 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.acme.scott;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public interface ScottService
+{
+   void snowTime();
+}

Added: projects/demos/acme2/src/org/jboss/acme/scott/impl/ScottServiceImpl.java
===================================================================
--- projects/demos/acme2/src/org/jboss/acme/scott/impl/ScottServiceImpl.java	                        (rev 0)
+++ projects/demos/acme2/src/org/jboss/acme/scott/impl/ScottServiceImpl.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,37 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.acme.scott.impl;
+
+import org.jboss.acme.scott.ScottService;
+import org.jboss.acme.print.PrettyPrint;
+import org.jboss.acme.CommonService;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class ScottServiceImpl extends CommonService implements ScottService
+{
+   public void snowTime()
+   {
+      PrettyPrint.prettyPrint("Showel snow. :-(");
+   }
+}

Added: projects/demos/boot/acme2.jar
===================================================================
(Binary files differ)


Property changes on: projects/demos/boot/acme2.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: projects/demos/boot/bootstrap-beans.xml
===================================================================
--- projects/demos/boot/bootstrap-beans.xml	                        (rev 0)
+++ projects/demos/boot/bootstrap-beans.xml	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,191 @@
+<?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">
+
+   <!-- All beans use the bootstrap classloader -->
+   <classloader><inject bean="BootstrapClassLoader"/></classloader>
+
+   <!-- TODO Should split this file up and use the new classloader -->
+   <bean name="BootstrapClassLoader" class="org.jboss.system.classloader.NoAnnotationURLClassLoader">
+      <classloader><null/></classloader>
+      <constructor factoryClass="org.jboss.system.classloader.NoAnnotationURLClassLoader" factoryMethod="createClassLoader">
+        <parameter>
+           <array elementClass="java.net.URL">
+              <!-- VFS -->
+              <value>${jboss.lib.url}/jboss-vfs.jar</value>
+              <!-- ClassLoader -->
+              <value>${jboss.lib.url}/jboss-classloading-spi.jar</value>
+              <value>${jboss.lib.url}/jboss-classloader.jar</value>
+              <value>${jboss.lib.url}/osgi.core.jar</value>
+              <!-- Deployers -->
+              <value>${jboss.lib.url}/jboss-metatype.jar</value>
+              <value>${jboss.lib.url}/jboss-managed.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-core-spi.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-core.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-client-spi.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-client.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-structure-spi.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-spi.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-impl.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-vfs-spi.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-vfs.jar</value>
+              <!-- System -->
+              <value>${jboss.lib.url}/jboss-system.jar</value>
+              <!-- JMX -->
+              <value>${jboss.lib.url}/jboss-j2se.jar</value>
+              <value>${jboss.lib.url}/jboss-mbeans.jar</value>
+              <value>${jboss.lib.url}/jboss-jmx.jar</value>
+              <value>${jboss.lib.url}/jboss-system-jmx.jar</value>
+              <value>${jboss.lib.url}/dom4j.jar</value>
+              <!-- AOP -->
+              <value>${jboss.lib.url}/jboss-aop-jdk50.jar</value>
+              <value>${jboss.lib.url}/jboss-aop-deployer-jdk50.jar</value>
+              <value>${jboss.lib.url}/jboss-aop-mc-int.jar</value>
+              <!-- Kill once we use the new classloaders -->
+              <value>${jboss.lib.url}/jboss-aop-jboss4-jdk50.jar</value>
+              <value>${jboss.lib.url}/jboss-aop-jboss5.jar</value>
+              <value>${jboss.lib.url}/trove.jar</value>
+              <!-- JAXB - shouldn't this be in endorsed? -->
+              <value>${jboss.lib.url}/activation.jar</value>
+              <value>${jboss.lib.url}/jaxb-api.jar</value>
+              <value>${jboss.lib.url}/jaxb-impl.jar</value>
+              <value>${jboss.lib.url}/stax-api.jar</value>
+              <value>${jboss.lib.url}/wstx.jar</value>
+           </array>
+        </parameter>
+      </constructor>
+   </bean>
+
+   <!-- 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"></bean>
+
+    <!-- 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.deployers.plugins.classloading.ClassLoading"/>
+   <bean name="HackClassLoaderMetaDataDeployer" class="org.jboss.system.deployers.PropertyClassloaderMetaDataDeployer"/>
+   <bean name="ClassloadingDeployer" class="org.jboss.system.deployers.ClassloadingDeployer">
+      <constructor>
+         <parameter><inject bean="ClassLoading"/></parameter>
+      </constructor>      
+   </bean>
+   <bean name="VFSClassLoaderDeployer" class="org.jboss.system.deployers.MockTopLevelClassLoaderSystemDeployer">
+      <property name="classLoading"><inject bean="ClassLoading"/></property>
+      <property name="system"><inject bean="ClassLoaderSystem"/></property>
+   </bean>
+
+   <!-- Hotdeployment of applications -->
+   <bean name="MainDeployerHelper" class="org.jboss.bootstrap.MainDeployerHelper">
+      <constructor>
+         <parameter><inject bean="MainDeployer"/></parameter>
+      </constructor>
+   </bean>
+
+   <bean name="HDScanner" class="org.jboss.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>

Added: projects/demos/boot/work/acme1.jar
===================================================================
(Binary files differ)


Property changes on: projects/demos/boot/work/acme1.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: projects/demos/boot/work/acme2.jar
===================================================================
(Binary files differ)


Property changes on: projects/demos/boot/work/acme2.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: projects/demos/boot/work/foo.jar
===================================================================
(Binary files differ)


Property changes on: projects/demos/boot/work/foo.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: projects/demos/bootstrap/bootstrap.iml
===================================================================
--- projects/demos/bootstrap/bootstrap.iml	                        (rev 0)
+++ projects/demos/bootstrap/bootstrap.iml	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,466 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module version="4" relativePaths="true" type="JAVA_MODULE">
+  <component name="DependecySynchronizer" />
+  <component name="ModuleRootManager" />
+  <component name="NewModuleRootManager" inherit-compiler-output="true">
+    <exclude-output />
+    <content url="file://$MODULE_DIR$">
+      <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
+    </content>
+    <orderEntry type="inheritedJdk" />
+    <orderEntry type="sourceFolder" forTests="false" />
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-dependency.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-kernel.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES>
+          <root url="jar://$MODULE_DIR$/../../../microcontainer/kernel/target/jboss-kernel-sources.jar!/" />
+        </SOURCES>
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-deployers-impl.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES>
+          <root url="jar://$MODULE_DIR$/../../../microcontainer/deployers-impl/target/jboss-deployers-impl-sources.jar!/" />
+        </SOURCES>
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-deployers-client.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-managed.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-deployers-core.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-deployers-structure-spi.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES>
+          <root url="jar://$MODULE_DIR$/../../../microcontainer/deployers-structure-spi/target/jboss-deployers-structure-spi-sources.jar!/" />
+        </SOURCES>
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-deployers-core-spi.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-deployers-vfs-spi.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-container.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-classloader.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES>
+          <root url="jar://$MODULE_DIR$/../../../microcontainer/classloader/target/jboss-classloader-sources.jar!/" />
+        </SOURCES>
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-deployers-vfs.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-deployers-spi.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-deployers-client-spi.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-aop-mc-int.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/mc_trunk/jboss-metatype.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library" exported="">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss-vfs/target/jboss-vfs.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES>
+          <root url="jar://$MODULE_DIR$/../../../jboss-vfs/target/jboss-vfs-sources.jar!/" />
+        </SOURCES>
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-aop-deployer-jdk50.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/javassist.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/stax-api.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/dom4j.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-common-core.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-aop-jdk50.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-aop-jboss5.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jaxb-impl.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/getopt.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-classloading-spi.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-xml-binding.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/trove.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/osgi.core.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-aop-jboss4-jdk50.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/concurrent.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-logging-jdk.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-logging-spi.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/activation.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jaxb-xjc.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/wstx.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-system-jmx.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/endorsed/jaxb-api.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/endorsed/xalan.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/endorsed/xercesImpl.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/endorsed/resolver.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/endorsed/xml-apis.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/endorsed/serializer.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-system.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-j2se.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-jmx.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/jboss-logging-log4j.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/../../../jboss5/trunk/build/output/jboss-5.0.0.Beta4/lib/log4j-boot.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
+    <orderEntryProperties />
+  </component>
+</module>
+

Added: projects/demos/bootstrap/resources/bootstrap-beans.xml
===================================================================
--- projects/demos/bootstrap/resources/bootstrap-beans.xml	                        (rev 0)
+++ projects/demos/bootstrap/resources/bootstrap-beans.xml	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,192 @@
+<?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">
+
+   <!-- All beans use the bootstrap classloader -->
+   <classloader><inject bean="BootstrapClassLoader"/></classloader>
+
+   <!-- TODO Should split this file up and use the new classloader -->
+   <bean name="BootstrapClassLoader" class="org.jboss.system.classloader.NoAnnotationURLClassLoader">
+      <classloader><null/></classloader>
+      <constructor factoryClass="org.jboss.system.classloader.NoAnnotationURLClassLoader" factoryMethod="createClassLoader">
+        <parameter>
+           <array elementClass="java.net.URL">
+              <!-- VFS -->
+              <value>${jboss.lib.url}/jboss-vfs.jar</value>
+              <!-- ClassLoader -->
+              <value>${jboss.lib.url}/jboss-classloading-spi.jar</value>
+              <value>${jboss.lib.url}/jboss-classloader.jar</value>
+              <value>${jboss.lib.url}/osgi.core.jar</value>
+              <!-- Deployers -->
+              <value>${jboss.lib.url}/jboss-metatype.jar</value>
+              <value>${jboss.lib.url}/jboss-managed.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-core-spi.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-core.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-client-spi.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-client.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-structure-spi.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-spi.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-impl.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-vfs-spi.jar</value>
+              <value>${jboss.lib.url}/jboss-deployers-vfs.jar</value>
+              <!-- System -->
+              <value>${jboss.lib.url}/jboss-system.jar</value>
+              <!-- JMX -->
+              <value>${jboss.lib.url}/jboss-j2se.jar</value>
+              <value>${jboss.lib.url}/jboss-mbeans.jar</value>
+              <value>${jboss.lib.url}/jboss-jmx.jar</value>
+              <value>${jboss.lib.url}/jboss-system-jmx.jar</value>
+              <value>${jboss.lib.url}/dom4j.jar</value>
+              <!-- AOP -->
+              <value>${jboss.lib.url}/jboss-aop-jdk50.jar</value>
+              <value>${jboss.lib.url}/jboss-aop-deployer-jdk50.jar</value>
+              <value>${jboss.lib.url}/jboss-aop-mc-int.jar</value>
+              <!-- Kill once we use the new classloaders -->
+              <value>${jboss.lib.url}/jboss-aop-jboss4-jdk50.jar</value>
+              <value>${jboss.lib.url}/jboss-aop-jboss5.jar</value>
+              <value>${jboss.lib.url}/trove.jar</value>
+              <!-- JAXB - shouldn't this be in endorsed? -->
+              <value>${jboss.lib.url}/activation.jar</value>
+              <value>${jboss.lib.url}/jaxb-api.jar</value>
+              <value>${jboss.lib.url}/jaxb-impl.jar</value>
+              <value>${jboss.lib.url}/stax-api.jar</value>
+              <value>${jboss.lib.url}/wstx.jar</value>
+           </array>
+        </parameter>
+      </constructor>
+   </bean>
+
+   <!-- 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"></bean>
+
+    <!-- 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.deployers.plugins.classloading.ClassLoading"/>
+
+   <bean name="HackClassLoaderMetaDataDeployer" class="org.jboss.system.deployers.PropertyClassloaderMetaDataDeployer"/>
+   <bean name="ClassloadingDeployer" class="org.jboss.system.deployers.ClassloadingDeployer">
+      <constructor>
+         <parameter><inject bean="ClassLoading"/></parameter>
+      </constructor>
+   </bean>
+   <bean name="VFSClassLoaderDeployer" class="org.jboss.system.deployers.MockTopLevelClassLoaderSystemDeployer">
+      <property name="classLoading"><inject bean="ClassLoading"/></property>
+      <property name="system"><inject bean="ClassLoaderSystem"/></property>
+   </bean>
+
+   <!-- Hotdeployment of applications -->
+   <bean name="MainDeployerHelper" class="org.jboss.bootstrap.MainDeployerHelper">
+      <constructor>
+         <parameter><inject bean="MainDeployer"/></parameter>
+      </constructor>
+   </bean>
+
+   <bean name="HDScanner" class="org.jboss.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>

Added: projects/demos/bootstrap/src/log4j.properties
===================================================================
--- projects/demos/bootstrap/src/log4j.properties	                        (rev 0)
+++ projects/demos/bootstrap/src/log4j.properties	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,6 @@
+log4j.rootLogger=INFO, stdout
+
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+# Pattern to output the caller's file name and line number.
+log4j.appender.stdout.layout.ConversionPattern=Acme %5p [%d{dd-MM-yyyy HH:mm:ss}] %c{1} - %m%n

Added: projects/demos/bootstrap/src/org/jboss/bootstrap/HDScanner.java
===================================================================
--- projects/demos/bootstrap/src/org/jboss/bootstrap/HDScanner.java	                        (rev 0)
+++ projects/demos/bootstrap/src/org/jboss/bootstrap/HDScanner.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,136 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.bootstrap;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import java.util.concurrent.Executors;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.ScheduledFuture;
+import java.util.concurrent.ThreadFactory;
+import java.util.concurrent.TimeUnit;
+
+import org.jboss.virtual.VFS;
+import org.jboss.virtual.VirtualFile;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class HDScanner implements Runnable
+{
+   private ScheduledExecutorService scanExecutor;
+   private ScheduledFuture activeScan;
+   private String scanThreadName = "HDScanner";
+   private long scanPeriod = 10000;
+
+   private MainDeployerHelper helper;
+   private VirtualFile root;
+   private Set<VirtualFile> files = new HashSet<VirtualFile>();
+
+   public HDScanner(MainDeployerHelper helper, File file) throws IOException
+   {
+      this.helper = helper;
+      this.root = VFS.getRoot(file.toURL());
+   }
+
+   public void setScanThreadName(String scanThreadName)
+   {
+      this.scanThreadName = scanThreadName;
+   }
+
+   public void setScanPeriod(long scanPeriod)
+   {
+      this.scanPeriod = scanPeriod;
+   }
+
+   public void start() throws Exception
+   {
+      // Default to a single thread executor
+      if (scanExecutor == null)
+      {
+         scanExecutor = Executors.newSingleThreadScheduledExecutor(
+               new ThreadFactory()
+               {
+                  public Thread newThread(Runnable r)
+                  {
+                     return new Thread(r, scanThreadName);
+                  }
+               }
+         );
+      }
+      activeScan = scanExecutor.scheduleWithFixedDelay(this, 0, scanPeriod, TimeUnit.MILLISECONDS);
+   }
+
+   public void stop()
+   {
+      if (activeScan != null)
+      {
+         activeScan.cancel(true);
+         activeScan = null;
+      }
+   }
+
+   public void run()
+   {
+      try
+      {
+         scan();
+      }
+      catch (Throwable e)
+      {
+         System.err.println("Scan failed: " + e);
+      }
+   }
+
+   protected void scan() throws Throwable
+   {
+      Set<VirtualFile> tmp = new HashSet<VirtualFile>();
+      List<VirtualFile> children = root.getChildren();
+      for (VirtualFile file : children)
+      {
+         if (files.contains(file) == false)
+         {
+            helper.deploy(file);
+            tmp.add(file);
+         }
+         else
+         {
+            if (file.hasBeenModified())
+            {
+               helper.redeploy(file);
+            }
+            files.remove(file);
+            tmp.add(file);
+         }
+      }
+      for (VirtualFile file : files)
+      {
+         helper.undeploy(file);
+      }
+      files.clear();
+      files.addAll(tmp);
+      helper.process();
+   }
+}

Added: projects/demos/bootstrap/src/org/jboss/bootstrap/Main.java
===================================================================
--- projects/demos/bootstrap/src/org/jboss/bootstrap/Main.java	                        (rev 0)
+++ projects/demos/bootstrap/src/org/jboss/bootstrap/Main.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,88 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.bootstrap;
+
+import java.io.File;
+
+import org.jboss.kernel.Kernel;
+import org.jboss.kernel.plugins.bootstrap.basic.BasicBootstrap;
+import org.jboss.kernel.plugins.deployment.xml.BasicXMLDeployer;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class Main
+{
+   private Kernel kernel;
+   private BasicXMLDeployer kernelDeployer;
+
+   public static void main(String[] args)
+   {
+      Main main = new Main();
+      main.configure(args);
+   }
+
+   protected void configure(String[] args)
+   {
+      try
+      {
+         String rootString = "C:\\projects\\demos\\osgi\\boot\\bootstrap-beans.xml";
+         if (args != null)
+         {
+            if (args.length > 0)
+               rootString = args[0];
+         }
+         File rootFile = new File(rootString);
+         if (rootFile.exists() == false)
+            throw new IllegalArgumentException(rootFile  + " doesn't exist!");
+
+         BasicBootstrap bootstrap = new BasicBootstrap();
+         bootstrap.run();
+         kernel = bootstrap.getKernel();
+
+         kernelDeployer = new BasicXMLDeployer(kernel);
+         kernelDeployer.deploy(rootFile.toURL());
+         kernelDeployer.validate();
+      }
+      catch (Throwable t)
+      {
+         t.printStackTrace();
+      }
+   }
+
+   protected void registerShutdownThread()
+   {
+      Runtime.getRuntime().addShutdownHook(new Thread(new ShutdownThread()));
+   }
+
+   private class ShutdownThread implements Runnable
+   {
+      public void run()
+      {
+         kernelDeployer.shutdown();
+         kernelDeployer = null;
+
+         kernel.getController().shutdown();
+         kernel = null;
+      }
+   }
+}

Added: projects/demos/bootstrap/src/org/jboss/bootstrap/MainDeployerHelper.java
===================================================================
--- projects/demos/bootstrap/src/org/jboss/bootstrap/MainDeployerHelper.java	                        (rev 0)
+++ projects/demos/bootstrap/src/org/jboss/bootstrap/MainDeployerHelper.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,72 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.bootstrap;
+
+import org.jboss.deployers.client.spi.main.MainDeployer;
+import org.jboss.deployers.client.spi.Deployment;
+import org.jboss.deployers.vfs.spi.client.VFSDeploymentFactory;
+import org.jboss.deployers.spi.DeploymentException;
+import org.jboss.virtual.VirtualFile;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class MainDeployerHelper
+{
+   private VFSDeploymentFactory factory = VFSDeploymentFactory.getInstance();
+   private MainDeployer mainDeployer;
+
+   public MainDeployerHelper(MainDeployer mainDeployer)
+   {
+      this.mainDeployer = mainDeployer;
+   }
+
+   protected Deployment createDeployment(VirtualFile file)
+   {
+      return factory.createVFSDeployment(file);
+   }
+
+   public void deploy(VirtualFile file) throws DeploymentException
+   {
+      Deployment deployment = createDeployment(file);
+      mainDeployer.addDeployment(deployment);
+   }
+
+   public void redeploy(VirtualFile file) throws DeploymentException
+   {
+      Deployment deployment = createDeployment(file);
+      mainDeployer.addDeployment(deployment);
+
+   }
+
+   public void undeploy(VirtualFile file) throws DeploymentException
+   {
+      Deployment deployment = createDeployment(file);
+      mainDeployer.removeDeployment(deployment);
+   }
+
+   public void process() throws DeploymentException
+   {
+      mainDeployer.process();
+      mainDeployer.checkComplete();
+   }
+}

Added: projects/demos/bootstrap/src/org/jboss/system/classloader/MockClassLoaderPolicy.java
===================================================================
--- projects/demos/bootstrap/src/org/jboss/system/classloader/MockClassLoaderPolicy.java	                        (rev 0)
+++ projects/demos/bootstrap/src/org/jboss/system/classloader/MockClassLoaderPolicy.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,481 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.classloader;
+
+import java.io.IOException;
+import java.net.URL;
+import java.security.CodeSource;
+import java.security.PermissionCollection;
+import java.security.Policy;
+import java.security.ProtectionDomain;
+import java.security.cert.Certificate;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.jar.Manifest;
+
+import org.jboss.classloader.plugins.ClassLoaderUtils;
+import org.jboss.classloader.plugins.filter.PatternClassFilter;
+import org.jboss.classloader.spi.ClassLoaderPolicy;
+import org.jboss.classloader.spi.DelegateLoader;
+import org.jboss.classloader.spi.PackageInformation;
+import org.jboss.classloader.spi.filter.ClassFilter;
+import org.jboss.deployers.structure.spi.classloading.ExportAll;
+import org.jboss.logging.Logger;
+import org.jboss.virtual.VFSUtils;
+import org.jboss.virtual.VirtualFile;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class MockClassLoaderPolicy extends ClassLoaderPolicy
+{
+   /** The log */
+   private static Logger log = Logger.getLogger(MockClassLoaderPolicy.class);
+
+   /** Tag for no manifest */
+   private static final Manifest NO_MANIFEST = new Manifest();
+
+   /** The logical name of the policy */
+   private String name;
+
+   /** The delegates */
+   private List<? extends DelegateLoader> delegates;
+
+   /** The paths */
+   private String[] paths;
+
+   /** The exported package names */
+   private String[] packageNames;
+
+   /** Whether to import all */
+   private boolean importAll;
+
+   /** The non JDK classes filter */
+   private ClassFilter nonJDKFilter;
+
+   /**
+    * Virtual file root
+    */
+   private VirtualFile root;
+
+   /** Manifest cache */
+   private Map<URL, Manifest> manifestCache = new ConcurrentHashMap<URL, Manifest>();
+
+   /**
+    * Create a new MockClassLoaderPolicy filtering org.jboss.* classes
+    * with logical name "mock"
+    */
+   public MockClassLoaderPolicy()
+   {
+      this(null);
+   }
+
+   /**
+    * Create a new MockClassLoaderPolicy filtering org.jboss.* classes
+    *
+    * @param name the logical name of the policy
+    */
+   public MockClassLoaderPolicy(String name)
+   {
+      this(name, new String[] { "org\\.jboss\\..+" },
+                 new String[] { "org/jboss/.+" },
+                 new String[] { "org\\.jboss", "org\\.jboss\\..*" });
+   }
+
+   /**
+    * Create a new MockClassLoaderPolicy filtering org.jboss.* classes
+    *
+    * @param name the name
+    * @param classPatterns the class patterns
+    * @param resourcePatterns the resourcePatterns
+    * @param packagePatterns the packagePatterns
+    */
+   public MockClassLoaderPolicy(String name, String[] classPatterns, String[] resourcePatterns, String[] packagePatterns)
+   {
+      this(name, new PatternClassFilter(classPatterns, resourcePatterns, packagePatterns));
+   }
+
+   /**
+    * Create a new MockClassLoaderPolicy filtering the given patterns
+    *
+    * @param name the logical name of the policy
+    * @param nonJDKFilter the filter for nonJDK classes
+    * @throws IllegalArgumentException for a null filter
+    */
+   public MockClassLoaderPolicy(String name, ClassFilter nonJDKFilter)
+   {
+      if (name == null)
+         name = "mock";
+      this.name = name;
+      if (nonJDKFilter == null)
+         throw new IllegalArgumentException("Null filter");
+      this.nonJDKFilter = nonJDKFilter;
+   }
+
+   public String getName()
+   {
+      return name;
+   }
+
+   protected DelegateLoader getExported()
+   {
+      return null;
+   }
+
+   @Override
+   public List<? extends DelegateLoader> getDelegates()
+   {
+      return delegates;
+   }
+
+   /**
+    * Set the delegates
+    *
+    * @param delegates the delegate imports
+    */
+   public void setDelegates(List<? extends DelegateLoader> delegates)
+   {
+      this.delegates = delegates;
+   }
+
+   /**
+    * Get the paths to expose
+    *
+    * @return the paths
+    */
+   public String[] getPaths()
+   {
+      return paths;
+   }
+
+   /**
+    * Set the path to expose
+    *
+    * @param path the path
+    */
+   public void setPath(String path)
+   {
+      setPaths(path);
+   }
+
+   /**
+    * Set the paths to expose
+    *
+    * @param paths the paths to expose
+    */
+   public void setPaths(String... paths)
+   {
+      this.paths = paths;
+   }
+
+   /**
+    * Set the paths to expose
+    *
+    * @param classes the classes to reference to determine the package paths
+    */
+   public void setPaths(Class<?>... classes)
+   {
+      if (classes == null)
+      {
+         paths = null;
+         return;
+      }
+      paths = new String[classes.length];
+      for (int i = 0; i < classes.length; ++i)
+         paths[i] = ClassLoaderUtils.packageNameToPath(classes[i].getName());
+   }
+
+   @Override
+   public String[] getPackageNames()
+   {
+      return packageNames;
+   }
+
+   /**
+    * Set the exported package names
+    *
+    * @param packageNames the exported packages
+    */
+   public void setPackageNames(String... packageNames)
+   {
+      this.packageNames = packageNames;
+   }
+
+   /**
+    * Set the exported package names
+    *
+    * @param classes the classes to reference to determine the package names
+    */
+   public void setPackageNames(Class<?>... classes)
+   {
+      if (classes == null)
+      {
+         packageNames = null;
+         return;
+      }
+      packageNames = new String[classes.length];
+      for (int i = 0; i < classes.length; ++i)
+         packageNames[i] = ClassLoaderUtils.getClassPackageName(classes[i].getName());
+   }
+
+   /**
+    * Set the paths and the exported package names
+    *
+    * @param classes the classes to reference
+    */
+   public void setPathsAndPackageNames(Class<?>... classes)
+   {
+      setPaths(classes);
+      setPackageNames(classes);
+   }
+
+   /**
+    * Set the paths and the exported package names
+    *
+    * @param packages the packages
+    */
+   public void setPathsAndPackageNames(String... packages)
+   {
+      if (packages == null)
+      {
+         paths = null;
+         packageNames = null;
+         return;
+      }
+      paths = new String[packages.length];
+      for (int i = 0; i < packages.length; ++i)
+         paths[i] = packages[i].replace('.', '/');
+
+      setPackageNames(packages);
+   }
+
+   @Override
+   public boolean isImportAll()
+   {
+      return importAll;
+   }
+
+   /**
+    * Set the importAll.
+    *
+    * @param importAll the importAll.
+    */
+   public void setImportAll(boolean importAll)
+   {
+      this.importAll = importAll;
+   }
+
+   public VirtualFile getRoot()
+   {
+      return root;
+   }
+
+   public void setRoot(VirtualFile root)
+   {
+      this.root = root;
+   }
+
+   protected VirtualFile findChild(String path)
+   {
+      try
+      {
+         return root.getChild(path);
+      }
+      catch (Exception ignored)
+      {
+         // not found
+      }
+      return null;
+   }
+
+   protected VirtualFile findRoot(String path)
+   {
+      try
+      {
+         if (root.getChild(path) != null)
+            return root;
+      }
+      catch (Exception ignored)
+      {
+         // not found
+      }
+      return null;
+   }
+
+   protected URL findFileURL(String path)
+   {
+      try
+      {
+         VirtualFile child = findChild(path);
+         if (child != null)
+            return child.toURL();
+      }
+      catch (Exception ignored)
+      {
+      }
+      return null;
+   }
+
+   @Override
+   public URL getResource(String path)
+   {
+      if (paths == null)
+         return null;
+
+      for (int i = 0; i < paths.length; ++i)
+      {
+         if (path.startsWith(paths[i]))
+         {
+            return findFileURL(path);
+         }
+      }
+      return null;
+   }
+
+   @Override
+   public void getResources(String path, Set<URL> urls) throws IOException
+   {
+      if (paths == null)
+         return;
+
+      for (int i = 0; i < paths.length; ++i)
+      {
+         if (path.startsWith(paths[i]))
+         {
+            URL url = findFileURL(path);
+            if (url != null)
+               urls.add(url);
+         }
+      }
+   }
+
+   @Override
+   public PackageInformation getPackageInformation(String packageName)
+   {
+      String path = packageName.replace('.', '/');
+      VirtualFile root = findRoot(path);
+      Manifest manifest = null;
+      URL rootURL = null;
+      if (root != null)
+      {
+         try
+         {
+            rootURL = root.toURL();
+            manifest = manifestCache.get(rootURL);
+            if (manifest == null)
+            {
+               manifest = VFSUtils.getManifest(root);
+               if (manifest == null)
+                  manifestCache.put(rootURL, NO_MANIFEST);
+               else
+                  manifestCache.put(rootURL, manifest);
+            }
+
+            if (manifest == NO_MANIFEST)
+               manifest = null;
+         }
+         catch (Exception ignored)
+         {
+            if (log.isTraceEnabled())
+               log.trace("Unable to retrieve manifest for " + path + " url=" + rootURL + " error="  + ignored.getMessage());
+         }
+      }
+      return new PackageInformation(packageName, manifest);
+   }
+
+   @Override
+   protected ProtectionDomain getProtectionDomain(String className, String path)
+   {
+      VirtualFile clazz = findChild(path);
+      if (clazz == null)
+      {
+         log.trace("Unable to determine class file for " + className);
+         return null;
+      }
+      try
+      {
+         VirtualFile root = clazz.getVFS().getRoot();
+         URL codeSourceURL = root.toURL();
+         Certificate[] certs = null;
+         CodeSource cs = new CodeSource(codeSourceURL, certs);
+         PermissionCollection permissions = Policy.getPolicy().getPermissions(cs);
+         return new ProtectionDomain(cs, permissions);
+      }
+      catch (Exception e)
+      {
+         throw new Error("Error determining protection domain for " + clazz, e);
+      }
+   }
+
+   /**
+    * Determine all the packages
+    *
+    * @return the packages
+    * @throws IllegalArgumentException if there is no exportAll policy
+    */
+   protected Set<String> determineAllPackages()
+   {
+      PackageVisitor visitor = new PackageVisitor(ExportAll.NON_EMPTY);
+      try
+      {
+         visitor.setRoot(root);
+         root.visit(visitor);
+      }
+      catch (Exception e)
+      {
+         throw new Error("Error visiting " + root, e);
+      }
+      return visitor.getPackages();
+   }
+
+   /*
+    * Overridden to not expose classes in the nonJDKFilter
+    * this is so we don't expose classes from the classpath
+    * that we haven't explicitly declared in the policy
+    */
+   @Override
+   protected ClassLoader isJDKRequest(String name)
+   {
+      if (nonJDKFilter.matchesClassName(name))
+         return null;
+      return super.isJDKRequest(name);
+   }
+
+   @Override
+   public void toLongString(StringBuilder builder)
+   {
+      builder.append(" name=").append(name);
+      if (paths != null)
+         builder.append(" paths=").append(Arrays.asList(paths));
+      super.toLongString(builder);
+   }
+
+
+   @Override
+   public String toString()
+   {
+      return name;
+   }
+}

Added: projects/demos/bootstrap/src/org/jboss/system/classloader/NoAnnotationURLClassLoader.java
===================================================================
--- projects/demos/bootstrap/src/org/jboss/system/classloader/NoAnnotationURLClassLoader.java	                        (rev 0)
+++ projects/demos/bootstrap/src/org/jboss/system/classloader/NoAnnotationURLClassLoader.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,117 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.classloader;
+
+import java.net.URLClassLoader;
+import java.net.URL;
+import java.net.URLStreamHandlerFactory;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class NoAnnotationURLClassLoader
+   extends URLClassLoader
+{
+   /** The value returned by {@link getURLs}. */
+   private static final URL[] EMPTY_URL_ARRAY = {};
+
+   /**
+    * Create a classloader with the context classloader as parent
+    *
+    * @param urls the urls
+    * @return the classloader
+    */
+   public static NoAnnotationURLClassLoader createClassLoader(URL... urls)
+   {
+      return createClassLoader(Thread.currentThread().getContextClassLoader(), urls);
+   }
+
+   /**
+    * Create a classloader
+    *
+    * @param parent the parent classloader
+    * @param urls the urls
+    * @return the classloader
+    */
+   public static NoAnnotationURLClassLoader createClassLoader(ClassLoader parent, URL... urls)
+   {
+      return new NoAnnotationURLClassLoader(urls, parent);
+   }
+
+   /**
+    * Construct a <tt>URLClassLoader</tt>
+    *
+    * @param urls   the URLs to load classes from.
+    */
+   public NoAnnotationURLClassLoader(URL[] urls)
+   {
+      super(urls);
+   }
+
+   /**
+    * Construct a <tt>URLClassLoader</tt>
+    *
+    * @param urls   the URLs to load classes from.
+    * @param parent the parent classloader.
+    */
+   public NoAnnotationURLClassLoader(URL[] urls, ClassLoader parent)
+   {
+      super(urls, parent);
+   }
+
+   /**
+    * Construct a <tt>URLClassLoader</tt>
+    *
+    * @param urls    the URLs to load classes from.
+    * @param parent  the parent classloader.
+    * @param factory the url stream factory.
+    */
+   public NoAnnotationURLClassLoader(URL[] urls, ClassLoader parent,
+                                     URLStreamHandlerFactory factory)
+   {
+      super(urls, parent, factory);
+   }
+
+   /**
+   * Return all library URLs
+   *
+   * <p>Do not remove this method without running the WebIntegrationTestSuite
+   * @return the urls
+   */
+   public URL[] getAllURLs()
+   {
+      return super.getURLs();
+   }
+
+   /**
+   * Return an empty URL array to force the RMI marshalling subsystem to
+   * use the <tt>java.server.codebase</tt> property as the annotated codebase.
+   *
+   * <p>Do not remove this method without discussing it on the dev list.
+   *
+   * @return Empty URL[]
+   */
+   public URL[] getURLs()
+   {
+      return EMPTY_URL_ARRAY;
+   }
+}

Added: projects/demos/bootstrap/src/org/jboss/system/classloader/PackageVisitor.java
===================================================================
--- projects/demos/bootstrap/src/org/jboss/system/classloader/PackageVisitor.java	                        (rev 0)
+++ projects/demos/bootstrap/src/org/jboss/system/classloader/PackageVisitor.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,178 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.classloader;
+
+import java.io.IOException;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.jboss.deployers.structure.spi.classloading.ExportAll;
+import org.jboss.virtual.VirtualFile;
+import org.jboss.virtual.VirtualFileVisitor;
+import org.jboss.virtual.VisitorAttributes;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+class PackageVisitor implements VirtualFileVisitor
+{
+   /** The packages */
+   private Set<String> packages = new HashSet<String>();
+
+   /** The root */
+   private String rootPath;
+
+   /** The root with slash*/
+   private String rootPathWithSlash;
+
+   /** The exportAll policy */
+   private ExportAll exportAll;
+
+   /** The excluded packages */
+   private Set<String> excludedPackages;
+
+   /**
+    * Create a new PackageVisitor.
+    *
+    * @param exportAll the export all policy
+    * @throws IllegalArgumentException for a null exportAll policy
+    */
+   public PackageVisitor(ExportAll exportAll)
+   {
+      this(exportAll, null);
+   }
+
+   /**
+    * Create a new PackageVisitor.
+    *
+    * @param exportAll the export all policy
+    * @param excludedPackages the excluded packages
+    * @throws IllegalArgumentException for a null exportAll policy
+    */
+   public PackageVisitor(ExportAll exportAll, Set<String> excludedPackages)
+   {
+      if (exportAll == null)
+         throw new IllegalArgumentException("Null exportAll policy");
+      this.exportAll = exportAll;
+      this.excludedPackages = excludedPackages;
+   }
+
+   /**
+    * Set the root
+    *
+    * @param root the root
+    * @throws IllegalArgumentException for a null root
+    */
+   public void setRoot(VirtualFile root)
+   {
+      if (root == null)
+         throw new IllegalArgumentException("Null root");
+      rootPath = root.getPathName();
+      rootPathWithSlash = rootPath + "/";
+   }
+
+   /**
+    * Get the packages.
+    *
+    * @return the packages.
+    */
+   public Set<String> getPackages()
+   {
+      return packages;
+   }
+
+   public VisitorAttributes getAttributes()
+   {
+      VisitorAttributes attributes = new VisitorAttributes();
+      attributes.setIncludeRoot(true);
+      attributes.setRecurseFilter(VisitorAttributes.RECURSE_ALL);
+      return attributes;
+   }
+
+   public void visit(VirtualFile file)
+   {
+      try
+      {
+         // We only want only directories
+         if (file.isLeaf() == false)
+         {
+            boolean empty = true;
+            // Include empty directories?
+            if (exportAll == ExportAll.ALL)
+               empty = false;
+            else
+            {
+               // Determine whether there is anything there
+               List<VirtualFile> children = file.getChildren();
+               if (children != null && children.isEmpty() == false)
+               {
+                  for (VirtualFile child : children)
+                  {
+                     // We must have a leaf to be non-empty
+                     if (child.isLeaf())
+                     {
+                        empty = false;
+                        break;
+                     }
+                  }
+               }
+            }
+            // This looks interesting
+            if (empty == false)
+            {
+               String path = file.getPathName();
+               if (path.equals(rootPath))
+                  path = "";
+               else if (path.startsWith(rootPathWithSlash))
+                  path = path.substring(rootPathWithSlash.length());
+               String pkg = path.replace('/', '.');
+               // Check for excluded package prefixes
+               if(excludedPackages != null)
+               {
+                  // Look at each package up to the root
+                  String prefix = pkg;
+                  while(prefix.length() >= 0)
+                  {
+                     if(excludedPackages.contains(prefix))
+                     {
+                        pkg = null;
+                        break;
+                     }
+                     int dot = prefix.lastIndexOf('.');
+                     if(dot > 0)
+                        prefix = prefix.substring(0, dot);
+                     else
+                        break;
+                  }
+               }
+               if(pkg != null)
+                  packages.add(pkg);
+            }
+         }
+      }
+      catch (IOException e)
+      {
+         throw new Error("Error visiting " + file, e);
+      }
+   }
+}
\ No newline at end of file

Added: projects/demos/bootstrap/src/org/jboss/system/deployers/ClassloadingDeployer.java
===================================================================
--- projects/demos/bootstrap/src/org/jboss/system/deployers/ClassloadingDeployer.java	                        (rev 0)
+++ projects/demos/bootstrap/src/org/jboss/system/deployers/ClassloadingDeployer.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,54 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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 org.jboss.deployers.plugins.classloading.ClassLoading;
+import org.jboss.deployers.spi.DeploymentException;
+import org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer;
+import org.jboss.deployers.spi.deployer.DeploymentStages;
+import org.jboss.deployers.structure.spi.DeploymentUnit;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class ClassloadingDeployer extends AbstractRealDeployer
+{
+   private ClassLoading classLoading;
+
+   public ClassloadingDeployer(ClassLoading classLoading)
+   {
+      setStage(DeploymentStages.DESCRIBE);
+      if (classLoading == null)
+         throw new IllegalArgumentException("Null classloading");
+      this.classLoading = classLoading;
+   }
+
+   protected void internalDeploy(DeploymentUnit deploymentUnit) throws DeploymentException
+   {
+      classLoading.addDeploymentUnit(deploymentUnit);
+   }
+
+   protected void internalUndeploy(DeploymentUnit deploymentUnit)
+   {
+      classLoading.removeDeploymentUnit(deploymentUnit);
+   }
+}

Added: projects/demos/bootstrap/src/org/jboss/system/deployers/MockTopLevelClassLoaderSystemDeployer.java
===================================================================
--- projects/demos/bootstrap/src/org/jboss/system/deployers/MockTopLevelClassLoaderSystemDeployer.java	                        (rev 0)
+++ projects/demos/bootstrap/src/org/jboss/system/deployers/MockTopLevelClassLoaderSystemDeployer.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,49 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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 org.jboss.classloader.spi.ClassLoaderPolicy;
+import org.jboss.deployers.plugins.classloading.AbstractTopLevelClassLoaderSystemDeployer;
+import org.jboss.deployers.plugins.classloading.Module;
+import org.jboss.deployers.structure.spi.DeploymentContext;
+import org.jboss.deployers.vfs.spi.structure.VFSDeploymentContext;
+import org.jboss.system.classloader.MockClassLoaderPolicy;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class MockTopLevelClassLoaderSystemDeployer extends AbstractTopLevelClassLoaderSystemDeployer
+{
+   @Override
+   protected ClassLoaderPolicy createTopLevelClassLoaderPolicy(DeploymentContext context, Module module) throws Exception
+   {
+      MockClassLoaderPolicy policy = new MockClassLoaderPolicy(context.getName());
+      policy.setRoot(((VFSDeploymentContext)context).getRoot());
+      policy.setImportAll(module.isImportAll());
+      policy.setDelegates(module.getDelegates());
+      policy.setPathsAndPackageNames(module.getPackageNames());
+
+      context.getTransientAttachments().addAttachment(ClassLoaderPolicy.class, policy);
+
+      return policy;
+   }
+}

Added: projects/demos/bootstrap/src/org/jboss/system/deployers/PropertyClassloaderMetaDataDeployer.java
===================================================================
--- projects/demos/bootstrap/src/org/jboss/system/deployers/PropertyClassloaderMetaDataDeployer.java	                        (rev 0)
+++ projects/demos/bootstrap/src/org/jboss/system/deployers/PropertyClassloaderMetaDataDeployer.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,117 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.InputStream;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Properties;
+
+import org.jboss.deployers.structure.spi.classloading.Capability;
+import org.jboss.deployers.structure.spi.classloading.ClassLoaderMetaData;
+import org.jboss.deployers.structure.spi.classloading.Requirement;
+import org.jboss.deployers.structure.spi.classloading.Version;
+import org.jboss.deployers.structure.spi.classloading.VersionRange;
+import org.jboss.deployers.structure.spi.classloading.helpers.PackageCapabilityImpl;
+import org.jboss.deployers.structure.spi.classloading.helpers.RequirePackageImpl;
+import org.jboss.deployers.structure.spi.classloading.helpers.VersionImpl;
+import org.jboss.deployers.vfs.spi.deployer.AbstractVFSParsingDeployer;
+import org.jboss.deployers.vfs.spi.structure.VFSDeploymentUnit;
+import org.jboss.virtual.VirtualFile;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class PropertyClassloaderMetaDataDeployer extends AbstractVFSParsingDeployer<ClassLoaderMetaData>
+{
+   public PropertyClassloaderMetaDataDeployer()
+   {
+      super(ClassLoaderMetaData.class);
+      setSuffix("-clmd.properties");
+   }
+
+   protected ClassLoaderMetaData parse(VFSDeploymentUnit unit, VirtualFile file, ClassLoaderMetaData clmd) throws Exception
+   {
+      Properties properties = new Properties();
+      InputStream inputStream = file.openStream();
+      try
+      {
+         properties.load(inputStream);
+      }
+      finally
+      {
+         inputStream.close();
+      }
+      ClassLoaderMetaData metaData = new ClassLoaderMetaData();
+      metaData.setName(unit.getName());
+      metaData.setDomain(properties.getProperty("domain", unit.getName()));
+      metaData.setParentDomain(properties.getProperty("parent_domain"));
+      metaData.setCapabilities(getCapabilities(properties));
+      List<Requirement> requirements = getRequirements(properties);
+      metaData.setRequirements(requirements);
+      metaData.setImportAll(requirements == null || requirements.isEmpty());
+      return metaData;
+   }
+
+   protected List<Capability> getCapabilities(Properties properties)
+   {
+      List<Capability> list = new ArrayList<Capability>();
+      String capabilities = properties.getProperty("capabilities");
+      if (capabilities != null)
+      {
+         String[] split = capabilities.split("\\|");
+         for(String c : split)
+         {
+            String[] pv = c.split(":");
+            String pckg = pv[0];
+            Version version = pv.length > 1 ? VersionImpl.parseVersion(pv[1]) : Version.DEFAULT_VERSION;
+            list.add(new PackageCapabilityImpl(pckg, version));
+         }
+      }
+      return list;
+   }
+
+   protected List<Requirement> getRequirements(Properties properties)
+   {
+      List<Requirement> list = new ArrayList<Requirement>();
+      String requirements = properties.getProperty("requirements");
+      if (requirements != null)
+      {
+         String[] split = requirements.split("\\|");
+         for(String c : split)
+         {
+            String[] pv = c.split(":");
+            String pckg = pv[0];
+            VersionRange range = VersionRange.ALL_VERSIONS;
+            if (pv.length > 1)
+            {
+               String[] vr = pv[1].split(",");
+               Version low = VersionImpl.parseVersion(vr[0].substring(1));
+               Version high = VersionImpl.parseVersion(vr[1].substring(0, vr[1].length() - 1));
+               range = new VersionRange(low, vr[0].charAt(0) == '[', high, vr[1].charAt(vr[1].length() - 1) == ']');
+            }
+            list.add(new RequirePackageImpl(pckg, range));
+         }
+      }
+      return list;
+   }
+}

Added: projects/demos/foo/foo.iml
===================================================================
--- projects/demos/foo/foo.iml	                        (rev 0)
+++ projects/demos/foo/foo.iml	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<module version="4" relativePaths="true" type="JAVA_MODULE">
+  <component name="BuildJarSettings">
+    <containerInfo>
+      <containerElement type="module" name="foo">
+        <attribute name="method" value="1" />
+        <attribute name="URI" value="/" />
+      </containerElement>
+    </containerInfo>
+    <setting name="jarUrl" value="file://$MODULE_DIR$/../boot/work/foo.jar" />
+    <setting name="buildJar" value="true" />
+    <setting name="mainClass" value="" />
+  </component>
+  <component name="DependecySynchronizer" />
+  <component name="ModuleRootManager" />
+  <component name="NewModuleRootManager" inherit-compiler-output="true">
+    <exclude-output />
+    <content url="file://$MODULE_DIR$">
+      <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
+    </content>
+    <orderEntry type="inheritedJdk" />
+    <orderEntry type="sourceFolder" forTests="false" />
+    <orderEntry type="module" module-name="bootstrap" exported="" />
+    <orderEntry type="module" module-name="acme1" />
+    <orderEntry type="module" module-name="acme2" />
+    <orderEntryProperties />
+  </component>
+</module>
+

Added: projects/demos/foo/src/META-INF/foo-beans.xml
===================================================================
--- projects/demos/foo/src/META-INF/foo-beans.xml	                        (rev 0)
+++ projects/demos/foo/src/META-INF/foo-beans.xml	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+   <bean name="FooBarService" class="org.jboss.foo.FooBarService">
+      <property name="alesService"><inject/></property>
+      <property name="scottService"><inject/></property>
+   </bean>
+
+</deployment>

Added: projects/demos/foo/src/META-INF/foo-clmd.properties
===================================================================
--- projects/demos/foo/src/META-INF/foo-clmd.properties	                        (rev 0)
+++ projects/demos/foo/src/META-INF/foo-clmd.properties	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,3 @@
+domain=FooBarDomain
+requirements=org.jboss.acme.ales:[1,2)|org.jboss.acme.scott:[2,3)
+capabilities=org.jboss.foo

Added: projects/demos/foo/src/org/jboss/foo/FooBarService.java
===================================================================
--- projects/demos/foo/src/org/jboss/foo/FooBarService.java	                        (rev 0)
+++ projects/demos/foo/src/org/jboss/foo/FooBarService.java	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,61 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* 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.foo;
+
+import org.jboss.acme.ales.AlesService;
+import org.jboss.acme.scott.ScottService;
+
+/**
+ * @author <a href="mailto:ales.justin at jboss.com">Ales Justin</a>
+ */
+public class FooBarService
+{
+   private AlesService alesService;
+   private ScottService scottService;
+
+   public void setAlesService(AlesService alesService)
+   {
+      this.alesService = alesService;
+   }
+
+   public void setScottService(ScottService scottService)
+   {
+      this.scottService = scottService;
+   }
+
+   public void create()
+   {
+      if (alesService == null)
+         throw new IllegalArgumentException("Ales service is null.");
+      if (scottService == null)
+         throw new IllegalArgumentException("Scott service is null.");
+   }
+
+   public void start()
+   {
+      System.out.println("Ales's free time activity: ");
+      alesService.useFreeTime();
+      System.out.println("-------------------------");
+      System.out.println("Scott's snow time activity: ");
+      scottService.snowTime();
+   }
+}

Added: projects/demos/osgi.ipr
===================================================================
--- projects/demos/osgi.ipr	                        (rev 0)
+++ projects/demos/osgi.ipr	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,352 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4" relativePaths="false">
+  <component name="AntConfiguration">
+    <defaultAnt bundledAnt="true" />
+  </component>
+  <component name="BuildJarProjectSettings">
+    <option name="BUILD_JARS_ON_MAKE" value="false" />
+  </component>
+  <component name="CodeStyleProjectProfileManger">
+    <option name="PROJECT_PROFILE" />
+    <option name="USE_PROJECT_LEVEL_SETTINGS" value="false" />
+  </component>
+  <component name="CodeStyleSettingsManager">
+    <option name="PER_PROJECT_SETTINGS" />
+    <option name="USE_PER_PROJECT_SETTINGS" value="false" />
+  </component>
+  <component name="CompilerConfiguration">
+    <option name="DEFAULT_COMPILER" value="Javac" />
+    <option name="DEPLOY_AFTER_MAKE" value="0" />
+    <resourceExtensions>
+      <entry name=".+\.(properties|xml|html|dtd|tld)" />
+      <entry name=".+\.(gif|png|jpeg|jpg)" />
+    </resourceExtensions>
+    <wildcardResourcePatterns>
+      <entry name="?*.properties" />
+      <entry name="?*.xml" />
+      <entry name="?*.gif" />
+      <entry name="?*.png" />
+      <entry name="?*.jpeg" />
+      <entry name="?*.jpg" />
+      <entry name="?*.html" />
+      <entry name="?*.dtd" />
+      <entry name="?*.tld" />
+    </wildcardResourcePatterns>
+  </component>
+  <component name="DataSourceManagerImpl" />
+  <component name="DependenciesAnalyzeManager">
+    <option name="myForwardDirection" value="false" />
+  </component>
+  <component name="DependencyValidationManager" />
+  <component name="EclipseCompilerSettings">
+    <option name="DEBUGGING_INFO" value="true" />
+    <option name="GENERATE_NO_WARNINGS" value="true" />
+    <option name="DEPRECATION" value="false" />
+    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+    <option name="MAXIMUM_HEAP_SIZE" value="128" />
+  </component>
+  <component name="EclipseEmbeddedCompilerSettings">
+    <option name="DEBUGGING_INFO" value="true" />
+    <option name="GENERATE_NO_WARNINGS" value="true" />
+    <option name="DEPRECATION" value="false" />
+    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+    <option name="MAXIMUM_HEAP_SIZE" value="128" />
+  </component>
+  <component name="EntryPointsManager">
+    <entry_points />
+  </component>
+  <component name="ExportToHTMLSettings">
+    <option name="PRINT_LINE_NUMBERS" value="false" />
+    <option name="OPEN_IN_BROWSER" value="false" />
+    <option name="OUTPUT_DIRECTORY" />
+  </component>
+  <component name="GUI Designer component loader factory" />
+  <component name="IdProvider" IDEtalkID="ED1D880B207A6A31E339B3CFD9BB6FC2" />
+  <component name="InspectionProjectProfileManager">
+    <option name="PROJECT_PROFILE" value="Project Default" />
+    <option name="USE_PROJECT_LEVEL_SETTINGS" value="false" />
+    <scopes />
+    <profiles>
+      <profile version="1.0" is_locked="false">
+        <option name="myName" value="Project Default" />
+        <option name="myLocal" value="false" />
+        <used_levels>
+          <error>
+            <option name="myName" value="ERROR" />
+            <option name="myVal" value="400" />
+          </error>
+          <warning>
+            <option name="myName" value="WARNING" />
+            <option name="myVal" value="300" />
+          </warning>
+          <information>
+            <option name="myName" value="INFO" />
+            <option name="myVal" value="200" />
+          </information>
+          <server>
+            <option name="myName" value="SERVER PROBLEM" />
+            <option name="myVal" value="100" />
+          </server>
+        </used_levels>
+        <inspection_tool class="PointlessBooleanExpression" level="WARNING" enabled="false">
+          <option name="m_ignoreExpressionsContainingConstants" value="false" />
+        </inspection_tool>
+        <inspection_tool class="PersistenceDataSourceORMInspection" level="ERROR" enabled="false" />
+        <inspection_tool class="JavadocReference" level="INFO" enabled="true" />
+        <inspection_tool class="JavaDoc" level="INFO" enabled="true">
+          <option name="TOP_LEVEL_CLASS_OPTIONS">
+            <value>
+              <option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
+              <option name="REQUIRED_TAGS" value="" />
+            </value>
+          </option>
+          <option name="INNER_CLASS_OPTIONS">
+            <value>
+              <option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
+              <option name="REQUIRED_TAGS" value="" />
+            </value>
+          </option>
+          <option name="METHOD_OPTIONS">
+            <value>
+              <option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
+              <option name="REQUIRED_TAGS" value="@return at param@throws or @exception" />
+            </value>
+          </option>
+          <option name="FIELD_OPTIONS">
+            <value>
+              <option name="ACCESS_JAVADOC_REQUIRED_FOR" value="none" />
+              <option name="REQUIRED_TAGS" value="" />
+            </value>
+          </option>
+          <option name="IGNORE_DEPRECATED" value="false" />
+          <option name="IGNORE_JAVADOC_PERIOD" value="true" />
+          <option name="myAdditionalJavadocTags" value="" />
+        </inspection_tool>
+      </profile>
+    </profiles>
+  </component>
+  <component name="JavacSettings">
+    <option name="DEBUGGING_INFO" value="true" />
+    <option name="GENERATE_NO_WARNINGS" value="false" />
+    <option name="DEPRECATION" value="true" />
+    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+    <option name="MAXIMUM_HEAP_SIZE" value="128" />
+  </component>
+  <component name="JavadocGenerationManager">
+    <option name="OUTPUT_DIRECTORY" />
+    <option name="OPTION_SCOPE" value="protected" />
+    <option name="OPTION_HIERARCHY" value="true" />
+    <option name="OPTION_NAVIGATOR" value="true" />
+    <option name="OPTION_INDEX" value="true" />
+    <option name="OPTION_SEPARATE_INDEX" value="true" />
+    <option name="OPTION_DOCUMENT_TAG_USE" value="false" />
+    <option name="OPTION_DOCUMENT_TAG_AUTHOR" value="false" />
+    <option name="OPTION_DOCUMENT_TAG_VERSION" value="false" />
+    <option name="OPTION_DOCUMENT_TAG_DEPRECATED" value="true" />
+    <option name="OPTION_DEPRECATED_LIST" value="true" />
+    <option name="OTHER_OPTIONS" value="" />
+    <option name="HEAP_SIZE" />
+    <option name="LOCALE" />
+    <option name="OPEN_IN_BROWSER" value="true" />
+  </component>
+  <component name="JikesSettings">
+    <option name="JIKES_PATH" value="" />
+    <option name="DEBUGGING_INFO" value="true" />
+    <option name="DEPRECATION" value="true" />
+    <option name="GENERATE_NO_WARNINGS" value="false" />
+    <option name="IS_EMACS_ERRORS_MODE" value="true" />
+    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+  </component>
+  <component name="LogConsolePreferences">
+    <option name="FILTER_ERRORS" value="false" />
+    <option name="FILTER_WARNINGS" value="false" />
+    <option name="FILTER_INFO" value="true" />
+    <option name="CUSTOM_FILTER" />
+  </component>
+  <component name="MavenBuildProjectComponent">
+    <option name="mavenExecutable" value="" />
+    <option name="Settings File" value="" />
+    <option name="mavenCommandLineParams" value="" />
+    <option name="vmOptions" value="" />
+    <option name="useMavenEmbedder" value="false" />
+    <option name="useFilter" value="false" />
+    <option name="Batch Mode" value="false" />
+    <option name="Check Plugin Updates" value="false" />
+    <option name="Debug" value="false" />
+    <option name="Errors" value="false" />
+    <option name="Fail At End" value="false" />
+    <option name="Fail Fast" value="false" />
+    <option name="Fail Never" value="false" />
+    <option name="Lax Checksums" value="false" />
+    <option name="No Plugin Registry" value="false" />
+    <option name="No Plugin Updates" value="false" />
+    <option name="Non Recursive" value="false" />
+    <option name="Offline" value="false" />
+    <option name="Reactor" value="false" />
+    <option name="Strict Checksums" value="false" />
+    <option name="Update Plugins" value="false" />
+    <option name="Update Snapshots" value="false" />
+    <option name="Skip Tests" value="false" />
+    <pom-list />
+  </component>
+  <component name="Palette2">
+    <group name="Swing">
+      <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
+      </item>
+      <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
+      </item>
+      <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
+        <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
+        <initial-values>
+          <property name="text" value="Button" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="RadioButton" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="CheckBox" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="Label" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+          <preferred-size width="200" height="200" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+          <preferred-size width="200" height="200" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
+      </item>
+      <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
+          <preferred-size width="-1" height="20" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
+      </item>
+      <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
+      </item>
+    </group>
+  </component>
+  <component name="ProjectModuleManager">
+    <modules>
+      <module fileurl="file://$PROJECT_DIR$/acme1/acme1.iml" filepath="$PROJECT_DIR$/acme1/acme1.iml" />
+      <module fileurl="file://$PROJECT_DIR$/acme2/acme2.iml" filepath="$PROJECT_DIR$/acme2/acme2.iml" />
+      <module fileurl="file://$PROJECT_DIR$/bootstrap/bootstrap.iml" filepath="$PROJECT_DIR$/bootstrap/bootstrap.iml" />
+      <module fileurl="file://$PROJECT_DIR$/foo/foo.iml" filepath="$PROJECT_DIR$/foo/foo.iml" />
+    </modules>
+  </component>
+  <component name="ProjectRootManager" version="2" assert-keyword="true" jdk-15="true" project-jdk-name="1.5" project-jdk-type="JavaSDK">
+    <output url="file://$PROJECT_DIR$/classes" />
+  </component>
+  <component name="ProjectRunConfigurationManager" />
+  <component name="RmicSettings">
+    <option name="IS_EANABLED" value="false" />
+    <option name="DEBUGGING_INFO" value="true" />
+    <option name="GENERATE_NO_WARNINGS" value="false" />
+    <option name="GENERATE_IIOP_STUBS" value="false" />
+    <option name="ADDITIONAL_OPTIONS_STRING" value="" />
+  </component>
+  <component name="StarteamVcsAdapter" />
+  <component name="TeamCityRootDirectoryHolder">
+    <option name="myRelativeRootDirectory" />
+  </component>
+  <component name="VssVcs" />
+  <component name="com.intellij.jsf.UserDefinedFacesConfigs">
+    <option name="USER_DEFINED_CONFIGS">
+      <value>
+        <list size="0" />
+      </value>
+    </option>
+  </component>
+  <component name="libraryTable" />
+  <component name="uidesigner-configuration">
+    <option name="INSTRUMENT_CLASSES" value="true" />
+    <option name="COPY_FORMS_RUNTIME_TO_OUTPUT" value="true" />
+    <option name="DEFAULT_LAYOUT_MANAGER" value="GridLayoutManager" />
+  </component>
+  <UsedPathMacros />
+</project>
+

Added: projects/demos/osgi.iws
===================================================================
--- projects/demos/osgi.iws	                        (rev 0)
+++ projects/demos/osgi.iws	2008-02-07 11:38:00 UTC (rev 69692)
@@ -0,0 +1,917 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4" relativePaths="false">
+  <component name="BookmarkManager" />
+  <component name="BuildServerSettings">
+    <option name="HISTORY" value="" />
+    <option name="LOGIN" value="" />
+    <option name="SERVER_URL" value="http://buildserver" />
+    <option name="PASSWORD" />
+    <option name="REMEMBER_ME" value="false" />
+    <option name="INSPECTIONS_BUILD_TYPE_NAME" />
+    <option name="INSPECTIONS_PROJECT_ID" />
+    <option name="DUPLICATES_BUILD_TYPE_NAME" />
+    <option name="DUPLICATES_PROJECT_ID" />
+    <option name="PERFORM_COMMIT" value="true" />
+    <option name="REQUEST_CONFIRMATON" value="false" />
+    <option name="STATUS_DIALOG_SPLITTER_PROPORTION" value="0.8" />
+    <option name="FILTER_BY_USER" value="true" />
+    <option name="FILTER_REMOTE_RUN_TREE" value="false" />
+    <option name="FILTER_BY_STATUS" value="false" />
+    <option name="SHOW_CLOSE_PROMPT" value="true" />
+  </component>
+  <component name="ChangeBrowserSettings">
+    <option name="MAIN_SPLITTER_PROPORTION" value="0.3" />
+    <option name="MESSAGES_SPLITTER_PROPORTION" value="0.8" />
+    <option name="USE_DATE_BEFORE_FILTER" value="false" />
+    <option name="USE_DATE_AFTER_FILTER" value="false" />
+    <option name="USE_CHANGE_BEFORE_FILTER" value="false" />
+    <option name="USE_CHANGE_AFTER_FILTER" value="false" />
+    <option name="DATE_BEFORE" value="" />
+    <option name="DATE_AFTER" value="" />
+    <option name="CHANGE_BEFORE" value="" />
+    <option name="CHANGE_AFTER" value="" />
+    <option name="USE_USER_FILTER" value="false" />
+    <option name="USER" value="" />
+  </component>
+  <component name="ChangeListManager">
+    <list default="true" name="Default" comment="" />
+  </component>
+  <component name="ChangeListSynchronizer" />
+  <component name="ChangesViewManager" flattened_view="true" />
+  <component name="CheckinPanelState" />
+  <component name="Commander">
+    <leftPanel />
+    <rightPanel />
+    <splitter proportion="0.5" />
+  </component>
+  <component name="CompilerWorkspaceConfiguration">
+    <option name="COMPILE_IN_BACKGROUND" value="false" />
+    <option name="AUTO_SHOW_ERRORS_IN_EDITOR" value="true" />
+    <option name="CLOSE_MESSAGE_VIEW_IF_SUCCESS" value="true" />
+    <option name="COMPILE_DEPENDENT_FILES" value="false" />
+    <option name="CLEAR_OUTPUT_DIRECTORY" value="false" />
+    <option name="ASSERT_NOT_NULL" value="true" />
+  </component>
+  <component name="CoverageDataManager" />
+  <component name="Cvs2Configuration">
+    <option name="PRUNE_EMPTY_DIRECTORIES" value="true" />
+    <option name="MERGING_MODE" value="0" />
+    <option name="MERGE_WITH_BRANCH1_NAME" value="HEAD" />
+    <option name="MERGE_WITH_BRANCH2_NAME" value="HEAD" />
+    <option name="RESET_STICKY" value="false" />
+    <option name="CREATE_NEW_DIRECTORIES" value="true" />
+    <option name="DEFAULT_TEXT_FILE_SUBSTITUTION" value="kv" />
+    <option name="PROCESS_UNKNOWN_FILES" value="false" />
+    <option name="PROCESS_DELETED_FILES" value="false" />
+    <option name="PROCESS_IGNORED_FILES" value="false" />
+    <option name="RESERVED_EDIT" value="false" />
+    <option name="CHECKOUT_DATE_OR_REVISION_SETTINGS">
+      <value>
+        <option name="BRANCH" value="" />
+        <option name="DATE" value="" />
+        <option name="USE_BRANCH" value="false" />
+        <option name="USE_DATE" value="false" />
+      </value>
+    </option>
+    <option name="UPDATE_DATE_OR_REVISION_SETTINGS">
+      <value>
+        <option name="BRANCH" value="" />
+        <option name="DATE" value="" />
+        <option name="USE_BRANCH" value="false" />
+        <option name="USE_DATE" value="false" />
+      </value>
+    </option>
+    <option name="SHOW_CHANGES_REVISION_SETTINGS">
+      <value>
+        <option name="BRANCH" value="" />
+        <option name="DATE" value="" />
+        <option name="USE_BRANCH" value="false" />
+        <option name="USE_DATE" value="false" />
+      </value>
+    </option>
+    <option name="SHOW_OUTPUT" value="false" />
+    <option name="ADD_WATCH_INDEX" value="0" />
+    <option name="REMOVE_WATCH_INDEX" value="0" />
+    <option name="UPDATE_KEYWORD_SUBSTITUTION" />
+    <option name="MAKE_NEW_FILES_READONLY" value="false" />
+    <option name="SHOW_CORRUPTED_PROJECT_FILES" value="0" />
+    <option name="TAG_AFTER_PROJECT_COMMIT" value="false" />
+    <option name="OVERRIDE_EXISTING_TAG_FOR_PROJECT" value="true" />
+    <option name="TAG_AFTER_PROJECT_COMMIT_NAME" value="" />
+    <option name="CLEAN_COPY" value="false" />
+  </component>
+  <component name="DaemonCodeAnalyzer">
+    <disable_hints />
+  </component>
+  <component name="DebuggerManager">
+    <line_breakpoints>
+      <breakpoint url="jar://C:/projects/microcontainer/classloader/target/jboss-classloader-sources.jar!/org/jboss/classloader/spi/base/BaseClassLoaderDomain.java" line="742" class="org.jboss.classloader.spi.base.BaseClassLoaderDomain" package="org.jboss.classloader.spi.base">
+        <option name="ENABLED" value="true" />
+        <option name="SUSPEND_POLICY" value="SuspendAll" />
+        <option name="LOG_ENABLED" value="false" />
+        <option name="LOG_EXPRESSION_ENABLED" value="false" />
+        <option name="COUNT_FILTER_ENABLED" value="false" />
+        <option name="COUNT_FILTER" value="0" />
+        <option name="CONDITION_ENABLED" value="false" />
+        <option name="CLASS_FILTERS_ENABLED" value="false" />
+        <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+        <option name="CONDITION" value="" />
+        <option name="LOG_MESSAGE" value="" />
+      </breakpoint>
+      <breakpoint url="jar://C:/projects/microcontainer/classloader/target/jboss-classloader-sources.jar!/org/jboss/classloader/spi/base/BaseClassLoaderDomain.java" line="253" class="org.jboss.classloader.spi.base.BaseClassLoaderDomain" package="org.jboss.classloader.spi.base">
+        <option name="ENABLED" value="true" />
+        <option name="SUSPEND_POLICY" value="SuspendAll" />
+        <option name="LOG_ENABLED" value="false" />
+        <option name="LOG_EXPRESSION_ENABLED" value="false" />
+        <option name="COUNT_FILTER_ENABLED" value="false" />
+        <option name="COUNT_FILTER" value="0" />
+        <option name="CONDITION_ENABLED" value="false" />
+        <option name="CLASS_FILTERS_ENABLED" value="false" />
+        <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+        <option name="CONDITION" value="" />
+        <option name="LOG_MESSAGE" value="" />
+      </breakpoint>
+    </line_breakpoints>
+    <breakpoint_any>
+      <breakpoint>
+        <option name="NOTIFY_CAUGHT" value="true" />
+        <option name="NOTIFY_UNCAUGHT" value="true" />
+        <option name="ENABLED" value="false" />
+        <option name="SUSPEND_POLICY" value="SuspendAll" />
+        <option name="LOG_ENABLED" value="false" />
+        <option name="LOG_EXPRESSION_ENABLED" value="false" />
+        <option name="COUNT_FILTER_ENABLED" value="false" />
+        <option name="COUNT_FILTER" value="0" />
+        <option name="CONDITION_ENABLED" value="false" />
+        <option name="CLASS_FILTERS_ENABLED" value="false" />
+        <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+        <option name="CONDITION" value="" />
+        <option name="LOG_MESSAGE" value="" />
+      </breakpoint>
+      <breakpoint>
+        <option name="NOTIFY_CAUGHT" value="true" />
+        <option name="NOTIFY_UNCAUGHT" value="true" />
+        <option name="ENABLED" value="false" />
+        <option name="SUSPEND_POLICY" value="SuspendAll" />
+        <option name="LOG_ENABLED" value="false" />
+        <option name="LOG_EXPRESSION_ENABLED" value="false" />
+        <option name="COUNT_FILTER_ENABLED" value="false" />
+        <option name="COUNT_FILTER" value="0" />
+        <option name="CONDITION_ENABLED" value="false" />
+        <option name="CLASS_FILTERS_ENABLED" value="false" />
+        <option name="INSTANCE_FILTERS_ENABLED" value="false" />
+        <option name="CONDITION" value="" />
+        <option name="LOG_MESSAGE" value="" />
+      </breakpoint>
+    </breakpoint_any>
+    <breakpoint_rules />
+    <ui_properties />
+  </component>
+  <component name="ErrorTreeViewConfiguration">
+    <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
+    <option name="HIDE_WARNINGS" value="false" />
+  </component>
+  <component name="FavoritesManager">
+    <favorites_list name="osgi" />
+  </component>
+  <component name="FavoritesProjectViewPane">
+    <subPane subId="osgi">
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" />
+          <option name="myItemType" value="com.intellij.ide.favoritesTreeView.FavoritesTreeNodeDescriptor" />
+        </PATH_ELEMENT>
+      </PATH>
+    </subPane>
+  </component>
+  <component name="FileEditorManager">
+    <leaf>
+      <file leaf-file-name="foo-clmd.properties" pinned="false" current="true" current-in-tab="true">
+        <entry file="file://$PROJECT_DIR$/foo/src/META-INF/foo-clmd.properties">
+          <provider selected="true" editor-type-id="text-editor">
+            <state line="1" column="25" selection-start="45" selection-end="45" vertical-scroll-proportion="0.020310633">
+              <folding />
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file leaf-file-name="acme-clmd.properties" pinned="false" current="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/acme1/src/META-INF/acme-clmd.properties">
+          <provider selected="true" editor-type-id="text-editor">
+            <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+              <folding />
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file leaf-file-name="acme-clmd.properties" pinned="false" current="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/acme2/src/META-INF/acme-clmd.properties">
+          <provider selected="true" editor-type-id="text-editor">
+            <state line="1" column="0" selection-start="20" selection-end="20" vertical-scroll-proportion="0.020310633">
+              <folding />
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file leaf-file-name="AlesServiceImpl.java" pinned="false" current="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/acme1/src/org/jboss/acme/ales/impl/AlesServiceImpl.java">
+          <provider selected="true" editor-type-id="text-editor">
+            <state line="30" column="13" selection-start="1235" selection-end="1235" vertical-scroll-proportion="0.16248506">
+              <folding />
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file leaf-file-name="ScottServiceImpl.java" pinned="false" current="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/acme1/src/org/jboss/acme/scott/impl/ScottServiceImpl.java">
+          <provider selected="true" editor-type-id="text-editor">
+            <state line="30" column="13" selection-start="1238" selection-end="1238" vertical-scroll-proportion="0.16248506">
+              <folding />
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file leaf-file-name="AlesServiceImpl.java" pinned="false" current="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/acme2/src/org/jboss/acme/ales/impl/AlesServiceImpl.java">
+          <provider selected="true" editor-type-id="text-editor">
+            <state line="30" column="13" selection-start="1235" selection-end="1235" vertical-scroll-proportion="0.16248506">
+              <folding />
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file leaf-file-name="ScottServiceImpl.java" pinned="false" current="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/acme2/src/org/jboss/acme/scott/impl/ScottServiceImpl.java">
+          <provider selected="true" editor-type-id="text-editor">
+            <state line="30" column="13" selection-start="1238" selection-end="1238" vertical-scroll-proportion="0.16248506">
+              <folding />
+            </state>
+          </provider>
+        </entry>
+      </file>
+      <file leaf-file-name="FooBarService.java" pinned="false" current="false" current-in-tab="false">
+        <entry file="file://$PROJECT_DIR$/foo/src/org/jboss/foo/FooBarService.java">
+          <provider selected="true" editor-type-id="text-editor">
+            <state line="29" column="13" selection-start="1188" selection-end="1188" vertical-scroll-proportion="0.16248506">
+              <folding />
+            </state>
+          </provider>
+        </entry>
+      </file>
+    </leaf>
+  </component>
+  <component name="FindManager">
+    <FindUsagesManager>
+      <setting name="OPEN_NEW_TAB" value="false" />
+    </FindUsagesManager>
+  </component>
+  <component name="HierarchyBrowserManager">
+    <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
+    <option name="SORT_ALPHABETICALLY" value="false" />
+    <option name="HIDE_CLASSES_WHERE_METHOD_NOT_IMPLEMENTED" value="false" />
+  </component>
+  <component name="InspectionManager">
+    <option name="AUTOSCROLL_TO_SOURCE" value="false" />
+    <option name="SPLITTER_PROPORTION" value="0.5" />
+    <option name="GROUP_BY_SEVERITY" value="false" />
+    <option name="FILTER_RESOLVED_ITEMS" value="true" />
+    <option name="ANALYZE_TEST_SOURCES" value="true" />
+    <option name="SHOW_DIFF_WITH_PREVIOUS_RUN" value="false" />
+    <option name="SCOPE_TYPE" value="1" />
+    <option name="CUSTOM_SCOPE_NAME" value="" />
+    <option name="SHOW_ONLY_DIFF" value="false" />
+    <option name="myCurrentProfileName" value="Default" />
+  </component>
+  <component name="InspectionPassRegistrar">
+    <option name="LOAD_NEW_PROBLEMS" value="true" />
+  </component>
+  <component name="J2EEProjectPane" />
+  <component name="JspContextManager" />
+  <component name="ModuleEditorState">
+    <option name="LAST_EDITED_MODULE_NAME" />
+    <option name="LAST_EDITED_TAB_NAME" />
+  </component>
+  <component name="NamedScopeManager" />
+  <component name="PackagesPane">
+    <subPane>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="osgi.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PackageViewProjectNode" />
+        </PATH_ELEMENT>
+      </PATH>
+    </subPane>
+  </component>
+  <component name="PerforceChangeBrowserSettings">
+    <option name="USE_CLIENT_FILTER" value="true" />
+    <option name="CLIENT" value="" />
+  </component>
+  <component name="PerforceDirect.Settings">
+    <option name="useP4CONFIG" value="true" />
+    <option name="port" value="&lt;perforce_server&gt;:1666" />
+    <option name="client" value="" />
+    <option name="user" value="" />
+    <option name="passwd" value="" />
+    <option name="showCmds" value="false" />
+    <option name="useNativeApi" value="true" />
+    <option name="pathToExec" value="p4" />
+    <option name="useCustomPathToExec" value="false" />
+    <option name="SYNC_FORCE" value="false" />
+    <option name="SYNC_RUN_RESOLVE" value="true" />
+    <option name="REVERT_UNCHANGED_FILES" value="true" />
+    <option name="CHARSET" value="none" />
+    <option name="SHOW_BRANCHES_HISTORY" value="true" />
+    <option name="ENABLED" value="true" />
+    <option name="USE_LOGIN" value="false" />
+    <option name="LOGIN_SILENTLY" value="false" />
+    <option name="INTEGRATE_RUN_RESOLVE" value="true" />
+    <option name="INTEGRATE_REVERT_UNCHANGED" value="true" />
+    <option name="SERVER_TIMEOUT" value="20000" />
+  </component>
+  <component name="ProjectLevelMessagesProcessor" />
+  <component name="ProjectLevelVcsManager">
+    <OptionsSetting value="true" id="Add" />
+    <OptionsSetting value="true" id="Remove" />
+    <OptionsSetting value="true" id="Checkin" />
+    <OptionsSetting value="true" id="Checkout" />
+    <OptionsSetting value="true" id="Update" />
+    <OptionsSetting value="true" id="Status" />
+    <OptionsSetting value="true" id="Edit" />
+    <OptionsSetting value="true" id="Undo Check Out" />
+    <OptionsSetting value="true" id="Compare with SourceSafe Version" />
+    <OptionsSetting value="true" id="Get Latest Version" />
+    <ConfirmationsSetting value="0" id="Add" />
+    <ConfirmationsSetting value="0" id="Remove" />
+  </component>
+  <component name="ProjectPane">
+    <subPane>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="osgi.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="foo" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+        </PATH_ELEMENT>
+      </PATH>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="osgi.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+        </PATH_ELEMENT>
+      </PATH>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="osgi.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="acme2" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+        </PATH_ELEMENT>
+      </PATH>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="osgi.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="acme2" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\projects\demos\osgi\acme2" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+      </PATH>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="osgi.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="acme2" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\projects\demos\osgi\acme2" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\projects\demos\osgi\acme2\src" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+      </PATH>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="osgi.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="acme2" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\projects\demos\osgi\acme2" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\projects\demos\osgi\acme2\src" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\projects\demos\osgi\acme2\src\META-INF" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+      </PATH>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="osgi.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="acme1" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+        </PATH_ELEMENT>
+      </PATH>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="osgi.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="acme1" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\projects\demos\osgi\acme1" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+      </PATH>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="osgi.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="acme1" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\projects\demos\osgi\acme1" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\projects\demos\osgi\acme1\src" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+      </PATH>
+      <PATH>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="osgi.ipr" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="acme1" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewModuleNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\projects\demos\osgi\acme1" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\projects\demos\osgi\acme1\src" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+        <PATH_ELEMENT>
+          <option name="myItemId" value="PsiDirectory:C:\projects\demos\osgi\acme1\src\META-INF" />
+          <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
+        </PATH_ELEMENT>
+      </PATH>
+    </subPane>
+  </component>
+  <component name="ProjectReloadState">
+    <option name="STATE" value="0" />
+  </component>
+  <component name="ProjectView">
+    <navigator currentView="ProjectPane" proportions="0.16666667" version="1" splitterProportion="0.5">
+      <flattenPackages />
+      <showMembers />
+      <showModules />
+      <showLibraryContents />
+      <hideEmptyPackages ProjectPane="false" />
+      <abbreviatePackageNames />
+      <showStructure ProjectPane="false" PackagesPane="false" Favorites="false" />
+      <autoscrollToSource />
+      <autoscrollFromSource />
+      <sortByType />
+    </navigator>
+  </component>
+  <component name="PropertiesComponent">
+    <property name="GoToClass.includeJavaFiles" value="false" />
+    <property name="MemberChooser.copyJavadoc" value="false" />
+    <property name="GoToClass.includeLibraries" value="false" />
+    <property name="MemberChooser.showClasses" value="true" />
+    <property name="MemberChooser.sorted" value="false" />
+    <property name="RunManagerConfig.compileBeforeRunning" value="true" />
+    <property name="GoToFile.includeJavaFiles" value="false" />
+    <property name="GoToClass.toSaveIncludeLibraries" value="false" />
+    <property name="RunManagerConfig.showSettingsBeforeRunnig" value="false" />
+  </component>
+  <component name="ReadonlyStatusHandler">
+    <option name="SHOW_DIALOG" value="true" />
+  </component>
+  <component name="RecentsManager">
+    <key name="CopyClassDialog.RECENTS_KEY">
+      <recent name="org.jboss.system.classloader" />
+      <recent name="org.jboss.system" />
+    </key>
+    <key name="MoveClassesOrPackagesDialog.RECENTS_KEY">
+      <recent name="org.jboss.system.deployers" />
+      <recent name="org.jboss.system.classloader" />
+    </key>
+  </component>
+  <component name="RestoreUpdateTree" />
+  <component name="RunManager" selected="Application.Main">
+    <configuration default="true" type="JUnit" factoryName="JUnit" enabled="false" merge="false">
+      <module name="" />
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+      <option name="ALTERNATIVE_JRE_PATH" />
+      <option name="PACKAGE_NAME" />
+      <option name="MAIN_CLASS_NAME" />
+      <option name="METHOD_NAME" />
+      <option name="TEST_OBJECT" value="class" />
+      <option name="VM_PARAMETERS" />
+      <option name="PARAMETERS" />
+      <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
+      <option name="ADDITIONAL_CLASS_PATH" />
+      <option name="TEST_SEARCH_SCOPE">
+        <value defaultName="wholeProject" />
+      </option>
+      <method>
+        <option name="Make" value="true" />
+      </method>
+    </configuration>
+    <configuration default="true" type="Applet" factoryName="Applet">
+      <module name="" />
+      <option name="MAIN_CLASS_NAME" />
+      <option name="HTML_FILE_NAME" />
+      <option name="HTML_USED" value="false" />
+      <option name="WIDTH" value="400" />
+      <option name="HEIGHT" value="300" />
+      <option name="POLICY_FILE" value="C:/Program Files/JetBrains/IntelliJ IDEA 6.0/bin/appletviewer.policy" />
+      <option name="VM_PARAMETERS" />
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+      <option name="ALTERNATIVE_JRE_PATH" />
+    </configuration>
+    <configuration default="true" type="Remote" factoryName="Remote">
+      <option name="USE_SOCKET_TRANSPORT" value="true" />
+      <option name="SERVER_MODE" value="false" />
+      <option name="SHMEM_ADDRESS" value="javadebug" />
+      <option name="HOST" value="localhost" />
+      <option name="PORT" value="5005" />
+    </configuration>
+    <configuration default="true" type="Application" factoryName="Application" enabled="false" merge="false">
+      <option name="MAIN_CLASS_NAME" />
+      <option name="VM_PARAMETERS" />
+      <option name="PROGRAM_PARAMETERS" />
+      <option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+      <option name="ALTERNATIVE_JRE_PATH" />
+      <option name="ENABLE_SWING_INSPECTOR" value="false" />
+      <module name="" />
+    </configuration>
+    <configuration default="false" name="Main" type="Application" factoryName="Application" enabled="false" merge="false">
+      <option name="MAIN_CLASS_NAME" value="org.jboss.bootstrap.Main" />
+      <option name="VM_PARAMETERS" value="-Djboss.lib.url=C:\projects\jboss5\mc_trunk" />
+      <option name="PROGRAM_PARAMETERS" value="" />
+      <option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$" />
+      <option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
+      <option name="ALTERNATIVE_JRE_PATH" value="" />
+      <option name="ENABLE_SWING_INSPECTOR" value="false" />
+      <module name="bootstrap" />
+      <RunnerSettings RunnerId="Debug">
+        <option name="DEBUG_PORT" value="4420" />
+        <option name="TRANSPORT" value="0" />
+        <option name="LOCAL" value="true" />
+      </RunnerSettings>
+      <RunnerSettings RunnerId="JProfiler">
+        <option name="WINDOW" value="false" />
+        <option name="JVMPI" value="false" />
+        <option name="INTERPRETED" value="false" />
+      </RunnerSettings>
+      <RunnerSettings RunnerId="Run" />
+      <ConfigurationWrapper RunnerId="Debug" />
+      <ConfigurationWrapper RunnerId="Run" />
+      <method>
+        <option name="Make" value="true" />
+      </method>
+    </configuration>
+    <configuration name="&lt;template&gt;" type="WebApp" default="true" selected="false">
+      <Host>localhost</Host>
+      <Port>5050</Port>
+    </configuration>
+  </component>
+  <component name="ScopeViewComponent" />
+  <component name="SelectInManager" />
+  <component name="StarteamConfiguration">
+    <option name="SERVER" value="" />
+    <option name="PORT" value="49201" />
+    <option name="USER" value="" />
+    <option name="PASSWORD" value="" />
+    <option name="PROJECT" value="" />
+    <option name="VIEW" value="" />
+    <option name="ALTERNATIVE_WORKING_PATH" value="" />
+    <option name="LOCK_ON_CHECKOUT" value="false" />
+    <option name="UNLOCK_ON_CHECKIN" value="false" />
+  </component>
+  <component name="StructuralSearchPlugin" />
+  <component name="StructureViewFactory">
+    <option name="AUTOSCROLL_MODE" value="true" />
+    <option name="AUTOSCROLL_FROM_SOURCE" value="false" />
+    <option name="ACTIVE_ACTIONS" value="" />
+  </component>
+  <component name="Struts Assistant">
+    <option name="showInputs" value="true" />
+    <option name="resources">
+      <value>
+        <option name="strutsPath" />
+        <option name="strutsHelp" />
+      </value>
+    </option>
+    <option name="selectedTaglibs" />
+    <option name="selectedTaglibs" />
+    <option name="myStrutsValidationEnabled" value="true" />
+    <option name="myTilesValidationEnabled" value="true" />
+    <option name="myValidatorValidationEnabled" value="true" />
+    <option name="myReportErrorsAsWarnings" value="true" />
+  </component>
+  <component name="SvnChangesBrowserSettings">
+    <option name="USE_AUTHOR_FIELD" value="true" />
+    <option name="AUTHOR" value="" />
+    <option name="LOCATION" value="" />
+    <option name="USE_PROJECT_SETTINGS" value="true" />
+    <option name="USE_ALTERNATE_LOCATION" value="false" />
+  </component>
+  <component name="SvnConfiguration">
+    <option name="USER" value="" />
+    <option name="PASSWORD" value="" />
+    <option name="PROCESS_UNRESOLVED" value="false" />
+    <option name="LAST_MERGED_REVISION" />
+    <option name="UPDATE_RUN_STATUS" value="false" />
+    <option name="UPDATE_RECURSIVELY" value="true" />
+    <option name="MERGE_DRY_RUN" value="false" />
+    <configuration useDefault="false">C:\Documents and Settings\Ales\Application Data\Subversion</configuration>
+    <checkoutURL>https://svn.jboss.org/repos/log2log</checkoutURL>
+    <checkoutURL>https://svn.jboss.org/repos/repository.jboss.org/maven2/</checkoutURL>
+    <checkoutURL>http://anonsvn.labs.jboss.com/labs/jbossrules/trunk</checkoutURL>
+    <checkoutURL>https://svn.jboss.org/repos/sandbox/david.lloyd/remoting3/api-proto</checkoutURL>
+    <checkoutURL>http://google-guice.googlecode.com/svn/trunk/</checkoutURL>
+    <checkoutURL>https://svn.jboss.org/repos/hibernate/</checkoutURL>
+    <checkoutURL>https://svn.sourceforge.net/svnroot/springframework/spring-osgi</checkoutURL>
+    <checkoutURL>https://svn.jboss.org/repos/common</checkoutURL>
+    <checkoutURL>https://svn.jboss.org/repos/jbossas/projects/test</checkoutURL>
+    <checkoutURL>https://newscomposer.googlecode.com/svn/trunk/</checkoutURL>
+    <checkoutURL>https://svn.jboss.org/repos/jbossas/projects/osgi</checkoutURL>
+    <checkoutURL>https://svn.jboss.org/repos/jbossas</checkoutURL>
+    <checkoutURL>https://svn.jboss.org/repos/jbossas/projects/microcontainer/</checkoutURL>
+    <upgradeMode>auto</upgradeMode>
+  </component>
+  <component name="TodoView" selected-index="0">
+    <todo-panel id="selected-file">
+      <are-packages-shown value="false" />
+      <are-modules-shown value="false" />
+      <flatten-packages value="false" />
+      <is-autoscroll-to-source value="true" />
+    </todo-panel>
+    <todo-panel id="all">
+      <are-packages-shown value="true" />
+      <are-modules-shown value="false" />
+      <flatten-packages value="false" />
+      <is-autoscroll-to-source value="true" />
+    </todo-panel>
+  </component>
+  <component name="ToolWindowManager">
+    <frame x="-4" y="-4" width="1288" height="1002" extended-state="7" />
+    <editor active="true" />
+    <layout>
+      <window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+      <window_info id="Maven-2 Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+      <window_info id="CVS" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+      <window_info id="IDEtalk" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+      <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="7" />
+      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.29845905" order="0" />
+      <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4608295" order="1" />
+      <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="1" />
+      <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32949308" order="8" />
+      <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" order="6" />
+      <window_info id="Module Dependencies" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+      <window_info id="Dependency Viewer" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+      <window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+      <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="1" />
+      <window_info id="TeamCity" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+      <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.53456223" order="2" />
+      <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="2" />
+      <window_info id="File View" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="3" />
+      <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" order="0" />
+      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.48847926" order="4" />
+      <window_info id="JProfiler" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+      <window_info id="IDEtalk Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+      <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="8" />
+      <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" order="0" />
+      <window_info id="Web" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="2" />
+      <window_info id="EJB" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="3" />
+      <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" order="5" />
+    </layout>
+  </component>
+  <component name="VCS.FileViewConfiguration">
+    <option name="SELECTED_STATUSES" value="DEFAULT" />
+    <option name="SELECTED_COLUMNS" value="DEFAULT" />
+    <option name="SHOW_FILTERS" value="true" />
+    <option name="CUSTOMIZE_VIEW" value="true" />
+    <option name="SHOW_FILE_HISTORY_AS_TREE" value="true" />
+  </component>
+  <component name="VcsManagerConfiguration">
+    <option name="OFFER_MOVE_TO_ANOTHER_CHANGELIST_ON_PARTIAL_COMMIT" value="true" />
+    <option name="CHECK_CODE_SMELLS_BEFORE_PROJECT_COMMIT" value="true" />
+    <option name="PERFORM_UPDATE_IN_BACKGROUND" value="false" />
+    <option name="PERFORM_COMMIT_IN_BACKGROUND" value="false" />
+    <option name="PUT_FOCUS_INTO_COMMENT" value="false" />
+    <option name="FORCE_NON_EMPTY_COMMENT" value="false" />
+    <option name="LAST_COMMIT_MESSAGE" />
+    <option name="SAVE_LAST_COMMIT_MESSAGE" value="true" />
+    <option name="CHECKIN_DIALOG_SPLITTER_PROPORTION" value="0.8" />
+    <option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" />
+    <option name="REFORMAT_BEFORE_PROJECT_COMMIT" value="false" />
+    <option name="REFORMAT_BEFORE_FILE_COMMIT" value="false" />
+    <option name="FILE_HISTORY_DIALOG_COMMENTS_SPLITTER_PROPORTION" value="0.8" />
+    <option name="FILE_HISTORY_DIALOG_SPLITTER_PROPORTION" value="0.5" />
+    <option name="ERROR_OCCURED" value="false" />
+    <option name="ACTIVE_VCS_NAME" />
+    <option name="UPDATE_GROUP_BY_PACKAGES" value="false" />
+    <option name="SHOW_FILE_HISTORY_AS_TREE" value="false" />
+    <option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" />
+  </component>
+  <component name="VssConfiguration">
+    <option name="CLIENT_PATH" value="" />
+    <option name="SRCSAFEINI_PATH" value="" />
+    <option name="USER_NAME" value="" />
+    <option name="PWD" value="" />
+    <option name="VSS_IS_INITIALIZED" value="true" />
+    <CheckoutOptions>
+      <option name="COMMENT" value="" />
+      <option name="DO_NOT_GET_LATEST_VERSION" value="false" />
+      <option name="REPLACE_WRITABLE" value="false" />
+      <option name="RECURSIVE" value="false" />
+    </CheckoutOptions>
+    <CheckinOptions>
+      <option name="COMMENT" value="" />
+      <option name="KEEP_CHECKED_OUT" value="false" />
+      <option name="RECURSIVE" value="false" />
+    </CheckinOptions>
+    <AddOptions>
+      <option name="COMMENT" value="" />
+      <option name="STORE_ONLY_LATEST_VERSION" value="false" />
+      <option name="CHECK_OUT_IMMEDIATELY" value="false" />
+      <option name="FILE_TYPE" value="0" />
+    </AddOptions>
+    <UndocheckoutOptions>
+      <option name="MAKE_WRITABLE" value="false" />
+      <option name="REPLACE_LOCAL_COPY" value="0" />
+      <option name="RECURSIVE" value="false" />
+    </UndocheckoutOptions>
+    <GetOptions>
+      <option name="REPLACE_WRITABLE" value="0" />
+      <option name="MAKE_WRITABLE" value="false" />
+      <option name="ANSWER_NEGATIVELY" value="false" />
+      <option name="ANSWER_POSITIVELY" value="false" />
+      <option name="RECURSIVE" value="false" />
+      <option name="VERSION" />
+    </GetOptions>
+    <VssConfigurableExcludedFilesTag />
+  </component>
+  <component name="antWorkspaceConfiguration">
+    <option name="IS_AUTOSCROLL_TO_SOURCE" value="false" />
+    <option name="FILTER_TARGETS" value="false" />
+  </component>
+  <component name="com.intellij.ide.util.scopeChooser.ScopeChooserConfigurable" proportions="" version="1">
+    <option name="myLastEditedConfigurable" />
+  </component>
+  <component name="com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectRootMasterDetailsConfigurable" proportions="0.24942791" version="1">
+    <option name="myPlainMode" value="false" />
+    <option name="myLastEditedConfigurable" value="bootstrap" />
+  </component>
+  <component name="com.intellij.profile.ui.ErrorOptionsConfigurable" proportions="" version="1">
+    <option name="myLastEditedConfigurable" />
+  </component>
+  <component name="editorHistoryManager">
+    <entry file="file://$PROJECT_DIR$/bootstrap/src/org/jboss/system/deployers/ClassloadingDeployer.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="32" column="13" selection-start="1418" selection-end="1418" vertical-scroll-proportion="0.16605617">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/bootstrap/src/org/jboss/system/deployers/MockTopLevelClassLoaderSystemDeployer.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="33" column="13" selection-start="1504" selection-end="1504" vertical-scroll-proportion="0.16605617">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/bootstrap/src/org/jboss/system/deployers/PropertyClassloaderMetaDataDeployer.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="43" column="13" selection-start="1983" selection-end="1983" vertical-scroll-proportion="-0.5811966">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/bootstrap/src/org/jboss/system/classloader/MockClassLoaderPolicy.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="51" column="13" selection-start="2021" selection-end="2021" vertical-scroll-proportion="0.16605617">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/bootstrap/src/org/jboss/system/classloader/NoAnnotationURLClassLoader.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="30" column="13" selection-start="1215" selection-end="1215" vertical-scroll-proportion="0.16605617">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/bootstrap/resources/bootstrap-beans.xml">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="-3.0512822">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/bootstrap/src/org/jboss/system/classloader/PackageVisitor.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="36" column="6" selection-start="1406" selection-end="1406" vertical-scroll-proportion="0.16605617">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/acme1/src/org/jboss/acme/ales/impl/AlesServiceImpl.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="30" column="13" selection-start="1235" selection-end="1235" vertical-scroll-proportion="0.16248506">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/acme1/src/org/jboss/acme/scott/impl/ScottServiceImpl.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="30" column="13" selection-start="1238" selection-end="1238" vertical-scroll-proportion="0.16248506">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/acme2/src/org/jboss/acme/ales/impl/AlesServiceImpl.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="30" column="13" selection-start="1235" selection-end="1235" vertical-scroll-proportion="0.16248506">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/acme2/src/org/jboss/acme/scott/impl/ScottServiceImpl.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="30" column="13" selection-start="1238" selection-end="1238" vertical-scroll-proportion="0.16248506">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/foo/src/org/jboss/foo/FooBarService.java">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="29" column="13" selection-start="1188" selection-end="1188" vertical-scroll-proportion="0.16248506">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/acme1/src/META-INF/acme-clmd.properties">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="0" column="0" selection-start="0" selection-end="0" vertical-scroll-proportion="0.0">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/acme2/src/META-INF/acme-clmd.properties">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="1" column="0" selection-start="20" selection-end="20" vertical-scroll-proportion="0.020310633">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/foo/src/META-INF/foo-clmd.properties">
+      <provider selected="true" editor-type-id="text-editor">
+        <state line="1" column="25" selection-start="45" selection-end="45" vertical-scroll-proportion="0.020310633">
+          <folding />
+        </state>
+      </provider>
+    </entry>
+  </component>
+</project>
+




More information about the jboss-cvs-commits mailing list