You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by dj...@apache.org on 2011/04/19 00:44:09 UTC

svn commit: r1094800 - in /karaf/trunk: assemblies/apache-karaf-full/ assemblies/apache-karaf-minimal/ assemblies/features/framework/ assemblies/features/framework/src/main/feature/ assemblies/features/framework/src/main/filtered-resources/resources/et...

Author: djencks
Date: Mon Apr 18 22:44:08 2011
New Revision: 1094800

URL: http://svn.apache.org/viewvc?rev=1094800&view=rev
Log:
KARAF-424 Following some suggestions from Guillaume, only use the system repo.  Make sure boot features are started. Move towards using boot features rather than startup.properties

Removed:
    karaf/trunk/assemblies/features/full/src/main/filtered-resources/resources/etc/org.apache.karaf.features.cfg
Modified:
    karaf/trunk/assemblies/apache-karaf-full/pom.xml
    karaf/trunk/assemblies/apache-karaf-minimal/pom.xml
    karaf/trunk/assemblies/features/framework/pom.xml
    karaf/trunk/assemblies/features/framework/src/main/feature/feature.xml
    karaf/trunk/assemblies/features/framework/src/main/filtered-resources/resources/etc/org.apache.karaf.features.cfg
    karaf/trunk/assemblies/features/full/pom.xml
    karaf/trunk/assemblies/features/standard/pom.xml
    karaf/trunk/assemblies/features/standard/src/main/feature/feature.xml
    karaf/trunk/features/core/src/main/java/org/apache/karaf/features/FeaturesService.java
    karaf/trunk/features/core/src/main/java/org/apache/karaf/features/internal/FeaturesServiceImpl.java
    karaf/trunk/features/core/src/main/java/org/apache/karaf/features/internal/model/Features.java
    karaf/trunk/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/GenerateFeaturesXmlMojo2.java
    karaf/trunk/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java

Modified: karaf/trunk/assemblies/apache-karaf-full/pom.xml
URL: http://svn.apache.org/viewvc/karaf/trunk/assemblies/apache-karaf-full/pom.xml?rev=1094800&r1=1094799&r2=1094800&view=diff
==============================================================================
--- karaf/trunk/assemblies/apache-karaf-full/pom.xml (original)
+++ karaf/trunk/assemblies/apache-karaf-full/pom.xml Mon Apr 18 22:44:08 2011
@@ -45,6 +45,7 @@
             <groupId>org.apache.karaf.assemblies.features</groupId>
             <artifactId>karaf-full</artifactId>
             <type>kar</type>
+            <scope>runtime</scope>
         </dependency>
         <dependency>
             <groupId>org.apache.karaf.assemblies.features</groupId>
@@ -84,11 +85,13 @@
                     </execution>
                 </executions>
                 <configuration>
-                    <startupFeatures>
+                    <bootFeatures>
+                        <feature>management</feature>
+                        <feature>standard</feature>
+                        <feature>karaf-full</feature>
                         <feature>ssh</feature>
                         <feature>config</feature>
-                        <feature>management</feature>
-                    </startupFeatures>
+                    </bootFeatures>
                 </configuration>
             </plugin>
 

Modified: karaf/trunk/assemblies/apache-karaf-minimal/pom.xml
URL: http://svn.apache.org/viewvc/karaf/trunk/assemblies/apache-karaf-minimal/pom.xml?rev=1094800&r1=1094799&r2=1094800&view=diff
==============================================================================
--- karaf/trunk/assemblies/apache-karaf-minimal/pom.xml (original)
+++ karaf/trunk/assemblies/apache-karaf-minimal/pom.xml Mon Apr 18 22:44:08 2011
@@ -66,9 +66,10 @@
                     </execution>
                 </executions>
                 <configuration>
-                    <startupFeatures>
+                    <bootFeatures>
                         <feature>management</feature>
-                    </startupFeatures>
+                        <feature>standard</feature>
+                    </bootFeatures>
                 </configuration>
             </plugin>
 

Modified: karaf/trunk/assemblies/features/framework/pom.xml
URL: http://svn.apache.org/viewvc/karaf/trunk/assemblies/features/framework/pom.xml?rev=1094800&r1=1094799&r2=1094800&view=diff
==============================================================================
--- karaf/trunk/assemblies/features/framework/pom.xml (original)
+++ karaf/trunk/assemblies/features/framework/pom.xml Mon Apr 18 22:44:08 2011
@@ -98,34 +98,36 @@
 
 
         <!-- to be added automatically to feature.xml -->
-        <dependency>
-            <groupId>org.apache.karaf.features</groupId>
-            <artifactId>org.apache.karaf.features.core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.features</groupId>
-            <artifactId>org.apache.karaf.features.command</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.features</groupId>
-            <artifactId>org.apache.karaf.features.management</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.diagnostic</groupId>
-            <artifactId>org.apache.karaf.diagnostic.core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.diagnostic</groupId>
-            <artifactId>org.apache.karaf.diagnostic.common</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.diagnostic</groupId>
-            <artifactId>org.apache.karaf.diagnostic.command</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.diagnostic</groupId>
-            <artifactId>org.apache.karaf.diagnostic.management</artifactId>
-        </dependency>
+        <!-- features.core needs to be started before start level 30 -->
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.features</groupId>-->
+            <!--<artifactId>org.apache.karaf.features.core</artifactId>-->
+        <!--</dependency>-->
+
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.features</groupId>-->
+            <!--<artifactId>org.apache.karaf.features.command</artifactId>-->
+        <!--</dependency>-->
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.features</groupId>-->
+            <!--<artifactId>org.apache.karaf.features.management</artifactId>-->
+        <!--</dependency>-->
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.diagnostic</groupId>-->
+            <!--<artifactId>org.apache.karaf.diagnostic.core</artifactId>-->
+        <!--</dependency>-->
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.diagnostic</groupId>-->
+            <!--<artifactId>org.apache.karaf.diagnostic.common</artifactId>-->
+        <!--</dependency>-->
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.diagnostic</groupId>-->
+            <!--<artifactId>org.apache.karaf.diagnostic.command</artifactId>-->
+        <!--</dependency>-->
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.diagnostic</groupId>-->
+            <!--<artifactId>org.apache.karaf.diagnostic.management</artifactId>-->
+        <!--</dependency>-->
         <dependency>
             <groupId>org.apache.karaf.shell</groupId>
             <artifactId>org.apache.karaf.shell.console</artifactId>
@@ -134,34 +136,34 @@
             <groupId>org.apache.karaf.shell</groupId>
             <artifactId>org.apache.karaf.shell.osgi</artifactId>
         </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.shell</groupId>
-            <artifactId>org.apache.karaf.shell.log</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.shell</groupId>
-            <artifactId>org.apache.karaf.shell.packages</artifactId>
-        </dependency>
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.shell</groupId>-->
+            <!--<artifactId>org.apache.karaf.shell.log</artifactId>-->
+        <!--</dependency>-->
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.shell</groupId>-->
+            <!--<artifactId>org.apache.karaf.shell.packages</artifactId>-->
+        <!--</dependency>-->
         <dependency>
             <groupId>org.apache.karaf.shell</groupId>
             <artifactId>org.apache.karaf.shell.commands</artifactId>
         </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.shell</groupId>
-            <artifactId>org.apache.karaf.shell.dev</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.jaas</groupId>
-            <artifactId>org.apache.karaf.jaas.config</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.jaas</groupId>
-            <artifactId>org.apache.karaf.jaas.modules</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.jaas</groupId>
-            <artifactId>org.apache.karaf.jaas.command</artifactId>
-        </dependency>
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.shell</groupId>-->
+            <!--<artifactId>org.apache.karaf.shell.dev</artifactId>-->
+        <!--</dependency>-->
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.jaas</groupId>-->
+            <!--<artifactId>org.apache.karaf.jaas.config</artifactId>-->
+        <!--</dependency>-->
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.jaas</groupId>-->
+            <!--<artifactId>org.apache.karaf.jaas.modules</artifactId>-->
+        <!--</dependency>-->
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.jaas</groupId>-->
+            <!--<artifactId>org.apache.karaf.jaas.command</artifactId>-->
+        <!--</dependency>-->
         <dependency>
             <groupId>org.apache.felix</groupId>
             <artifactId>org.apache.felix.fileinstall</artifactId>

Modified: karaf/trunk/assemblies/features/framework/src/main/feature/feature.xml
URL: http://svn.apache.org/viewvc/karaf/trunk/assemblies/features/framework/src/main/feature/feature.xml?rev=1094800&r1=1094799&r2=1094800&view=diff
==============================================================================
--- karaf/trunk/assemblies/features/framework/src/main/feature/feature.xml (original)
+++ karaf/trunk/assemblies/features/framework/src/main/feature/feature.xml Mon Apr 18 22:44:08 2011
@@ -11,5 +11,6 @@
         <bundle dependency="false" start="true" start-level="20">mvn:org.apache.aries/org.apache.aries.util/${aries.util.version}</bundle>
         <bundle dependency="false" start="true" start-level="20">mvn:org.apache.aries.proxy/org.apache.aries.proxy/${aries.proxy.version}</bundle>
         <bundle dependency="false" start="true" start-level="20">mvn:org.apache.aries.blueprint/org.apache.aries.blueprint/${aries.blueprint.version}</bundle>
+        <bundle dependency="false" start="true" start-level="25">mvn:org.apache.karaf.features/org.apache.karaf.features.core/${project.version}</bundle>
     </feature>
 </features>

Modified: karaf/trunk/assemblies/features/framework/src/main/filtered-resources/resources/etc/org.apache.karaf.features.cfg
URL: http://svn.apache.org/viewvc/karaf/trunk/assemblies/features/framework/src/main/filtered-resources/resources/etc/org.apache.karaf.features.cfg?rev=1094800&r1=1094799&r2=1094800&view=diff
==============================================================================
--- karaf/trunk/assemblies/features/framework/src/main/filtered-resources/resources/etc/org.apache.karaf.features.cfg (original)
+++ karaf/trunk/assemblies/features/framework/src/main/filtered-resources/resources/etc/org.apache.karaf.features.cfg Mon Apr 18 22:44:08 2011
@@ -20,9 +20,9 @@
 #
 # Comma separated list of features repositories to register by default
 #
-featuresRepositories=mvn:org.apache.karaf.assemblies.features/standard/${project.version}/xml/features,mvn:org.apache.karaf.assemblies.features/enterprise/${project.version}/xml/features
+featuresRepositories=
 
 #
 # Comma separated list of features to install at startup
 #
-featuresBoot=management
+featuresBoot=

Modified: karaf/trunk/assemblies/features/full/pom.xml
URL: http://svn.apache.org/viewvc/karaf/trunk/assemblies/features/full/pom.xml?rev=1094800&r1=1094799&r2=1094800&view=diff
==============================================================================
--- karaf/trunk/assemblies/features/full/pom.xml (original)
+++ karaf/trunk/assemblies/features/full/pom.xml Mon Apr 18 22:44:08 2011
@@ -41,14 +41,32 @@
         <dependency>
             <groupId>org.apache.karaf.admin</groupId>
             <artifactId>org.apache.karaf.admin.core</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.karaf.shell</groupId>
+                    <artifactId>org.apache.karaf.shell.console</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
         <dependency>
             <groupId>org.apache.karaf.admin</groupId>
             <artifactId>org.apache.karaf.admin.command</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.karaf.shell</groupId>
+                    <artifactId>org.apache.karaf.shell.console</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
         <dependency>
             <groupId>org.apache.karaf.admin</groupId>
             <artifactId>org.apache.karaf.admin.management</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.karaf.shell</groupId>
+                    <artifactId>org.apache.karaf.shell.console</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
         <dependency>
             <groupId>org.apache.karaf.deployer</groupId>
@@ -61,10 +79,22 @@
         <dependency>
             <groupId>org.apache.karaf.deployer</groupId>
             <artifactId>org.apache.karaf.deployer.features</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.karaf.features</groupId>
+                    <artifactId>org.apache.karaf.features.core</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
         <dependency>
             <groupId>org.apache.karaf.deployer</groupId>
             <artifactId>org.apache.karaf.deployer.kar</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.karaf.features</groupId>
+                    <artifactId>org.apache.karaf.features.core</artifactId>
+                </exclusion>
+            </exclusions>
         </dependency>
         <dependency>
             <groupId>org.apache.karaf.deployer</groupId>

Modified: karaf/trunk/assemblies/features/standard/pom.xml
URL: http://svn.apache.org/viewvc/karaf/trunk/assemblies/features/standard/pom.xml?rev=1094800&r1=1094799&r2=1094800&view=diff
==============================================================================
--- karaf/trunk/assemblies/features/standard/pom.xml (original)
+++ karaf/trunk/assemblies/features/standard/pom.xml Mon Apr 18 22:44:08 2011
@@ -35,6 +35,129 @@
         <appendedResourcesDirectory>${basedir}/../../../../etc/appended-resources</appendedResourcesDirectory>
     </properties>
 
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.karaf.features</groupId>
+            <artifactId>org.apache.karaf.features.command</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.karaf.features</groupId>
+                    <artifactId>org.apache.karaf.features.core</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>org.apache.karaf.shell</groupId>
+                    <artifactId>org.apache.karaf.shell.console</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.karaf.features</groupId>
+            <artifactId>org.apache.karaf.features.management</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.karaf.features</groupId>
+                    <artifactId>org.apache.karaf.features.core</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.karaf.diagnostic</groupId>
+            <artifactId>org.apache.karaf.diagnostic.core</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.karaf.diagnostic</groupId>
+            <artifactId>org.apache.karaf.diagnostic.common</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.karaf.features</groupId>
+                    <artifactId>org.apache.karaf.features.core</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.karaf.diagnostic</groupId>
+            <artifactId>org.apache.karaf.diagnostic.command</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.karaf.shell</groupId>
+                    <artifactId>org.apache.karaf.shell.console</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.karaf.diagnostic</groupId>
+            <artifactId>org.apache.karaf.diagnostic.management</artifactId>
+        </dependency>
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.shell</groupId>-->
+            <!--<artifactId>org.apache.karaf.shell.console</artifactId>-->
+        <!--</dependency>-->
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.shell</groupId>-->
+            <!--<artifactId>org.apache.karaf.shell.osgi</artifactId>-->
+        <!--</dependency>-->
+        <dependency>
+            <groupId>org.apache.karaf.shell</groupId>
+            <artifactId>org.apache.karaf.shell.log</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.karaf.shell</groupId>
+                    <artifactId>org.apache.karaf.shell.console</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>org.ops4j.pax.logging</groupId>
+                    <artifactId>pax-logging-api</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>org.ops4j.pax.logging</groupId>
+                    <artifactId>pax-logging-service</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.karaf.shell</groupId>
+            <artifactId>org.apache.karaf.shell.packages</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.karaf.shell</groupId>
+                    <artifactId>org.apache.karaf.shell.console</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <!--<dependency>-->
+            <!--<groupId>org.apache.karaf.shell</groupId>-->
+            <!--<artifactId>org.apache.karaf.shell.commands</artifactId>-->
+        <!--</dependency>-->
+        <dependency>
+            <groupId>org.apache.karaf.shell</groupId>
+            <artifactId>org.apache.karaf.shell.dev</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.karaf.shell</groupId>
+                    <artifactId>org.apache.karaf.shell.console</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.karaf.jaas</groupId>
+            <artifactId>org.apache.karaf.jaas.config</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.karaf.jaas</groupId>
+            <artifactId>org.apache.karaf.jaas.modules</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.karaf.jaas</groupId>
+            <artifactId>org.apache.karaf.jaas.command</artifactId>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.karaf.shell</groupId>
+                    <artifactId>org.apache.karaf.shell.console</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+    </dependencies>
+
     <build>
         <plugins>
             <plugin>

Modified: karaf/trunk/assemblies/features/standard/src/main/feature/feature.xml
URL: http://svn.apache.org/viewvc/karaf/trunk/assemblies/features/standard/src/main/feature/feature.xml?rev=1094800&r1=1094799&r2=1094800&view=diff
==============================================================================
--- karaf/trunk/assemblies/features/standard/src/main/feature/feature.xml (original)
+++ karaf/trunk/assemblies/features/standard/src/main/feature/feature.xml Mon Apr 18 22:44:08 2011
@@ -71,7 +71,7 @@
         <bundle>mvn:org.apache.karaf.features/org.apache.karaf.features.obr/${project.version}</bundle>
     </feature>
     <feature name="config" version="${project.version}">
-        <bundle start-level='30'>mvn:org.apache.karaf.shell/org.apache.karaf.shell.config/${project.version}</bundle>
+        <bundle start-level='30' start='true'>mvn:org.apache.karaf.shell/org.apache.karaf.shell.config/${project.version}</bundle>
     </feature>
 	<feature name="jetty" version="${jetty.version}" resolver="(obr)">
 		<bundle dependency='true'>mvn:org.apache.geronimo.specs/geronimo-servlet_2.5_spec/${geronimo.servlet.version}</bundle>
@@ -152,14 +152,14 @@
             sshRealm=karaf
             hostKey=${karaf.base}/etc/host.key
         </config>
-        <bundle dependency='true'>mvn:org.apache.mina/mina-core/${mina.version}</bundle>
-        <bundle dependency='true'>mvn:org.apache.sshd/sshd-core/${sshd.version}</bundle>
-        <bundle>mvn:org.apache.karaf.shell/org.apache.karaf.shell.ssh/${project.version}</bundle>
+        <bundle start-level='30' start='true'>mvn:org.apache.mina/mina-core/${mina.version}</bundle>
+        <bundle start-level='30' start='true'>mvn:org.apache.sshd/sshd-core/${sshd.version}</bundle>
+        <bundle start-level='30' start='true'>mvn:org.apache.karaf.shell/org.apache.karaf.shell.ssh/${project.version}</bundle>
     </feature>
     <feature name="management" version="${project.version}">
-        <bundle>mvn:org.apache.karaf/org.apache.karaf.management/${project.version}</bundle>
-        <bundle>mvn:org.apache.aries.jmx/org.apache.aries.jmx/${aries.jmx.version}</bundle>
-        <bundle>mvn:org.apache.aries.jmx/org.apache.aries.jmx.blueprint/${aries.jmx.version}</bundle>
+        <bundle start-level='30' start='true'>mvn:org.apache.karaf/org.apache.karaf.management/${project.version}</bundle>
+        <bundle start-level='30' start='true'>mvn:org.apache.aries.jmx/org.apache.aries.jmx/${aries.jmx.version}</bundle>
+        <bundle start-level='30' start='true'>mvn:org.apache.aries.jmx/org.apache.aries.jmx.blueprint/${aries.jmx.version}</bundle>
     </feature>
     <feature name="eventadmin" version="${project.version}">
 		<bundle start-level='30'>mvn:org.apache.felix/org.apache.felix.eventadmin/${felix.eventadmin.version}</bundle>

Modified: karaf/trunk/features/core/src/main/java/org/apache/karaf/features/FeaturesService.java
URL: http://svn.apache.org/viewvc/karaf/trunk/features/core/src/main/java/org/apache/karaf/features/FeaturesService.java?rev=1094800&r1=1094799&r2=1094800&view=diff
==============================================================================
--- karaf/trunk/features/core/src/main/java/org/apache/karaf/features/FeaturesService.java (original)
+++ karaf/trunk/features/core/src/main/java/org/apache/karaf/features/FeaturesService.java Mon Apr 18 22:44:08 2011
@@ -30,7 +30,8 @@ public interface FeaturesService {
         PrintBundlesToRefresh,
         NoAutoRefreshBundles,
         ContinueBatchOnFailure,
-        Verbose
+        Verbose ,
+        ForceStart
     }
 
     /**

Modified: karaf/trunk/features/core/src/main/java/org/apache/karaf/features/internal/FeaturesServiceImpl.java
URL: http://svn.apache.org/viewvc/karaf/trunk/features/core/src/main/java/org/apache/karaf/features/internal/FeaturesServiceImpl.java?rev=1094800&r1=1094799&r2=1094800&view=diff
==============================================================================
--- karaf/trunk/features/core/src/main/java/org/apache/karaf/features/internal/FeaturesServiceImpl.java (original)
+++ karaf/trunk/features/core/src/main/java/org/apache/karaf/features/internal/FeaturesServiceImpl.java Mon Apr 18 22:44:08 2011
@@ -345,7 +345,7 @@ public class FeaturesServiceImpl impleme
                     	// do no start bundles when user request it
                     	Long bundleId = b.getBundleId();
                     	BundleInfo bundleInfo = state.bundleInfos.get(bundleId);
-                        if (bundleInfo == null || bundleInfo.isStart()) {
+                        if (bundleInfo == null || bundleInfo.isStart() ||options.contains(FeaturesService.Option.ForceStart)) {
 	                        try {
 	                            b.start();
 	                        } catch (BundleException be) {
@@ -960,7 +960,7 @@ public class FeaturesServiceImpl impleme
                         }
                     }
                     try {
-                        installFeatures(features, EnumSet.of(Option.NoCleanIfFailure, Option.ContinueBatchOnFailure));
+                        installFeatures(features, EnumSet.of(Option.NoCleanIfFailure, Option.ContinueBatchOnFailure, Option.ForceStart));
                     } catch (Exception e) {
                         LOGGER.error("Error installing boot features", e);
                     }

Modified: karaf/trunk/features/core/src/main/java/org/apache/karaf/features/internal/model/Features.java
URL: http://svn.apache.org/viewvc/karaf/trunk/features/core/src/main/java/org/apache/karaf/features/internal/model/Features.java?rev=1094800&r1=1094799&r2=1094800&view=diff
==============================================================================
--- karaf/trunk/features/core/src/main/java/org/apache/karaf/features/internal/model/Features.java (original)
+++ karaf/trunk/features/core/src/main/java/org/apache/karaf/features/internal/model/Features.java Mon Apr 18 22:44:08 2011
@@ -70,7 +70,7 @@ public class Features {
     protected List<String> repository;
     protected List<Feature> feature;
     @XmlAttribute
-    protected String name ="<unnamed>";
+    protected String name;
 
     /**
      * Gets the value of the repository property.

Modified: karaf/trunk/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/GenerateFeaturesXmlMojo2.java
URL: http://svn.apache.org/viewvc/karaf/trunk/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/GenerateFeaturesXmlMojo2.java?rev=1094800&r1=1094799&r2=1094800&view=diff
==============================================================================
--- karaf/trunk/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/GenerateFeaturesXmlMojo2.java (original)
+++ karaf/trunk/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/GenerateFeaturesXmlMojo2.java Mon Apr 18 22:44:08 2011
@@ -259,7 +259,7 @@ public class GenerateFeaturesXmlMojo2 ex
         } else {
             features = objectFactory.createFeaturesRoot();
         }
-        if (features.getName() == null) {
+        if (features.getName() == null ) {
             features.setName(project.getArtifactId());
         }
 

Modified: karaf/trunk/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java
URL: http://svn.apache.org/viewvc/karaf/trunk/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java?rev=1094800&r1=1094799&r2=1094800&view=diff
==============================================================================
--- karaf/trunk/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java (original)
+++ karaf/trunk/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java Mon Apr 18 22:44:08 2011
@@ -29,7 +29,6 @@ import java.io.InputStream;
 import java.io.OutputStream;
 import java.lang.reflect.Field;
 import java.net.URI;
-import java.net.URISyntaxException;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collection;
@@ -107,19 +106,10 @@ public class InstallKarsMojo extends Moj
 
     /**
      * if false, unpack to system and add bundles to startup.properties
-     * if true, unpack to local-repo and add feature to features config
+     * if true, unpack to system and add feature to features config
      *
-//     * @parameter
      */
-    protected boolean unpackToLocalRepo;
-
-    /**
-     * Directory that resources are copied to during the build.
-     *
-     * @parameter expression="${project.build.directory}/assembly/local-repo"
-     * @required
-     */
-    protected File localRepoDirectory;
+    protected boolean dontAddToStartup;
 
     /**
      * Directory that resources are copied to during the build.
@@ -174,9 +164,7 @@ public class InstallKarsMojo extends Moj
      */
     private List<RemoteRepository> remoteRepos;
 
-    private URI localRepo;
     private URI system;
-    private URI repoPath;
     private CommentProperties startupProperties = new CommentProperties();
 
     /**
@@ -185,8 +173,6 @@ public class InstallKarsMojo extends Moj
     private List<Feature> localRepoFeatures = new ArrayList<Feature>();
 
     public void execute() throws MojoExecutionException, MojoFailureException {
-        localRepoDirectory.mkdirs();
-        localRepo = localRepoDirectory.toURI();
         systemDirectory.mkdirs();
         system = systemDirectory.toURI();
         if (startupPropertiesFile.exists()) {
@@ -215,9 +201,8 @@ public class InstallKarsMojo extends Moj
         StringBuilder buf = new StringBuilder();
         byte[] buffer = new byte[4096];
         for (Artifact artifact: dependencies) {
-            unpackToLocalRepo = "runtime".equals(artifact.getScope());
-            repoPath = unpackToLocalRepo ? localRepo : system;
-            installer.setLocalRepoPath(repoPath.getPath());
+            dontAddToStartup = "runtime".equals(artifact.getScope());
+            installer.setLocalRepoPath(system.getPath());
             if ("kar".equals(artifact.getType()) && acceptScope(artifact)) {
                 File file = artifact.getFile();
                 try {
@@ -235,7 +220,7 @@ public class InstallKarsMojo extends Moj
 
                 //remove timestamp version
                 artifact = factory.createArtifactWithClassifier(artifact.getGroupId(), artifact.getArtifactId(), artifact.getBaseVersion(), artifact.getType(), artifact.getClassifier());
-                File target = new File(repoPath.resolve(layout.pathOf(artifact)));
+                File target = new File(system.resolve(layout.pathOf(artifact)));
                 if (!target.exists()) {
                     target.getParentFile().mkdirs();
                     try {
@@ -278,7 +263,7 @@ public class InstallKarsMojo extends Moj
                     String path = MvnUrlUtil.pathFromMaven(key);
                     File test = new File(system.resolve(path));
                     if (!test.exists()) {
-                        File target = new File(localRepo.resolve(path));
+                        File target = new File(system.resolve(path));
                         if (!target.exists()) {
                             install(buffer, key, target);
                         }
@@ -355,8 +340,8 @@ public class InstallKarsMojo extends Moj
         }
 
         public void addRepository(URI uri) throws Exception {
-            if (unpackToLocalRepo) {
-                getLog().info("Adding feature repository to local-repo: " + uri);
+            if (dontAddToStartup) {
+                getLog().info("Adding feature repository to system: " + uri);
                 if (featuresCfgFile.exists()) {
                     Properties properties = new Properties();
                     InputStream in = new FileInputStream(featuresCfgFile);
@@ -365,7 +350,7 @@ public class InstallKarsMojo extends Moj
                     } finally {
                         in.close();
                     }
-                    String existingFeatureRepos = properties.containsKey(FEATURES_REPOSITORIES)? properties.get(FEATURES_REPOSITORIES) + ",": "";
+                    String existingFeatureRepos = properties.containsKey(FEATURES_REPOSITORIES) && !properties.get(FEATURES_REPOSITORIES).isEmpty()? properties.get(FEATURES_REPOSITORIES) + ",": "";
                     existingFeatureRepos = existingFeatureRepos + uri.toString();
                     properties.put(FEATURES_REPOSITORIES, existingFeatureRepos);
                     Features repo = readFeatures(uri);
@@ -374,10 +359,10 @@ public class InstallKarsMojo extends Moj
                             installFeature(feature, null);
                         } else if (bootFeatures != null && bootFeatures.contains(feature.getName())) {
                             localRepoFeatures.add(feature);
-                            String existingBootFeatures = properties.containsKey(FEATURES_BOOT)? properties.get(FEATURES_BOOT) + ",": "";
+                            String existingBootFeatures = properties.containsKey(FEATURES_BOOT) && !properties.get(FEATURES_BOOT).isEmpty()? properties.get(FEATURES_BOOT) + ",": "";
                             existingBootFeatures = existingBootFeatures + feature.getName();
                             properties.put(FEATURES_BOOT, existingBootFeatures);
-                        }  else if (installedFeatures != null && installedFeatures.contains(featuresCfgFile.getName())) {
+                        }  else if (installedFeatures != null && installedFeatures.contains(feature.getName())) {
                             localRepoFeatures.add(feature);
                         }
                     }
@@ -400,7 +385,7 @@ public class InstallKarsMojo extends Moj
         private Features readFeatures(URI uri) throws XMLStreamException, JAXBException, IOException {
             File repoFile;
             if (uri.toString().startsWith("mvn:")) {
-                URI featuresPath = repoPath.resolve(MvnUrlUtil.pathFromMaven(uri.toString()));
+                URI featuresPath = system.resolve(MvnUrlUtil.pathFromMaven(uri.toString()));
                 repoFile = new File(featuresPath);
             } else {
                 repoFile = new File(uri);