You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by gn...@apache.org on 2007/10/24 22:03:15 UTC

svn commit: r587992 [3/3] - in /incubator/servicemix/branches/servicemix-4.0: ./ apache-servicemix/ apache-servicemix/src/main/descriptors/ apache-servicemix/src/main/installers/ apache-servicemix/src/main/release/ apache-servicemix/src/main/release/bi...

Modified: incubator/servicemix/branches/servicemix-4.0/gshell/gshell-core/pom.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/gshell/gshell-core/pom.xml?rev=587992&r1=587991&r2=587992&view=diff
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/gshell/gshell-core/pom.xml (original)
+++ incubator/servicemix/branches/servicemix-4.0/gshell/gshell-core/pom.xml Wed Oct 24 13:03:06 2007
@@ -184,6 +184,7 @@
                         <Private-Package>${gshell.osgi.private}</Private-Package>
                         <Implementation-Title>Apache GShell</Implementation-Title>
                         <Implementation-Version>${project.version}</Implementation-Version>
+                        <Spring-Context>*;publish-context:=false</Spring-Context>
                     </instructions>
                 </configuration>
             </plugin>

Propchange: incubator/servicemix/branches/servicemix-4.0/gshell/gshell-osgi/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Wed Oct 24 13:03:06 2007
@@ -1 +1,4 @@
 target
+*.iml
+*.ipr
+*.iws

Modified: incubator/servicemix/branches/servicemix-4.0/gshell/gshell-osgi/pom.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/gshell/gshell-osgi/pom.xml?rev=587992&r1=587991&r2=587992&view=diff
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/gshell/gshell-osgi/pom.xml (original)
+++ incubator/servicemix/branches/servicemix-4.0/gshell/gshell-osgi/pom.xml Wed Oct 24 13:03:06 2007
@@ -77,6 +77,7 @@
                         <Implementation-Title>Apache GShell</Implementation-Title>
                         <Implementation-Version>${project.version}</Implementation-Version>
 			            <DynamicImport-Package>*</DynamicImport-Package>
+                        <Spring-Context>*;publish-context:=false</Spring-Context>
                     </instructions>
                 </configuration>
             </plugin>

Modified: incubator/servicemix/branches/servicemix-4.0/gshell/pom.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/gshell/pom.xml?rev=587992&r1=587991&r2=587992&view=diff
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/gshell/pom.xml (original)
+++ incubator/servicemix/branches/servicemix-4.0/gshell/pom.xml Wed Oct 24 13:03:06 2007
@@ -27,7 +27,7 @@
     <version>4.0-SNAPSHOT</version>
   </parent>
 
-  <groupId>org.apache.servicemix</groupId>
+  <groupId>org.apache.servicemix.gshell</groupId>
   <artifactId>gshell</artifactId>
   <packaging>pom</packaging>
   <version>4.0-SNAPSHOT</version>

Added: incubator/servicemix/branches/servicemix-4.0/gshell/src/test/configs/services/org.apache.servicemix.shell.properties
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/gshell/src/test/configs/services/org.apache.servicemix.shell.properties?rev=587992&view=auto
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/gshell/src/test/configs/services/org.apache.servicemix.shell.properties (added)
+++ incubator/servicemix/branches/servicemix-4.0/gshell/src/test/configs/services/org.apache.servicemix.shell.properties Wed Oct 24 13:03:06 2007
@@ -0,0 +1,20 @@
+# 
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+# 
+#   http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing, software
+# distributed  under the  License is distributed on an "AS IS" BASIS,
+# WITHOUT  WARRANTIES OR CONDITIONS  OF ANY KIND, either  express  or
+# implied.
+#  
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+startLocalConsole=false

Modified: incubator/servicemix/branches/servicemix-4.0/itests/pom.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/itests/pom.xml?rev=587992&r1=587991&r2=587992&view=diff
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/itests/pom.xml (original)
+++ incubator/servicemix/branches/servicemix-4.0/itests/pom.xml Wed Oct 24 13:03:06 2007
@@ -45,6 +45,12 @@
       <scope>test</scope>
     </dependency>
     <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring</artifactId>
+      <version>${spring.version}</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
       <groupId>org.apache.camel</groupId>
       <artifactId>camel-spring</artifactId>
       <version>${camel.version}</version>
@@ -168,7 +174,7 @@
     <!--
     <dependency>
       <groupId>org.apache.felix</groupId>
-      <artifactId>org.apache.felix.main</artifactId>
+      <artifactId>org.apache.felix.servicemix</artifactId>
       <version>${felix.version}</version>
       <scope>test</scope>
     </dependency>

Modified: incubator/servicemix/branches/servicemix-4.0/itests/src/test/java/org/apache/servicemix/IntegrationTest.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/itests/src/test/java/org/apache/servicemix/IntegrationTest.java?rev=587992&r1=587991&r2=587992&view=diff
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/itests/src/test/java/org/apache/servicemix/IntegrationTest.java (original)
+++ incubator/servicemix/branches/servicemix-4.0/itests/src/test/java/org/apache/servicemix/IntegrationTest.java Wed Oct 24 13:03:06 2007
@@ -51,33 +51,40 @@
 	 * test bundle are automatically included so do not need
 	 * to be specified here.
 	 */
-	protected String[] getBundles() {
-		return new String[] {
-            localMavenArtifact("org.apache.geronimo.specs", "geronimo-jms_1.1_spec", "1.1.1-SNAPSHOT"),
-            localMavenArtifact("org.apache.geronimo.specs", "geronimo-j2ee-management_1.1_spec", "1.0.1-SNAPSHOT"),
-            localMavenArtifact("org.apache.geronimo.specs", "geronimo-stax-api_1.0_spec", "1.0.1-SNAPSHOT"),
-            localMavenArtifact("org.apache.geronimo.specs", "geronimo-activation_1.1_spec", "1.0.1-SNAPSHOT"),
-            localMavenArtifact("org.apache.servicemix.bundles", "org.apache.servicemix.bundles.jaxb-api", "2.0-4.0-SNAPSHOT"),
-            localMavenArtifact("org.apache.servicemix.bundles", "org.apache.servicemix.bundles.jaxb-impl", "2.0.3-4.0-SNAPSHOT"),
-            localMavenArtifact("org.apache.servicemix.bundles", "org.apache.servicemix.bundles.httpcore", "4.0-alpha5-4.0-SNAPSHOT"),
-            localMavenArtifact("org.apache.activemq", "activemq-core", "5.0-SNAPSHOT"),
-            localMavenArtifact("org.springframework", "spring-tx", "2.1-m4"),
-            localMavenArtifact("org.springframework", "spring-jms", "2.1-m4"),
-            localMavenArtifact("org.apache.camel", "camel-core", "1.1-SNAPSHOT"),
-            localMavenArtifact("org.apache.camel", "camel-spring", "1.1-SNAPSHOT"),
-            localMavenArtifact("org.apache.camel", "camel-osgi", "1.1-SNAPSHOT"),
-            localMavenArtifact("org.apache.camel", "camel-jms", "1.1-SNAPSHOT"),
-            localMavenArtifact("org.apache.camel", "camel-jhc", "1.1-SNAPSHOT"),
-            localMavenArtifact("org.apache.servicemix", "org.apache.servicemix.api", "4.0-SNAPSHOT"),
-            localMavenArtifact("org.apache.servicemix", "org.apache.servicemix.core", "4.0-SNAPSHOT"),
-			localMavenArtifact("org.apache.servicemix", "org.apache.servicemix.spring", "4.0-SNAPSHOT"),
-            localMavenArtifact("org.apache.servicemix", "org.apache.servicemix.nmr", "4.0-SNAPSHOT"),
-            localMavenArtifact("org.apache.servicemix", "org.apache.servicemix.camel", "4.0-SNAPSHOT"),
-            localMavenArtifact("org.apache.servicemix.examples", "org.apache.servicemix.examples.intermediary", "4.0-SNAPSHOT"),
+	protected String[] getTestBundlesNames() {
+        String servicemixVersion = "4.0-SNAPSHOT";
+        String camelVersion = "1.3-SNAPSHOT";
+        return new String[] {
+            "org.apache.geronimo.specs,geronimo-jms_1.1_spec,1.1.1-SNAPSHOT",
+            "org.apache.geronimo.specs,geronimo-j2ee-management_1.1_spec,1.0.1-SNAPSHOT",
+            "org.apache.geronimo.specs,geronimo-stax-api_1.0_spec,1.0.1-SNAPSHOT",
+            "org.apache.geronimo.specs,geronimo-activation_1.1_spec,1.0.1-SNAPSHOT",
+            "org.apache.servicemix.bundles,org.apache.servicemix.bundles.jaxb-api,2.0-" + servicemixVersion,
+            "org.apache.servicemix.bundles,org.apache.servicemix.bundles.jaxb-impl,2.0.3-" + servicemixVersion,
+            "org.apache.servicemix.bundles,org.apache.servicemix.bundles.httpcore,4.0-alpha5-" + servicemixVersion,
+            "org.apache.activemq,activemq-core,5.0-SNAPSHOT",
+            "org.springframework,spring-tx," + getSpringBundledVersion(),
+            "org.springframework,spring-jms," + getSpringBundledVersion(),
+            "org.apache.camel,camel-core," + camelVersion,
+            "org.apache.camel,camel-spring," + camelVersion,
+            "org.apache.camel,camel-osgi," + camelVersion,
+            "org.apache.camel,camel-jms," + camelVersion,
+            "org.apache.camel,camel-jhc," + camelVersion,
+            "org.apache.servicemix,org.apache.servicemix.api," + servicemixVersion,
+            "org.apache.servicemix,org.apache.servicemix.core," + servicemixVersion,
+			"org.apache.servicemix,org.apache.servicemix.spring," + servicemixVersion,
+            "org.apache.servicemix,org.apache.servicemix.nmr," + servicemixVersion,
+            "org.apache.servicemix,org.apache.servicemix.camel," + servicemixVersion,
+            "org.apache.servicemix.examples,org.apache.servicemix.examples.intermediary," + servicemixVersion,
 		};
 	}
-	
-	/**
+
+//    protected String getSpringBundledVersion() {
+//        return "2.5-rc1";
+//    }
+
+
+    /**
 	 * The superclass provides us access to the root bundle
 	 * context via the 'getBundleContext' operation
 	 */
@@ -96,7 +103,6 @@
 	 * 
 	 */
 	public void testSimpleServiceExported() {
-		waitOnContextCreation("org.apache.servicemix.nmr");
 		waitOnContextCreation("org.apache.servicemix.examples.intermediary");
 		BundleContext context = getBundleContext();
         ServiceReference ref = context.getServiceReference(NMR.class.getName());

Propchange: incubator/servicemix/branches/servicemix-4.0/jbi/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Oct 24 13:03:06 2007
@@ -0,0 +1,4 @@
+target
+*.iml
+*.ipr
+*.iws

Propchange: incubator/servicemix/branches/servicemix-4.0/jbi/osgi/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Oct 24 13:03:06 2007
@@ -0,0 +1,4 @@
+target
+*.iml
+*.ipr
+*.iws

Added: incubator/servicemix/branches/servicemix-4.0/jbi/osgi/pom.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/jbi/osgi/pom.xml?rev=587992&view=auto
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/jbi/osgi/pom.xml (added)
+++ incubator/servicemix/branches/servicemix-4.0/jbi/osgi/pom.xml Wed Oct 24 13:03:06 2007
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.apache.servicemix</groupId>
+    <artifactId>jbi</artifactId>
+    <version>4.0-SNAPSHOT</version>
+  </parent>
+
+  <groupId>org.apache.servicemix.jbi</groupId>
+  <artifactId>org.apache.servicemix.jbi.osgi</artifactId>
+  <packaging>bundle</packaging>
+  <version>4.0-SNAPSHOT</version>
+  <name>ServiceMix JBI OSGi</name>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.servicemix.jbi</groupId>
+      <artifactId>org.apache.servicemix.jbi.runtime</artifactId>
+      <version>4.0-SNAPSHOT</version>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <configuration>
+          <instructions>
+            <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
+            <Import-Package></Import-Package>
+            <DynamicImport-Package>*</DynamicImport-Package>
+          </instructions>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+</project>

Added: incubator/servicemix/branches/servicemix-4.0/jbi/osgi/src/main/resources/META-INF/spring/servicemix-jbi.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/jbi/osgi/src/main/resources/META-INF/spring/servicemix-jbi.xml?rev=587992&view=auto
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/jbi/osgi/src/main/resources/META-INF/spring/servicemix-jbi.xml (added)
+++ incubator/servicemix/branches/servicemix-4.0/jbi/osgi/src/main/resources/META-INF/spring/servicemix-jbi.xml Wed Oct 24 13:03:06 2007
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xmlns:osgi="http://www.springframework.org/schema/osgi"
+       xmlns:util="http://www.springframework.org/schema/util"
+       xsi:schemaLocation="
+  http://www.springframework.org/schema/beans
+  http://www.springframework.org/schema/beans/spring-beans.xsd
+  http://www.springframework.org/schema/util
+  http://www.springframework.org/schema/util/spring-util.xsd
+  http://www.springframework.org/schema/osgi
+  http://www.springframework.org/schema/osgi/spring-osgi-1.0-m3.xsd">
+
+    <!-- JBI Component Registry -->
+    <bean id="componentRegistry" class="org.apache.servicemix.jbi.runtime.impl.ComponentRegistryImpl">
+        <property name="nmr" ref="nmr" />
+    </bean>
+
+    <!-- Service tracker for JBI components -->
+    <osgi:list id="components"
+               interface="javax.jbi.component.Component"
+               cardinality="0..N">
+        <osgi:listener ref="componentRegistry" bind-method="register" unbind-method="unregister" />
+    </osgi:list>
+
+    <!-- Reference to the ServiceMix NMR -->
+    <osgi:reference id="nmr"
+                    interface="org.apache.servicemix.api.NMR"
+                    cardinality="1..1" />
+
+    <!-- Expose the JBI components registry in OSGi -->
+    <osgi:service ref="componentRegistry">
+        <osgi:interfaces>
+            <value>org.apache.servicemix.jbi.runtime.ComponentRegistry</value>
+        </osgi:interfaces>
+    </osgi:service>
+
+</beans>
\ No newline at end of file

Propchange: incubator/servicemix/branches/servicemix-4.0/jbi/runtime/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Wed Oct 24 13:03:06 2007
@@ -1 +1,4 @@
 target
+*.iml
+*.ipr
+*.iws

Propchange: incubator/servicemix/branches/servicemix-4.0/main/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Oct 24 13:03:06 2007
@@ -0,0 +1,4 @@
+target
+*.iml
+*.ipr
+*.iws

Modified: incubator/servicemix/branches/servicemix-4.0/main/pom.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/main/pom.xml?rev=587992&r1=587991&r2=587992&view=diff
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/main/pom.xml (original)
+++ incubator/servicemix/branches/servicemix-4.0/main/pom.xml Wed Oct 24 13:03:06 2007
@@ -27,9 +27,9 @@
     <version>4.0-SNAPSHOT</version>
   </parent>
 
-  <artifactId>org.apache.felix.main</artifactId>
+  <artifactId>org.apache.servicemix.main</artifactId>
   <packaging>bundle</packaging>
-  <name>Apache Felix Main</name>
+  <name>Apache ServiceMix Main</name>
 
   <dependencies>
     <dependency>
@@ -51,28 +51,6 @@
     </dependency>
     <dependency>
       <groupId>org.apache.felix</groupId>
-      <artifactId>org.apache.felix.shell</artifactId>
-      <version>${felix.version}</version>
-      <exclusions>
-        <exclusion>
-	      <groupId>org.apache.felix</groupId>
-          <artifactId>org.osgi.core</artifactId>
-        </exclusion>
-      </exclusions>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.felix</groupId>
-      <artifactId>org.apache.felix.shell.tui</artifactId>
-      <version>${felix.version}</version>
-      <exclusions>
-        <exclusion>
-	      <groupId>org.apache.felix</groupId>
-          <artifactId>org.osgi.core</artifactId>
-        </exclusion>
-      </exclusions>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.felix</groupId>
       <artifactId>org.apache.felix.bundlerepository</artifactId>
       <version>${felix.version}</version>
       <exclusions>
@@ -86,10 +64,12 @@
         </exclusion>
       </exclusions>
     </dependency>
+    <dependency>
+      <groupId>org.apache.directory.daemon</groupId>
+      <artifactId>daemon-bootstrappers</artifactId>
+      <version>1.1.1</version>
+    </dependency>
   </dependencies>
-  <properties>
-    <property name="install.home" value="${basedir.absolutePath}"/>
-  </properties>
   <build>
     <plugins>
       <plugin>
@@ -100,100 +80,16 @@
         <configuration>
           <instructions>
             <_donotcopy>(CVS|.svn|config.properties)</_donotcopy>
-            <Main-Class>org.apache.felix.main.Main</Main-Class>
-            <Bundle-Name>Apache Felix</Bundle-Name>
+            <Main-Class>org.apache.servicemix.main.Main</Main-Class>
+            <Bundle-Name>Apache ServiceMix</Bundle-Name>
             <Bundle-Description>OSGi R4 framework.</Bundle-Description>
-            <Private-Package>org.apache.felix.main.*,org.apache.felix.moduleloader.*,org.apache.felix.framework.*,org.osgi.framework,org.osgi.service.packageadmin,org.osgi.service.startlevel,org.osgi.service.url,org.osgi.util.tracker</Private-Package>
+            <Private-Package>org.apache.servicemix.main.*,org.apache.felix.moduleloader.*,org.apache.felix.framework.*,org.osgi.framework,org.osgi.service.packageadmin,org.osgi.service.startlevel,org.osgi.service.event,org.osgi.service.url,org.osgi.util.tracker</Private-Package>
             <Import-Package>!*</Import-Package>
             <Include-Resource>{src/main/resources/}</Include-Resource>
           </instructions>
         </configuration>
       </plugin>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-dependency-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>unpack</id>
-            <phase>validate</phase>
-            <goals>
-              <goal>unpack</goal>
-            </goals>
-            <configuration>
-              <outputDirectory>${project.build.outputDirectory}</outputDirectory>
-              <artifactItems>
-                <artifactItem>
-			      <groupId>org.apache.felix</groupId>
-                  <artifactId>org.apache.felix.framework</artifactId>
-                  <version>${felix.version}</version>
-                </artifactItem>
-              </artifactItems>
-            </configuration>
-          </execution>
-          <execution>
-            <id>copy</id>
-            <phase>install</phase>
-            <goals>
-              <goal>copy</goal>
-            </goals>
-            <configuration>
-                <artifactItems>
-                  <artifactItem>
-			      <groupId>org.apache.felix</groupId>
-                     <artifactId>org.apache.felix.shell</artifactId>
-                     <version>${felix.version}</version>
-                     <type>jar</type>
-                     <overWrite>true</overWrite>
-                     <outputDirectory>${project.build.directory}/bundle</outputDirectory >
-                   </artifactItem>
-                   <artifactItem>
-				     <groupId>org.apache.felix</groupId>
-                     <artifactId>org.apache.felix.shell.tui</artifactId>
-                     <version>${felix.version}</version>
-                     <type>jar</type>
-                     <overWrite>true</overWrite>
-                     <outputDirectory>${project.build.directory}/bundle</outputDirectory >
-                   </artifactItem>
-                   <artifactItem>
-				     <groupId>org.apache.felix</groupId>
-                     <artifactId>org.apache.felix.bundlerepository</artifactId>
-                     <version>${felix.version}</version>
-                     <type>jar</type>
-                     <overWrite>true</overWrite>
-                     <outputDirectory>${project.build.directory}/bundle</outputDirectory >
-                   </artifactItem>
-                 </artifactItems>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <artifactId>maven-antrun-plugin</artifactId>
-        <executions>
-          <execution>
-            <phase>install</phase>
-            <configuration>
-              <tasks>
-                <delete dir="${basedir}/bin"/>
-                <mkdir dir="${basedir}/bin"/>
-                <delete dir="${basedir}/conf"/>
-                <mkdir dir="${basedir}/conf"/>
-                <delete dir="${basedir}/bundle"/>
-                <copy file="${basedir}/target/org.apache.felix.main-${pom.version}.jar"
-                     tofile="${basedir}/bin/felix.jar"/>
-                <copy file="${basedir}/target/classes/config.properties"
-                     todir="${basedir}/conf"/>
-                <move file="${basedir}/target/bundle"
-                     todir="${basedir}"/>
-              </tasks>
-            </configuration>
-            <goals>
-              <goal>run</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
+  </plugins>
     <resources>
       <resource>
         <directory>src/main/resources</directory>

Modified: incubator/servicemix/branches/servicemix-4.0/main/src/main/java/org/apache/servicemix/main/Main.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/main/src/main/java/org/apache/servicemix/main/Main.java?rev=587992&r1=587990&r2=587992&view=diff
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/main/src/main/java/org/apache/servicemix/main/Main.java (original)
+++ incubator/servicemix/branches/servicemix-4.0/main/src/main/java/org/apache/servicemix/main/Main.java Wed Oct 24 13:03:06 2007
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.felix.main;
+package org.apache.servicemix.main;
 
 import java.io.*;
 import java.net.MalformedURLException;

Propchange: incubator/servicemix/branches/servicemix-4.0/management/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Oct 24 13:03:06 2007
@@ -0,0 +1,4 @@
+target
+*.iml
+*.ipr
+*.iws

Propchange: incubator/servicemix/branches/servicemix-4.0/management/acegi/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Oct 24 13:03:06 2007
@@ -0,0 +1,4 @@
+target
+*.iml
+*.ipr
+*.iws

Added: incubator/servicemix/branches/servicemix-4.0/management/acegi/pom.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/management/acegi/pom.xml?rev=587992&view=auto
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/management/acegi/pom.xml (added)
+++ incubator/servicemix/branches/servicemix-4.0/management/acegi/pom.xml Wed Oct 24 13:03:06 2007
@@ -0,0 +1,131 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.apache.servicemix</groupId>
+    <artifactId>servicemix</artifactId>
+    <version>4.0-SNAPSHOT</version>
+  </parent>
+
+  <groupId>org.apache.servicemix.management</groupId>
+  <artifactId>org.apache.servicemix.management.acegi</artifactId>
+  <packaging>bundle</packaging>
+  <version>4.0-SNAPSHOT</version>
+  <name>org.apache.servicemix.management.acegi</name>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.acegisecurity</groupId>
+      <artifactId>acegi-security</artifactId>
+      <version>1.0.0</version>
+    </dependency>
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-context</artifactId>
+      <version>${spring.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.felix</groupId>
+      <artifactId>org.osgi.core</artifactId>
+      <version>${felix.version}</version>
+      <scope>provided</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.osgi</groupId>
+      <artifactId>osgi_R4_compendium</artifactId>
+      <version>1.0</version>
+      <scope>provided</scope>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>${junit.version}</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>commons-logging</groupId>
+      <artifactId>commons-logging</artifactId>
+      <version>${commons.logging.version}</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <configuration>
+          <instructions>
+            <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
+            <Import-Package>org.apache.servicemix.security.api*;resolution:=optional,*</Import-Package>
+            <Export-Package>org.apache.servicemix.management*</Export-Package>
+            <DynamicImport-Package>*</DynamicImport-Package>
+            <Private-Package>
+            </Private-Package>
+            <Spring-Context>*;publish-context:=false</Spring-Context>
+          </instructions>
+        </configuration>
+      </plugin>
+        <plugin>
+            <groupId>org.codehaus.mojo</groupId>
+            <artifactId>exec-maven-plugin</artifactId>
+            <configuration>
+              <includeProjectDependencies>false</includeProjectDependencies>
+              <includePluginDependencies>true</includePluginDependencies>
+              <executableDependency>
+                  <groupId>org.ops4j.pax.runner</groupId>
+                  <artifactId>pax-runner</artifactId>
+              </executableDependency>
+              <mainClass>org.ops4j.pax.runner.Run</mainClass>
+              <arguments>
+                  <argument>--vmOptions=-Dbundles.configuration.location=${basedir}/src/test/configs</argument>
+                  <argument>--console</argument>
+                  <argument>mvn:org.apache.felix/org.apache.felix.configadmin/0.9.0-SNAPSHOT</argument>
+                  <argument>mvn:org.ops4j.pax.confman/pax-confman-propsloader/0.3.0-SNAPSHOT</argument>
+                  <argument>mvn:org.ops4j.pax.logging/pax-logging-api/0.9.7-SNAPSHOT</argument>
+                  <argument>mvn:org.ops4j.pax.logging/pax-logging-service/0.9.7-SNAPSHOT</argument>
+                  <argument>mvn:org.springframework.osgi/spring-osgi-core/${spring.osgi.version}</argument>
+                  <argument>mvn:org.springframework.osgi/spring-osgi-extender/${spring.osgi.version}</argument>
+                  <argument>mvn:org.springframework.osgi/spring-osgi-io/${spring.osgi.version}</argument>
+                  <argument>mvn:org.springframework/spring-aop/${spring.version}</argument>
+                  <argument>mvn:org.springframework/spring-beans/${spring.version}</argument>
+                  <argument>mvn:org.springframework/spring-context/${spring.version}</argument>
+                  <argument>mvn:org.springframework/spring-core/${spring.version}</argument>
+                  <argument>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.aopalliance/1.0-${project.version}</argument>
+                  <argument>mvn:org.apache.servicemix/org.apache.servicemix.management/${project.version}</argument>
+              </arguments>
+            </configuration>
+            <dependencies>
+                <dependency>
+                    <groupId>org.ops4j.pax.runner</groupId>
+                    <artifactId>pax-runner</artifactId>
+                    <version>0.5.1</version>
+                </dependency>
+            </dependencies>
+        </plugin>
+    </plugins>
+  </build>
+
+
+</project>

Added: incubator/servicemix/branches/servicemix-4.0/management/acegi/src/main/java/org/apache/servicemix/management/acegi/AcegiJMXAuthenticator.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/management/acegi/src/main/java/org/apache/servicemix/management/acegi/AcegiJMXAuthenticator.java?rev=587992&view=auto
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/management/acegi/src/main/java/org/apache/servicemix/management/acegi/AcegiJMXAuthenticator.java (added)
+++ incubator/servicemix/branches/servicemix-4.0/management/acegi/src/main/java/org/apache/servicemix/management/acegi/AcegiJMXAuthenticator.java Wed Oct 24 13:03:06 2007
@@ -0,0 +1,60 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.servicemix.management.acegi;
+
+import javax.management.remote.JMXAuthenticator;
+import javax.security.auth.Subject;
+
+import org.acegisecurity.Authentication;
+import org.acegisecurity.AuthenticationManager;
+import org.acegisecurity.providers.UsernamePasswordAuthenticationToken;
+
+/**
+ * A JMXAuthenticator delegating to Acegi for authenticating the user.
+ *
+ */
+public class AcegiJMXAuthenticator implements JMXAuthenticator {
+
+    private final AuthenticationManager authenticationManager;
+
+    public AcegiJMXAuthenticator(AuthenticationManager authenticationManager) {
+        this.authenticationManager = authenticationManager;
+    }
+
+    public Subject authenticate(Object credentials) {
+        if (!(credentials instanceof String[])) {
+            throw new IllegalArgumentException("Expected String[2], got " + (credentials != null ? credentials.getClass().getName() : null));
+        }
+        String[] params = (String[]) credentials;
+        if (params.length != 2) {
+            throw new IllegalArgumentException("Expected String[2] but length was " + params.length);
+        }
+        Subject subject = new Subject();
+        try {
+            authenticate(subject, params[0], params[1]);
+        } catch (Exception e) {
+            throw new SecurityException("Error occured while authenticating", e);
+        }
+        return subject;
+    }
+
+    protected void authenticate(Subject subject, String login, String password) {
+        Authentication token = new UsernamePasswordAuthenticationToken(login, password);
+        token = authenticationManager.authenticate(token);
+    }
+
+}

Added: incubator/servicemix/branches/servicemix-4.0/management/acegi/src/main/resources/META-INF/spring/servicemix-management-acegi.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/management/acegi/src/main/resources/META-INF/spring/servicemix-management-acegi.xml?rev=587992&view=auto
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/management/acegi/src/main/resources/META-INF/spring/servicemix-management-acegi.xml (added)
+++ incubator/servicemix/branches/servicemix-4.0/management/acegi/src/main/resources/META-INF/spring/servicemix-management-acegi.xml Wed Oct 24 13:03:06 2007
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xmlns:osgi="http://www.springframework.org/schema/osgi"
+       xmlns:osgix="http://www.springframework.org/schema/osgi-compendium"
+       xmlns:util="http://www.springframework.org/schema/util"
+       xsi:schemaLocation="
+  http://www.springframework.org/schema/beans
+  http://www.springframework.org/schema/beans/spring-beans.xsd
+  http://www.springframework.org/schema/util
+  http://www.springframework.org/schema/util/spring-util.xsd
+  http://www.springframework.org/schema/osgi
+  http://www.springframework.org/schema/osgi/spring-osgi-1.0-m3.xsd
+  http://www.springframework.org/schema/osgi-compendium
+  http://www.springframework.org/schema/osgi/spring-osgi-compendium.xsd">
+
+    <!-- Configure the Acegi authenticator -->
+    <bean id="acegiAuthenticator" class="org.apache.servicemix.management.acegi.AcegiJMXAuthenticator">
+        <constructor-arg ref="authenticationManager" />
+    </bean>
+
+    <!-- Export it as an OSGi service -->
+    <osgi:service ref="acegiAuthenticator" interface="javax.management.remote.JMXAuthenticator" ranking="1" />
+
+    <!-- Create an OSGi reference to the authenticationManager -->
+    <osgi:reference id="authenticationManager" interface="org.acegisecurity.AuthenticationManager" cardinality="1..1" />
+
+</beans>
+

Propchange: incubator/servicemix/branches/servicemix-4.0/management/core/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Oct 24 13:03:06 2007
@@ -0,0 +1,5 @@
+target
+runner
+*.iml
+*.ipr
+*.iws

Added: incubator/servicemix/branches/servicemix-4.0/management/core/pom.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/management/core/pom.xml?rev=587992&view=auto
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/management/core/pom.xml (added)
+++ incubator/servicemix/branches/servicemix-4.0/management/core/pom.xml Wed Oct 24 13:03:06 2007
@@ -0,0 +1,131 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.apache.servicemix</groupId>
+    <artifactId>servicemix</artifactId>
+    <version>4.0-SNAPSHOT</version>
+  </parent>
+
+  <groupId>org.apache.servicemix.management</groupId>
+  <artifactId>org.apache.servicemix.management.core</artifactId>
+  <packaging>bundle</packaging>
+  <version>4.0-SNAPSHOT</version>
+  <name>org.apache.servicemix.management.core</name>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.springframework.osgi</groupId>
+      <artifactId>spring-osgi-core</artifactId>
+      <version>${spring.osgi.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-context</artifactId>
+      <version>${spring.version}</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.felix</groupId>
+      <artifactId>org.osgi.core</artifactId>
+      <version>${felix.version}</version>
+      <scope>provided</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.osgi</groupId>
+      <artifactId>osgi_R4_compendium</artifactId>
+      <version>1.0</version>
+      <scope>provided</scope>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>${junit.version}</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>commons-logging</groupId>
+      <artifactId>commons-logging</artifactId>
+      <version>${commons.logging.version}</version>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <configuration>
+          <instructions>
+            <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
+            <Import-Package>*</Import-Package>
+            <Export-Package>org.apache.servicemix.management*</Export-Package>
+            <DynamicImport-Package>*</DynamicImport-Package>
+            <Private-Package>
+            </Private-Package>
+            <Spring-Context>*;publish-context:=false</Spring-Context>
+          </instructions>
+        </configuration>
+      </plugin>
+        <plugin>
+            <groupId>org.codehaus.mojo</groupId>
+            <artifactId>exec-maven-plugin</artifactId>
+            <configuration>
+              <includeProjectDependencies>false</includeProjectDependencies>
+              <includePluginDependencies>true</includePluginDependencies>
+              <executableDependency>
+                  <groupId>org.ops4j.pax.runner</groupId>
+                  <artifactId>pax-runner</artifactId>
+              </executableDependency>
+              <mainClass>org.ops4j.pax.runner.Run</mainClass>
+              <arguments>
+                  <argument>--vmOptions=-Dbundles.configuration.location=${basedir}/src/test/configs</argument>
+                  <argument>--console</argument>
+                  <argument>mvn:org.apache.felix/org.apache.felix.configadmin/0.9.0-SNAPSHOT</argument>
+                  <argument>mvn:org.ops4j.pax.confman/pax-confman-propsloader/0.3.0-SNAPSHOT</argument>
+                  <argument>mvn:org.ops4j.pax.logging/pax-logging-api/0.9.7-SNAPSHOT</argument>
+                  <argument>mvn:org.ops4j.pax.logging/pax-logging-service/0.9.7-SNAPSHOT</argument>
+                  <argument>mvn:org.springframework.osgi/spring-osgi-core/${spring.osgi.version}</argument>
+                  <argument>mvn:org.springframework.osgi/spring-osgi-extender/${spring.osgi.version}</argument>
+                  <argument>mvn:org.springframework.osgi/spring-osgi-io/${spring.osgi.version}</argument>
+                  <argument>mvn:org.springframework/spring-aop/${spring.version}</argument>
+                  <argument>mvn:org.springframework/spring-beans/${spring.version}</argument>
+                  <argument>mvn:org.springframework/spring-context/${spring.version}</argument>
+                  <argument>mvn:org.springframework/spring-core/${spring.version}</argument>
+                  <argument>mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.aopalliance/1.0-${project.version}</argument>
+                  <argument>mvn:org.apache.servicemix/org.apache.servicemix.management/${project.version}</argument>
+              </arguments>
+            </configuration>
+            <dependencies>
+                <dependency>
+                    <groupId>org.ops4j.pax.runner</groupId>
+                    <artifactId>pax-runner</artifactId>
+                    <version>0.5.1</version>
+                </dependency>
+            </dependencies>
+        </plugin>
+    </plugins>
+  </build>
+
+
+</project>

Added: incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/IntrospectionSupport.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/IntrospectionSupport.java?rev=587992&view=auto
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/IntrospectionSupport.java (added)
+++ incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/IntrospectionSupport.java Wed Oct 24 13:03:06 2007
@@ -0,0 +1,294 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.servicemix.management;
+
+import java.beans.PropertyEditor;
+import java.beans.PropertyEditorManager;
+import java.lang.reflect.Field;
+import java.lang.reflect.Method;
+import java.lang.reflect.Modifier;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+
+public final class IntrospectionSupport {
+    
+    private IntrospectionSupport() {
+    }
+
+    public static boolean getProperties(Object target, Map props, String optionPrefix) {
+
+        boolean rc = false;
+        if (target == null) {
+            throw new IllegalArgumentException("target was null.");
+        }
+        if (props == null) {
+            throw new IllegalArgumentException("props was null.");
+        }
+
+        if (optionPrefix == null) {
+            optionPrefix = "";
+        }
+
+        Class clazz = target.getClass();
+        Method[] methods = clazz.getMethods();
+        for (int i = 0; i < methods.length; i++) {
+            Method method = methods[i];
+            String name = method.getName();
+            Class type = method.getReturnType();
+            Class params[] = method.getParameterTypes();
+            if (name.startsWith("get") && params.length == 0 && type != null && isSettableType(type)) {
+
+                try {
+
+                    Object value = method.invoke(target, new Object[] {});
+                    if (value == null) {
+                        continue;
+                    }
+
+                    String strValue = convertToString(value, type);
+                    if (strValue == null) {
+                        continue;
+                    }
+
+                    name = name.substring(3, 4).toLowerCase() + name.substring(4);
+                    props.put(optionPrefix + name, strValue);
+                    rc = true;
+
+                } catch (Throwable ignore) {
+                }
+
+            }
+        }
+
+        return rc;
+    }
+
+    public static boolean setProperties(Object target, Map<String, ?> props, String optionPrefix) {
+        boolean rc = false;
+        if (target == null) {
+            throw new IllegalArgumentException("target was null.");
+        }
+        if (props == null) {
+            throw new IllegalArgumentException("props was null.");
+        }
+
+        for (Iterator<String> iter = props.keySet().iterator(); iter.hasNext();) {
+            String name = iter.next();
+            if (name.startsWith(optionPrefix)) {
+                Object value = props.get(name);
+                name = name.substring(optionPrefix.length());
+                if (setProperty(target, name, value)) {
+                    iter.remove();
+                    rc = true;
+                }
+            }
+        }
+        return rc;
+    }
+
+    public static Map<String, Object> extractProperties(Map props, String optionPrefix) {
+        if (props == null) {
+            throw new IllegalArgumentException("props was null.");
+        }
+
+        HashMap<String, Object> rc = new HashMap<String, Object>(props.size());
+
+        for (Iterator iter = props.keySet().iterator(); iter.hasNext();) {
+            String name = (String)iter.next();
+            if (name.startsWith(optionPrefix)) {
+                Object value = props.get(name);
+                name = name.substring(optionPrefix.length());
+                rc.put(name, value);
+                iter.remove();
+            }
+        }
+
+        return rc;
+    }
+
+    public static boolean setProperties(Object target, Map props) {
+        boolean rc = false;
+
+        if (target == null) {
+            throw new IllegalArgumentException("target was null.");
+        }
+        if (props == null) {
+            throw new IllegalArgumentException("props was null.");
+        }
+
+        for (Iterator iter = props.entrySet().iterator(); iter.hasNext();) {
+            Map.Entry entry = (Entry)iter.next();
+            if (setProperty(target, (String)entry.getKey(), entry.getValue())) {
+                iter.remove();
+                rc = true;
+            }
+        }
+
+        return rc;
+    }
+
+    public static boolean setProperty(Object target, String name, Object value) {
+        try {
+            Class clazz = target.getClass();
+            Method setter = findSetterMethod(clazz, name);
+            if (setter == null) {
+                return false;
+            }
+
+            // If the type is null or it matches the needed type, just use the
+            // value directly
+            if (value == null || value.getClass() == setter.getParameterTypes()[0]) {
+                setter.invoke(target, new Object[] {value});
+            } else {
+                // We need to convert it
+                setter.invoke(target, new Object[] {convert(value, setter.getParameterTypes()[0])});
+            }
+            return true;
+        } catch (Throwable ignore) {
+            return false;
+        }
+    }
+
+    private static Object convert(Object value, Class type) throws URISyntaxException {
+        PropertyEditor editor = PropertyEditorManager.findEditor(type);
+        if (editor != null) {
+            editor.setAsText(value.toString());
+            return editor.getValue();
+        }
+        if (type == URI.class) {
+            return new URI(value.toString());
+        }
+        return null;
+    }
+
+    private static String convertToString(Object value, Class type) throws URISyntaxException {
+        PropertyEditor editor = PropertyEditorManager.findEditor(type);
+        if (editor != null) {
+            editor.setValue(value);
+            return editor.getAsText();
+        }
+        if (type == URI.class) {
+            return ((URI)value).toString();
+        }
+        return null;
+    }
+
+    private static Method findSetterMethod(Class clazz, String name) {
+        // Build the method name.
+        name = "set" + name.substring(0, 1).toUpperCase() + name.substring(1);
+        Method[] methods = clazz.getMethods();
+        for (int i = 0; i < methods.length; i++) {
+            Method method = methods[i];
+            Class params[] = method.getParameterTypes();
+            if (method.getName().equals(name) && params.length == 1 && isSettableType(params[0])) {
+                return method;
+            }
+        }
+        return null;
+    }
+
+    private static boolean isSettableType(Class clazz) {
+        if (PropertyEditorManager.findEditor(clazz) != null) {
+            return true;
+        }
+        if (clazz == URI.class) {
+            return true;
+        }
+        if (clazz == Boolean.class) {
+            return true;
+        }
+        return false;
+    }
+
+    public static String toString(Object target) {
+        return toString(target, Object.class);
+    }
+
+    public static String toString(Object target, Class stopClass) {
+        LinkedHashMap<String, Object> map = new LinkedHashMap<String, Object>();
+        addFields(target, target.getClass(), stopClass, map);
+        StringBuffer buffer = new StringBuffer(simpleName(target.getClass()));
+        buffer.append(" {");
+        Set entrySet = map.entrySet();
+        boolean first = true;
+        for (Iterator iter = entrySet.iterator(); iter.hasNext();) {
+            Map.Entry entry = (Map.Entry)iter.next();
+            if (first) {
+                first = false;
+            } else {
+                buffer.append(", ");
+            }
+            buffer.append(entry.getKey());
+            buffer.append(" = ");
+            appendToString(buffer, entry.getValue());
+        }
+        buffer.append("}");
+        return buffer.toString();
+    }
+
+    protected static void appendToString(StringBuffer buffer, Object value) {
+        buffer.append(value);
+    }
+
+    public static String simpleName(Class clazz) {
+        String name = clazz.getName();
+        int p = name.lastIndexOf(".");
+        if (p >= 0) {
+            name = name.substring(p + 1);
+        }
+        return name;
+    }
+
+    private static void addFields(Object target, Class startClass, Class<Object> stopClass, LinkedHashMap<String, Object> map) {
+
+        if (startClass != stopClass) {
+            addFields(target, startClass.getSuperclass(), stopClass, map);
+        }
+
+        Field[] fields = startClass.getDeclaredFields();
+        for (int i = 0; i < fields.length; i++) {
+            Field field = fields[i];
+            if (Modifier.isStatic(field.getModifiers()) || Modifier.isTransient(field.getModifiers())
+                || Modifier.isPrivate(field.getModifiers())) {
+                continue;
+            }
+
+            try {
+                field.setAccessible(true);
+                Object o = field.get(target);
+                if (o != null && o.getClass().isArray()) {
+                    try {
+                        o = Arrays.asList((Object[])o);
+                    } catch (Throwable e) {
+                    }
+                }
+                map.put(field.getName(), o);
+            } catch (Throwable e) {
+                e.printStackTrace();
+            }
+        }
+
+    }
+
+}

Propchange: incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/IntrospectionSupport.java
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/JmxConnectorServiceFactory.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/JmxConnectorServiceFactory.java?rev=587992&view=auto
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/JmxConnectorServiceFactory.java (added)
+++ incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/JmxConnectorServiceFactory.java Wed Oct 24 13:03:06 2007
@@ -0,0 +1,74 @@
+package org.apache.servicemix.management;
+
+import java.io.IOException;
+import java.util.Dictionary;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Properties;
+
+import org.osgi.service.cm.ConfigurationException;
+import org.osgi.service.cm.ManagedServiceFactory;
+import org.springframework.beans.factory.DisposableBean;
+import org.springframework.jmx.support.ConnectorServerFactoryBean;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: gnodet
+ * Date: Oct 14, 2007
+ * Time: 11:10:17 PM
+ * To change this template use File | Settings | File Templates.
+ */
+public class JmxConnectorServiceFactory implements ManagedServiceFactory, DisposableBean {
+
+    private Map<String, ConnectorServerFactoryBean> connectors = new HashMap<String, ConnectorServerFactoryBean>();
+    private Properties environment;
+
+    public void setEnvironment(Properties environment) {
+        this.environment = environment;
+    }
+
+    public String getName() {
+        return JmxConnectorServiceFactory.class.getName();
+    }
+
+    public void updated(final String s, final Dictionary dictionary) throws ConfigurationException {
+        System.err.println("Updated: " + s + " with props (" + dictionary + ")");
+        try {
+            if (connectors.containsKey(s)) {
+                deleted(s);
+            }
+            ConnectorServerFactoryBean factory = new ConnectorServerFactoryBean();
+            Map<String, Object> props = new HashMap<String, Object>();
+            for (Enumeration e = dictionary.keys(); e.hasMoreElements();) {
+                String key = (String) e.nextElement();
+                props.put(key, dictionary.get(key));
+            }
+            factory.setEnvironment(environment);
+            IntrospectionSupport.setProperties(factory, props);
+            factory.afterPropertiesSet();
+            connectors.put(s, factory);
+        } catch (Exception e) {
+            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+            throw new ConfigurationException("Unable to create service", "Unknown", e);
+        }
+    }
+
+    public void deleted(String s) {
+        System.err.println("Deleted: " + s);
+        try {
+            ConnectorServerFactoryBean factory = connectors.remove(s);
+            if (factory != null) {
+                factory.destroy();
+            }
+        } catch (IOException e) {
+            e.printStackTrace();  //To change body of catch statement use File | Settings | File Templates.
+        }
+    }
+
+    public void destroy() throws Exception {
+        while (!connectors.isEmpty()) {
+            deleted(connectors.keySet().iterator().next());
+        }
+    }
+}

Added: incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/RmiRegistryFactoryBean.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/RmiRegistryFactoryBean.java?rev=587992&view=auto
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/RmiRegistryFactoryBean.java (added)
+++ incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/RmiRegistryFactoryBean.java Wed Oct 24 13:03:06 2007
@@ -0,0 +1,118 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.servicemix.management;
+
+import java.rmi.RemoteException;
+import java.rmi.registry.LocateRegistry;
+import java.rmi.registry.Registry;
+import java.rmi.server.UnicastRemoteObject;
+
+import org.springframework.beans.factory.DisposableBean;
+import org.springframework.beans.factory.FactoryBean;
+import org.springframework.beans.factory.InitializingBean;
+
+/**
+ * 
+ * @author gnodet
+ */
+public class RmiRegistryFactoryBean implements FactoryBean, InitializingBean, DisposableBean {
+
+    private int port = Registry.REGISTRY_PORT;
+    private Registry registry;
+    private boolean locate;
+    private boolean create = true;
+    private boolean locallyCreated;
+    
+    /**
+     * @return the create
+     */
+    public boolean isCreate() {
+        return create;
+    }
+
+    /**
+     * @param create the create to set
+     */
+    public void setCreate(boolean create) {
+        this.create = create;
+    }
+
+    /**
+     * @return the locate
+     */
+    public boolean isLocate() {
+        return locate;
+    }
+
+    /**
+     * @param locate the locate to set
+     */
+    public void setLocate(boolean locate) {
+        this.locate = locate;
+    }
+
+    /**
+     * @return the port
+     */
+    public int getPort() {
+        return port;
+    }
+
+    /**
+     * @param port the port to set
+     */
+    public void setPort(int port) {
+        this.port = port;
+    }
+
+    public Object getObject() throws Exception {
+        return registry;
+    }
+
+    public Class getObjectType() {
+        return Registry.class;
+    }
+
+    public boolean isSingleton() {
+        return true;
+    }
+
+    public void afterPropertiesSet() throws RemoteException {
+        if (registry == null && locate) {
+            try {
+                Registry reg = LocateRegistry.getRegistry(getPort());
+                reg.list();
+                registry = reg;
+            } catch (RemoteException e) {
+                // ignore
+            }
+        }
+        if (registry == null && create) {
+            registry = LocateRegistry.createRegistry(getPort());
+            locallyCreated = true;
+        }
+    }
+
+    public void destroy() throws RemoteException {
+        if (registry != null && locallyCreated) {
+            Registry reg = registry;
+            registry = null;
+            UnicastRemoteObject.unexportObject(reg, true);
+        }
+    }
+
+}

Added: incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/SimpleAuthenticationManager.java
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/SimpleAuthenticationManager.java?rev=587992&view=auto
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/SimpleAuthenticationManager.java (added)
+++ incubator/servicemix/branches/servicemix-4.0/management/core/src/main/java/org/apache/servicemix/management/SimpleAuthenticationManager.java Wed Oct 24 13:03:06 2007
@@ -0,0 +1,71 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.servicemix.management;
+
+import javax.management.remote.JMXAuthenticator;
+import javax.security.auth.Subject;
+import javax.security.auth.login.LoginException;
+
+/**
+ * 
+ */
+public class SimpleAuthenticationManager implements JMXAuthenticator {
+
+    private String login;
+    private String password;
+
+    public String getLogin() {
+        return login;
+    }
+
+    public void setLogin(String login) {
+        this.login = login;
+    }
+
+    public String getPassword() {
+        return password;
+    }
+
+    public void setPassword(String password) {
+        this.password = password;
+    }
+
+    public Subject authenticate(Object credentials) {
+        if (!(credentials instanceof String[])) {
+            throw new IllegalArgumentException("Expected String[2], got " + (credentials != null ? credentials.getClass().getName() : null));
+        }
+        String[] params = (String[]) credentials;
+        if (params.length != 2) {
+            throw new IllegalArgumentException("Expected String[2] but length was " + params.length);
+        }
+        Subject subject = new Subject();
+        try {
+            authenticate(subject, params[0], params[1]);
+        } catch (Exception e) {
+            throw new SecurityException("Error occured while authenticating", e);
+        }
+        return subject;
+    }
+
+    protected void authenticate(Subject subject, String login, String password) {
+        if (login == null && this.login == null) {
+            // TODO
+        }
+    }
+
+
+}

Added: incubator/servicemix/branches/servicemix-4.0/management/core/src/main/resources/META-INF/spring/servicemix-management.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/management/core/src/main/resources/META-INF/spring/servicemix-management.xml?rev=587992&view=auto
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/management/core/src/main/resources/META-INF/spring/servicemix-management.xml (added)
+++ incubator/servicemix/branches/servicemix-4.0/management/core/src/main/resources/META-INF/spring/servicemix-management.xml Wed Oct 24 13:03:06 2007
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+       xmlns:osgi="http://www.springframework.org/schema/osgi"
+       xmlns:osgix="http://www.springframework.org/schema/osgi-compendium"
+       xmlns:util="http://www.springframework.org/schema/util"
+       xsi:schemaLocation="
+  http://www.springframework.org/schema/beans
+  http://www.springframework.org/schema/beans/spring-beans.xsd
+  http://www.springframework.org/schema/util
+  http://www.springframework.org/schema/util/spring-util.xsd
+  http://www.springframework.org/schema/osgi
+  http://www.springframework.org/schema/osgi/spring-osgi-1.0-m3.xsd
+  http://www.springframework.org/schema/osgi-compendium
+  http://www.springframework.org/schema/osgi/spring-osgi-compendium.xsd">
+
+    <!-- MBeanServer bean -->
+    <bean id="mbeanServer" class="org.springframework.jmx.support.MBeanServerFactoryBean">
+        <property name="locateExistingServerIfPossible" value="true"/>
+    </bean>
+
+    <!-- Export the MBeanServer as an OSGi service -->
+    <osgi:service ref="mbeanServer">
+        <osgi:interfaces>
+            <value>javax.management.MBeanServer</value>
+        </osgi:interfaces>
+    </osgi:service>
+
+    <!-- Create a RMI registry -->
+    <bean id="rmiRegistry" class="org.apache.servicemix.management.RmiRegistryFactoryBean">
+        <property name="create" value="true" />
+        <property name="locate" value="true" />
+        <property name="port" value="${rmiRegistryPort}" />
+    </bean>
+
+    <!-- Create a JMX connector ServiceFactory -->
+    <bean id="jmxConnectorServiceFactory" class="org.apache.servicemix.management.JmxConnectorServiceFactory">
+        <property name="environment" ref="jmxConnectorEnvironment" />
+    </bean>
+
+    <!-- Environment map for connectors -->
+    <util:map id="jmxConnectorEnvironment">
+        <entry key="jmx.remote.authenticator" value-ref="jmxAuthenticator" />
+    </util:map>
+
+    <!-- The JMXAuthenticator OSGi reference -->
+    <!-- By default, it will point to the simple authenticator below, unless
+         another one is exported by a bundle with a higher ranking -->
+    <osgi:reference id="jmxAuthenticator" interface="javax.management.remote.JMXAuthenticator" mandatory="false"/>
+
+    <!-- Export the factory as a managed factory in OSGi -->
+    <osgi:service ref="jmxConnectorServiceFactory">
+        <osgi:interfaces>
+            <value>org.osgi.service.cm.ManagedServiceFactory</value>
+        </osgi:interfaces>
+        <osgi:service-properties>
+            <entry key="service.pid" value="org.apache.servicemix.management.JmxConnectorServiceFactory" />
+        </osgi:service-properties>
+    </osgi:service>
+
+    <!-- Property place holder -->
+    <osgix:property-placeholder persistent-id="org.apache.servicemix.management">
+        <osgix:default-properties>
+            <prop key="rmiRegistryPort">1099</prop>
+            <prop key="jmxLogin">smx</prop>
+            <prop key="jmxPassword">smx</prop>
+        </osgix:default-properties>
+    </osgix:property-placeholder>
+
+</beans>
+

Added: incubator/servicemix/branches/servicemix-4.0/management/core/src/test/configs/factories/management.properties
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/management/core/src/test/configs/factories/management.properties?rev=587992&view=auto
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/management/core/src/test/configs/factories/management.properties (added)
+++ incubator/servicemix/branches/servicemix-4.0/management/core/src/test/configs/factories/management.properties Wed Oct 24 13:03:06 2007
@@ -0,0 +1,7 @@
+service.pid=org.apache.servicemix.management.JmxConnectorServiceFactory
+instances=1
+keys=objectName,serviceUrl,threaded,daemon,
+objectName.1=connector:name=rmi
+serviceUrl.1=service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi
+threaded.1=true
+daemon.1=true

Added: incubator/servicemix/branches/servicemix-4.0/management/core/src/test/configs/services/org.ops4j.pax.logging.properties
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/management/core/src/test/configs/services/org.ops4j.pax.logging.properties?rev=587992&view=auto
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/management/core/src/test/configs/services/org.ops4j.pax.logging.properties (added)
+++ incubator/servicemix/branches/servicemix-4.0/management/core/src/test/configs/services/org.ops4j.pax.logging.properties Wed Oct 24 13:03:06 2007
@@ -0,0 +1,34 @@
+# 
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+# 
+#   http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing, software
+# distributed  under the  License is distributed on an "AS IS" BASIS,
+# WITHOUT  WARRANTIES OR CONDITIONS  OF ANY KIND, either  express  or
+# implied.
+#  
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+log4j.rootLogger=DEBUG, out
+
+log4j.logger.org.springframework=DEBUG
+
+# CONSOLE appender not used by default
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} | %-5.5p | %-16.16t | %-32.32c{1} | %-32.32C %4L | %m%n
+
+# File appender
+log4j.appender.out=org.apache.log4j.FileAppender
+log4j.appender.out.layout=org.apache.log4j.PatternLayout
+log4j.appender.out.layout.ConversionPattern=%d{ABSOLUTE} | %-5.5p | %-16.16t | %-32.32c{1} | %-32.32C %4L | %m%n
+log4j.appender.out.file=target/gshell.log
+log4j.appender.out.append=true

Added: incubator/servicemix/branches/servicemix-4.0/management/pom.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/management/pom.xml?rev=587992&view=auto
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/management/pom.xml (added)
+++ incubator/servicemix/branches/servicemix-4.0/management/pom.xml Wed Oct 24 13:03:06 2007
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.apache.servicemix</groupId>
+    <artifactId>servicemix</artifactId>
+    <version>4.0-SNAPSHOT</version>
+  </parent>
+
+  <groupId>org.apache.servicemix.management</groupId>
+  <artifactId>management</artifactId>
+  <packaging>pom</packaging>
+  <version>4.0-SNAPSHOT</version>
+  <name>ServiceMix Management</name>
+
+  <modules>
+    <module>core</module>
+    <module>acegi</module>
+  </modules>
+
+</project>

Modified: incubator/servicemix/branches/servicemix-4.0/nmr/pom.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/nmr/pom.xml?rev=587992&r1=587991&r2=587992&view=diff
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/nmr/pom.xml (original)
+++ incubator/servicemix/branches/servicemix-4.0/nmr/pom.xml Wed Oct 24 13:03:06 2007
@@ -84,6 +84,7 @@
             <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
             <Import-Package></Import-Package>
             <DynamicImport-Package>*</DynamicImport-Package>
+            <Spring-Context>*;publish-context:=false</Spring-Context>
           </instructions>
         </configuration>
       </plugin>

Modified: incubator/servicemix/branches/servicemix-4.0/nmr/src/main/resources/META-INF/spring/servicemix-nmr.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/nmr/src/main/resources/META-INF/spring/servicemix-nmr.xml?rev=587992&r1=587991&r2=587992&view=diff
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/nmr/src/main/resources/META-INF/spring/servicemix-nmr.xml (original)
+++ incubator/servicemix/branches/servicemix-4.0/nmr/src/main/resources/META-INF/spring/servicemix-nmr.xml Wed Oct 24 13:03:06 2007
@@ -43,29 +43,29 @@
 
     <!-- Flow registry and service tracker -->
     <bean id="flowRegistry" class="org.apache.servicemix.core.FlowRegistryImpl" />
-    <osgi:reference id="flows"
-                    interface="org.apache.servicemix.api.internal.Flow"
-                    mandatory="false">
+    <osgi:list id="flows"
+               interface="org.apache.servicemix.api.internal.Flow"
+               mandatory="false">
         <osgi:listener ref="flowRegistry" bind-method="register" unbind-method="unregister" />
-    </osgi:reference>
+    </osgi:list>
 
     <!-- Listener registry and service tracker -->
     <bean id="listenerRegistry" class="org.apache.servicemix.core.ListenerRegistryImpl" />
-    <osgi:reference id="listeners"
-                    interface="org.apache.servicemix.api.event.Listener"
-                    mandatory="false">
+    <osgi:list id="listeners"
+               interface="org.apache.servicemix.api.event.Listener"
+               mandatory="false">
         <osgi:listener ref="listenerRegistry" bind-method="register" unbind-method="unregister" />
-    </osgi:reference>
+    </osgi:list>
 
     <!-- Endpoint registry and service tracker -->
     <bean id="endpointRegistry" class="org.apache.servicemix.core.EndpointRegistryImpl">
         <property name="nmr" ref="servicemix" />
     </bean>
-    <osgi:reference id="endpoints"
-                    interface="org.apache.servicemix.api.Endpoint"
-                    mandatory="false">
+    <osgi:list id="endpoints"
+               interface="org.apache.servicemix.api.Endpoint"
+               mandatory="false">
         <osgi:listener ref="endpointRegistry" bind-method="register" unbind-method="unregister" />
-    </osgi:reference>
+    </osgi:list>
 
     <!-- Register the Straight-Through flow -->
     <bean id="staightThroughFlow" class="org.apache.servicemix.core.StraightThroughFlow" />

Modified: incubator/servicemix/branches/servicemix-4.0/pom.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/pom.xml?rev=587992&r1=587991&r2=587992&view=diff
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/pom.xml (original)
+++ incubator/servicemix/branches/servicemix-4.0/pom.xml Wed Oct 24 13:03:06 2007
@@ -36,11 +36,11 @@
 	<module>bundles</module>
 	<module>jbi</module>
 	<module>gshell</module>
-	<module>transaction</module>
+    <module>transaction</module>
+	<module>management</module>
 	<module>examples</module>
 	<module>itests</module>
 	<module>main</module>
-	<module>daemon</module>
 	<module>apache-servicemix</module>
   </modules>
 
@@ -64,11 +64,13 @@
   <properties>
 	<junit.version>4.4</junit.version>
 	<felix.version>1.0.0</felix.version>
-	<camel.version>1.1-SNAPSHOT</camel.version>
+	<camel.version>1.3-SNAPSHOT</camel.version>
+    <activemq.version>5.0-SNAPSHOT</activemq.version>
 	<spring.osgi.version>1.0-m3</spring.osgi.version>
-	<spring.version>2.1-m4</spring.version>
+	<spring.version>2.5-rc1</spring.version>
 	<commons.logging.version>1.1</commons.logging.version>
 	<gshell.version>1.0-alpha-1-SNAPSHOT</gshell.version>
+	<acegi.version>1.0.0</acegi.version>
   </properties>
 
   <repositories>

Propchange: incubator/servicemix/branches/servicemix-4.0/transaction/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Wed Oct 24 13:03:06 2007
@@ -1,2 +1,5 @@
 target
 runner
+*.iml
+*.ipr
+*.iws

Modified: incubator/servicemix/branches/servicemix-4.0/transaction/pom.xml
URL: http://svn.apache.org/viewvc/incubator/servicemix/branches/servicemix-4.0/transaction/pom.xml?rev=587992&r1=587991&r2=587992&view=diff
==============================================================================
--- incubator/servicemix/branches/servicemix-4.0/transaction/pom.xml (original)
+++ incubator/servicemix/branches/servicemix-4.0/transaction/pom.xml Wed Oct 24 13:03:06 2007
@@ -97,7 +97,14 @@
         <configuration>
           <instructions>
             <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
-            <Import-Package></Import-Package>
+            <Import-Package>
+                javax.transaction*,
+                javax.jms*;resolution:=optional,
+                org.tranql.connector*;resolution:=optional,
+                org.apache.commons.pool*;resolution:=optional,
+                org.enhydra.jdbc*;resolution:=optional,
+                *
+            </Import-Package>
             <DynamicImport-Package>*</DynamicImport-Package>
             <Private-Package>
                 org.apache.geronimo.transaction*,
@@ -105,6 +112,7 @@
                 org.objectweb.howl*,
                 org.jencks*,
             </Private-Package>
+            <Spring-Context>*;publish-context:=false</Spring-Context>
           </instructions>
         </configuration>
       </plugin>