Clean up versions, make features deployable again. Integration test update
authorŁukasz Dywicki <ldywicki@apache.org>
Wed, 28 Dec 2011 13:29:58 +0000 (13:29 +0000)
committerŁukasz Dywicki <ldywicki@apache.org>
Wed, 28 Dec 2011 13:29:58 +0000 (13:29 +0000)
Signed-off-by: Lukasz Dywicki <luke@code-house.org>
git-svn-id: https://svn.apache.org/repos/asf/karaf/webconsole/trunk@1225182 13f79535-47bb-0310-9956-ffa450edef68

features/src/main/filtered-resources/features.xml
itest/src/test/java/org/apache/karaf/webconsole/itest/FeaturesIntegrationTest.java
osgi/pom.xml
osgi/scr/pom.xml
pom.xml

index f5320bc..9ce91ac 100644 (file)
 
   <feature name="webconsole-wicket" version="${project.version}" description="Karaf Wicket Webconsole">
     <feature>webconsole-core</feature>
+    <feature>webconsole-karaf</feature>
     <feature>webconsole-osgi</feature>
+    <feature>webconsole-config</feature>
+    <feature>webconsole-log</feature>
+    <feature>webconsole-event</feature>
     <feature>webconsole-blueprint</feature>
-    <feature>webconsole-karaf</feature>
+    <feature>webconsole-scr</feature>
   </feature>
+
   <!-- Pax-Wicket Core Feature; loading all required features. Do a feature:install paxwicket and you're ready to go -->
-  <feature name="webconsole-core" version="${project.version}" description="Karaf Webconsole Core">
+  <feature name="webconsole-core" version="${project.version}" description="Karaf WebConsole Core">
     <details>The Webconsole core package provides the base view required for all bundles</details>
     <feature>wicket-spring</feature>
     <bundle>mvn:org.apache.felix/org.apache.felix.prefs/${felix-prefs.version}</bundle>
     <bundle>mvn:org.apache.karaf.webconsole/org.apache.karaf.webconsole.core/${project.version}</bundle>
   </feature>
 
-  <feature name="webconsole-osgi" version="${project.version}" description="Karaf Webconsole OSGi">
+  <feature name="webconsole-osgi" version="${project.version}" description="Karaf WebConsole OSGi Core">
     <details>Adds support for osgi packages to the webconsole.</details>
     <feature>webconsole-core</feature>
+    <bundle>mvn:org.apache.karaf.webconsole.osgi/org.apache.karaf.webconsole.osgi.framework/${project.version}</bundle>
+    <bundle>mvn:org.apache.karaf.webconsole.osgi/org.apache.karaf.webconsole.osgi.bundle/${project.version}</bundle>
+  </feature>
+
+  <feature name="webconsole-config" version="${project.version}" description="Karaf WebConsole OSGi ConfigurationAdmin">
+    <details>Adds support for osgi configuration admin.</details>
+    <feature>webconsole-osgi</feature>
     <bundle>mvn:org.apache.felix/org.apache.felix.metatype/${felix-metatype.version}</bundle>
-    <bundle>mvn:org.apache.karaf.webconsole/org.apache.karaf.webconsole.osgi/${project.version}</bundle>
+    <bundle>mvn:org.apache.karaf.webconsole.osgi/org.apache.karaf.webconsole.osgi.config/${project.version}</bundle>
+  </feature>
+
+  <feature name="webconsole-log" version="${project.version}" description="Karaf WebConsole OSGi LogService">
+    <details>Adds support for osgi log service.</details>
+    <feature>webconsole-osgi</feature>
+    <bundle>mvn:org.apache.karaf.webconsole.osgi/org.apache.karaf.webconsole.osgi.log/${project.version}</bundle>
   </feature>
 
-  <feature name="webconsole-karaf" version="${project.version}" description="Karaf Webconsole Features">
+  <feature name="webconsole-event" version="${project.version}" description="Karaf WebConsole OSGi EventAdmin">
+    <details>Adds support for osgi event admin service.</details>
+    <feature>webconsole-osgi</feature>
+    <bundle>mvn:org.apache.karaf.webconsole.osgi/org.apache.karaf.webconsole.osgi.event/${project.version}</bundle>
+  </feature>
+
+  <feature name="webconsole-karaf" version="${project.version}" description="Karaf WebConsole Features">
     <details>Karaf bundle will contain all the pages and java classes about content specific to Karaf like features,repositories and obr.</details>
     <feature>webconsole-core</feature>
     <bundle>mvn:org.apache.karaf.webconsole/org.apache.karaf.webconsole.karaf/${project.version}</bundle>
   </feature>
 
-  <feature name="webconsole-blueprint" version="${project.version}" description="Karaf Webconsole Blueprint">
+  <feature name="webconsole-blueprint" version="${project.version}" description="Karaf WebConsole Blueprint">
     <details>Adds support for blueprint specific features to the webconsole.</details>
-    <feature>webconsole-core</feature>
-    <bundle>mvn:org.apache.karaf.webconsole/org.apache.karaf.webconsole.blueprint/${project.version}</bundle>
+    <feature>webconsole-osgi</feature>
+    <bundle>mvn:org.apache.karaf.webconsole.osgi/org.apache.karaf.webconsole.osgi.blueprint/${project.version}</bundle>
+  </feature>
+
+  <feature name="webconsole-scr" version="${project.version}" description="Karaf WebConsole Felix SCR plugin">
+    <details>Adds support for osgi Service Components. This feature also install felix scr runtime.</details>
+    <feature>webconsole-osgi</feature>
+    <bundle>mvn:org.apache.felix/org.apache.felix.scr/${felix-scr.version}</bundle>
+    <bundle>mvn:org.apache.karaf.webconsole.osgi/org.apache.karaf.webconsole.osgi.log/${project.version}</bundle>
   </feature>
 
 </features>
index aba52ff..5579716 100644 (file)
@@ -21,6 +21,8 @@ import static org.openengsb.labs.paxexam.karaf.options.KarafDistributionOption.k
 import static org.ops4j.pax.exam.CoreOptions.maven;
 import static org.ops4j.pax.exam.CoreOptions.systemProperty;
 
+import java.io.ByteArrayInputStream;
+import java.io.InputStream;
 import java.net.URI;
 import java.util.ArrayList;
 import java.util.List;
@@ -77,6 +79,20 @@ public class FeaturesIntegrationTest {
             installed.add(feature.getName());
         }
 
-        assertTrue("Webconsole feature should be installed", installed.contains("webconsole-wicket"));
+        assertIstalled("webconsole-wicket");
+        assertIstalled("webconsole-core");
+        assertIstalled("webconsole-karaf");
+        assertIstalled("webconsole-osgi");
+        assertIstalled("webconsole-config");
+        assertIstalled("webconsole-log");
+        assertIstalled("webconsole-event");
+        assertIstalled("webconsole-blueprint");
+        assertIstalled("webconsole-scr");
+    }
+
+    private void assertIstalled(String featureName) throws Exception {
+        Feature feature = features.getFeature(featureName);
+
+        assertTrue("Feature " + featureName + " should be installed", features.isInstalled(feature));
     }
 }
index e3c2090..5ac99ea 100644 (file)
@@ -37,6 +37,7 @@
         <module>config</module>
         <module>framework</module>
         <module>blueprint</module>
+        <module>scr</module>
     </modules>
 
     <dependencyManagement>
index c5a84ce..0a292e9 100644 (file)
@@ -40,7 +40,6 @@
         <dependency>
             <groupId>org.apache.felix</groupId>
             <artifactId>org.apache.felix.scr</artifactId>
-            <version>1.6.0</version>
         </dependency>
     </dependencies>
 
diff --git a/pom.xml b/pom.xml
index 34532bf..78b2b53 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -31,6 +31,7 @@
         <jetty.version>6.1.25</jetty.version>
         <felix-metatype.version>1.0.4</felix-metatype.version>
         <felix-prefs.version>1.0.4</felix-prefs.version>
+        <felix-scr.version>1.6.0</felix-scr.version>
         <slf4j.version>1.5.8</slf4j.version>
         <log4j.version>1.2.14</log4j.version>
         <ops4j.paxwicket.version>0.8.0-SNAPSHOT</ops4j.paxwicket.version>
@@ -43,7 +44,6 @@
     <modules>
         <module>core</module>
         <module>osgi</module>
-        <module>blueprint</module>
         <module>karaf</module>
         <module>features</module>
         <module>servicemix</module>
                 <artifactId>org.apache.felix.prefs</artifactId>
                 <version>${felix-prefs.version}</version>
             </dependency>
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.scr</artifactId>
+                <version>${felix-scr.version}</version>
+            </dependency>
 
             <dependency>
                 <groupId>org.osgi</groupId>