Author: ieugen
Date: Thu Feb  7 10:56:08 2013
New Revision: 1443399

URL: http://svn.apache.org/viewvc?rev=1443399&view=rev
Log:
Almost done - still need to cross commons-configuration

Added:
    james/server/trunk/karaf/
    james/server/trunk/karaf/build.sh   (with props)
    james/server/trunk/karaf/distribution/
    james/server/trunk/karaf/distribution/pom.xml
    james/server/trunk/karaf/distribution/src/
    james/server/trunk/karaf/distribution/src/main/
    james/server/trunk/karaf/distribution/src/main/assembly/
    james/server/trunk/karaf/distribution/src/main/assembly/unix.xml
    james/server/trunk/karaf/distribution/src/main/filtered-resources/
    james/server/trunk/karaf/distribution/src/main/filtered-resources/etc/
    
james/server/trunk/karaf/distribution/src/main/filtered-resources/etc/org.apache.karaf.features.cfg
    james/server/trunk/karaf/features/
    james/server/trunk/karaf/features/pom.xml
    james/server/trunk/karaf/features/src/
    james/server/trunk/karaf/features/src/main/
    james/server/trunk/karaf/features/src/main/resources/
    james/server/trunk/karaf/features/src/main/resources/features.xml
    james/server/trunk/karaf/integration/
    james/server/trunk/karaf/integration/pom.xml
    james/server/trunk/karaf/integration/src/
    james/server/trunk/karaf/integration/src/test/
    james/server/trunk/karaf/integration/src/test/java/
    james/server/trunk/karaf/integration/src/test/java/org/
    james/server/trunk/karaf/integration/src/test/java/org/apache/
    james/server/trunk/karaf/integration/src/test/java/org/apache/james/
    james/server/trunk/karaf/integration/src/test/java/org/apache/james/karaf/
    
james/server/trunk/karaf/integration/src/test/java/org/apache/james/karaf/karaf/
    
james/server/trunk/karaf/integration/src/test/java/org/apache/james/karaf/karaf/KarafFeatureInstallTest.java
Modified:
    james/server/trunk/pom.xml

Added: james/server/trunk/karaf/build.sh
URL: 
http://svn.apache.org/viewvc/james/server/trunk/karaf/build.sh?rev=1443399&view=auto
==============================================================================
--- james/server/trunk/karaf/build.sh (added)
+++ james/server/trunk/karaf/build.sh Thu Feb  7 10:56:08 2013
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+(cd features && mvn clean install)
+(cd integration && mvn clean install)
+(cd distribution && mvn clean install)

Propchange: james/server/trunk/karaf/build.sh
------------------------------------------------------------------------------
    svn:executable = *

Added: james/server/trunk/karaf/distribution/pom.xml
URL: 
http://svn.apache.org/viewvc/james/server/trunk/karaf/distribution/pom.xml?rev=1443399&view=auto
==============================================================================
--- james/server/trunk/karaf/distribution/pom.xml (added)
+++ james/server/trunk/karaf/distribution/pom.xml Thu Feb  7 10:56:08 2013
@@ -0,0 +1,95 @@
+<?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/xsd/maven-4.0.0.xsd";>
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.apache.james</groupId>
+        <artifactId>james-server</artifactId>
+        <version>3.0-beta5-SNAPSHOT</version>
+        <relativePath>../../pom.xml</relativePath>
+    </parent>
+
+    <groupId>org.apache.james.karaf</groupId>
+    <artifactId>distribution</artifactId>
+    <packaging>pom</packaging>
+
+    <name>Apache James :: Karaf :: James Server</name>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.karaf</groupId>
+            <artifactId>apache-karaf</artifactId>
+            <version>${apache-karaf.version}</version>
+            <type>tar.gz</type>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.karaf.assemblies.features</groupId>
+            <artifactId>standard</artifactId>
+            <version>${apache-karaf.version}</version>
+            <type>xml</type>
+            <classifier>features</classifier>
+        </dependency>
+    </dependencies>
+
+
+    <build>
+        <resources>
+            <resource>
+                
<directory>/x1/asf/kar230/manual/src/main/filtered-resources</directory>
+                <filtering>true</filtering>
+                <includes>
+                    <include>**/*</include>
+                </includes>
+            </resource>
+        </resources>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <!-- Uncompress the standard Karaf distribution -->
+                        <id>unpack</id>
+                        <phase>generate-resources</phase>
+                        <goals>
+                            <goal>unpack</goal>
+                        </goals>
+                        <configuration>
+                            <artifactItems>
+                                <artifactItem>
+                                    <groupId>org.apache.karaf</groupId>
+                                    <artifactId>apache-karaf</artifactId>
+                                    <version>${apache-karaf.version}</version>
+                                    <type>tar.gz</type>
+                                    
<outputDirectory>target/dependencies</outputDirectory>
+                                </artifactItem>
+                            </artifactItems>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-assembly-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>bin</id>
+                        <phase>package</phase>
+                        <goals>
+                            <goal>single</goal>
+                        </goals>
+                        <configuration>
+                            <descriptors>
+                                
<descriptor>src/main/assembly/unix.xml</descriptor>
+                            </descriptors>
+                            <appendAssemblyId>false</appendAssemblyId>
+                            <tarLongFileMode>gnu</tarLongFileMode>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>

Added: james/server/trunk/karaf/distribution/src/main/assembly/unix.xml
URL: 
http://svn.apache.org/viewvc/james/server/trunk/karaf/distribution/src/main/assembly/unix.xml?rev=1443399&view=auto
==============================================================================
--- james/server/trunk/karaf/distribution/src/main/assembly/unix.xml (added)
+++ james/server/trunk/karaf/distribution/src/main/assembly/unix.xml Thu Feb  7 
10:56:08 2013
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Copyright (c) 2012 S.C. Axemblr Software Solutions S.R.L
+  ~
+  ~ Licensed 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.
+  -->
+
+<assembly>
+    <id>james-karaf-assembly</id>
+    <formats>
+        <format>tar.gz</format>
+    </formats>
+
+    <fileSets>
+        <!-- Strip the Karaf distribution -->
+        <fileSet>
+            
<directory>target/dependencies/unix/apache-karaf-${karaf.version}</directory>
+            <outputDirectory>/</outputDirectory>
+            <excludes>
+                <exclude>**/demos/**</exclude>
+                <exclude>lib/karaf-version.jar</exclude>
+                <exclude>bin/**</exclude>
+                <exclude>etc/org.apache.karaf.features.cfg</exclude>
+                <exclude>readme.txt</exclude>
+                <exclude>LICENSE</exclude>
+                <exclude>NOTICE</exclude>
+                <exclude>README</exclude>
+                <exclude>RELEASE-NOTES</exclude>
+                <exclude>karaf-manual*</exclude>
+            </excludes>
+        </fileSet>
+
+        <!-- Copy over bin/* scripts separately to get the correct file mode 
-->
+        <fileSet>
+            
<directory>target/dependencies/unix/apache-karaf-${karaf.version}</directory>
+            <outputDirectory>/</outputDirectory>
+            <includes>
+                <include>bin/*</include>
+            </includes>
+            <fileMode>0755</fileMode>
+        </fileSet>
+
+        <!-- Copy over resources -->
+        <fileSet>
+            <directory>target/classes/etc</directory>
+            <outputDirectory>/etc/</outputDirectory>
+            <includes>
+                <include>*.*</include>
+            </includes>
+            <lineEnding>unix</lineEnding>
+            <fileMode>0644</fileMode>
+        </fileSet>
+
+        <!-- Add features to system repository -->
+        <fileSet>
+            <outputDirectory>system</outputDirectory>
+            <directory>target/features-repo</directory>
+        </fileSet>
+    </fileSets>
+
+    <files>
+        <file>
+            
<source>${basedir}/target/dependencies/unix/apache-karaf-${karaf.version}/bin/karaf</source>
+            <outputDirectory>/bin/</outputDirectory>
+            <destName>provisionr</destName>
+            <fileMode>0755</fileMode>
+            <lineEnding>unix</lineEnding>
+        </file>
+    </files>
+
+    <dependencySets>
+        <dependencySet>
+            <outputDirectory>/lib</outputDirectory>
+            <outputFileNameMapping>james-version.jar</outputFileNameMapping>
+            <fileMode>0644</fileMode>
+            <useTransitiveDependencies>false</useTransitiveDependencies>
+        </dependencySet>
+    </dependencySets>
+</assembly>
\ No newline at end of file

Added: 
james/server/trunk/karaf/distribution/src/main/filtered-resources/etc/org.apache.karaf.features.cfg
URL: 
http://svn.apache.org/viewvc/james/server/trunk/karaf/distribution/src/main/filtered-resources/etc/org.apache.karaf.features.cfg?rev=1443399&view=auto
==============================================================================
--- 
james/server/trunk/karaf/distribution/src/main/filtered-resources/etc/org.apache.karaf.features.cfg
 (added)
+++ 
james/server/trunk/karaf/distribution/src/main/filtered-resources/etc/org.apache.karaf.features.cfg
 Thu Feb  7 10:56:08 2013
@@ -0,0 +1,28 @@
+################################################################################
+#
+#    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.
+#
+################################################################################
+
+#
+# Comma separated list of features repositories to register by default
+#
+featuresRepositories=mvn:org.apache.james.karaf/james-karaf-features/${project.version}/xml/features
+
+#
+# Comma separated list of features to install at startup
+#
+featuresBoot=config,ssh,management,kar

Added: james/server/trunk/karaf/features/pom.xml
URL: 
http://svn.apache.org/viewvc/james/server/trunk/karaf/features/pom.xml?rev=1443399&view=auto
==============================================================================
--- james/server/trunk/karaf/features/pom.xml (added)
+++ james/server/trunk/karaf/features/pom.xml Thu Feb  7 10:56:08 2013
@@ -0,0 +1,100 @@
+<?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/xsd/maven-4.0.0.xsd";>
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.apache.james</groupId>
+        <artifactId>james-server</artifactId>
+        <version>3.0-beta5-SNAPSHOT</version>
+        <relativePath>../../pom.xml</relativePath>
+    </parent>
+
+    <groupId>org.apache.james.karaf</groupId>
+    <artifactId>james-karaf-features</artifactId>
+    <packaging>pom</packaging>
+    <name>Apache James :: Karaf :: Features</name>
+
+    <properties>
+        <mime4j.version>0.7.2</mime4j.version>
+        <jutf7.version>1.0.0</jutf7.version>
+        <commons-dbcp-bundle.version>1.4_3</commons-dbcp-bundle.version>
+    </properties>
+
+    <build>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+                <filtering>true</filtering>
+                <targetPath>${project.build.directory}</targetPath>
+            </resource>
+        </resources>
+
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-resources-plugin</artifactId>
+                <version>2.6</version>
+                <executions>
+                    <execution>
+                        <id>filter</id>
+                        <phase>generate-resources</phase>
+                        <goals>
+                            <goal>resources</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+
+            <plugin>
+                <!-- validate the feature -->
+                <groupId>org.apache.karaf.tooling</groupId>
+                <artifactId>features-maven-plugin</artifactId>
+                <version>2.2.9</version>
+                <executions>
+                    <execution>
+                        <id>validate</id>
+                        <phase>process-resources</phase>
+                        <goals>
+                            <goal>validate</goal>
+                        </goals>
+                        <configuration>
+                            
<file>${project.build.directory}/features.xml</file>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+
+            <!--
+             TODO: karaf-tooling project makes things easier - need to inspect 
!
+             deploy the feature.xml file in maven repo, install in karaf with:
+             features:addurl 
mvn:com.axemblr.provisionr/provisionr-features/0.0.1-SNAPSHOT/xml/features
+             features:install <feature-name>
+             -->
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>build-helper-maven-plugin</artifactId>
+                <version>1.7</version>
+                <executions>
+                    <execution>
+                        <id>attach-artifacts</id>
+                        <phase>package</phase>
+                        <goals>
+                            <goal>attach-artifact</goal>
+                        </goals>
+                        <configuration>
+                            <artifacts>
+                                <artifact>
+                                    
<file>${project.build.directory}/features.xml</file>
+                                    <type>xml</type>
+                                    <classifier>features</classifier>
+                                </artifact>
+                            </artifacts>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
\ No newline at end of file

Added: james/server/trunk/karaf/features/src/main/resources/features.xml
URL: 
http://svn.apache.org/viewvc/james/server/trunk/karaf/features/src/main/resources/features.xml?rev=1443399&view=auto
==============================================================================
--- james/server/trunk/karaf/features/src/main/resources/features.xml (added)
+++ james/server/trunk/karaf/features/src/main/resources/features.xml Thu Feb  
7 10:56:08 2013
@@ -0,0 +1,332 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<features name="apache-james-features-${project.version}" 
xmlns="http://karaf.apache.org/xmlns/features/v1.0.0";
+          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+          xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.0.0 ">
+
+    <feature name="apache-james-mime4j" version="${mime4j.version}">
+        
<bundle>mvn:org.apache.james/apache-mime4j-core/${mime4j.version}</bundle>
+        
<bundle>mvn:org.apache.james/apache-mime4j-dom/${mime4j.version}</bundle>
+    </feature>
+
+    <!-- james 3.0-beta5 features -->
+    <feature name="james-server-lifecycle-api" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-lifecycle-api/${project.version}</bundle>
+        <feature 
version="${commons-configuration.version}">commons-configuration</feature>
+        <bundle>mvn:org.slf4j/slf4j-api/${slf4j.version}</bundle>
+    </feature>
+
+    <feature name="james-server-filesystem-api" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-filesystem-api/${project.version}</bundle>
+        
<bundle>mvn:org.apache.james/apache-jsieve-manager-api/${jsieve.version}</bundle>
+        <bundle>mvn:commons-io/commons-io/${commons-io.version}</bundle>
+    </feature>
+
+    <feature name="james-server-data-api" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-data-api/${project.version}</bundle>
+        
<bundle>mvn:org.apache.james/apache-mailet-api/${mailet.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+    </feature>
+
+    <feature name="james-server-lifecycle-spring" version="${project.version}">
+        <feature 
version="${project.version}">james-server-lifecycle-api</feature>
+        <feature 
version="${project.version}">james-server-filesystem-api</feature>
+        <feature version="${project.version}">james-server-data-api</feature>
+        <feature version="${spring.version}">spring31</feature>
+        
<bundle>mvn:org.apache.geronimo.specs/geronimo-annotation_1.1_spec/${geronimo-annotation-spec.version}
+        </bundle>
+        
<bundle>mvn:org.apache.geronimo.specs/geronimo-jpa_2.0_spec/${geronimo-jpa-spec.version}</bundle>
+    </feature>
+
+    <feature name="james-server-mailetcontainer-api" 
version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-mailetcontainer-api/${project.version}</bundle>
+        
<bundle>mvn:org.apache.james/apache-mailet-api/${mailet.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+    </feature>
+
+    <feature name="james-server-util" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-util/${project.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+    </feature>
+
+    <feature name="james-server-protocols-library" 
version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-protocols-library/${project.version}</bundle>
+        <feature 
version="${project.version}">james-server-lifecycle-api</feature>
+        <feature 
version="${project.version}">james-server-filesystem-api</feature>
+        <feature version="${project.version}">james-server-util</feature>
+        <feature 
version="${commons-configuration.version}">commons-configuration</feature>
+        
<bundle>mvn:org.apache.james.protocols/protocols-api/${protocols.version}</bundle>
+        
<bundle>mvn:org.apache.james.protocols/protocols-netty/${protocols.version}</bundle>
+        <bundle>mvn:io.netty/netty/${netty.version}</bundle>
+    </feature>
+
+    <feature name="james-server-core" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-core/${project.version}</bundle>
+        <feature 
version="${project.version}">james-server-lifecycle-api</feature>
+        
<bundle>mvn:org.apache.james/apache-mailet-api/${mailet.version}</bundle>
+        
<bundle>mvn:org.apache.james/apache-mailet-base/${mailet.version}</bundle>
+        <bundle>mvn:commons-io/commons-io/${commons-io.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.specs/geronimo-activation_1.1_spec/${geronimo-activation-spec.version}</bundle>
+    </feature>
+
+    <feature name="james-server-container-spring" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-container-spring/${project.version}</bundle>
+        <feature 
version="${project.version}">james-server-lifecycle-spring</feature>
+        <feature 
version="${project.version}">james-server-lifecycle-api</feature>
+        <feature 
version="${project.version}">james-server-filesystem-api</feature>
+        <feature 
version="${project.version}">james-server-mailetcontainer-api</feature>
+        <feature 
version="${project.version}">james-server-protocols-library</feature>
+        <feature version="${project.version}">james-server-core</feature>
+        <feature version="${project.version}">james-server-data-api</feature>
+        
<bundle>mvn:org.apache.james/apache-james-mailbox-api/${mailbox.version}</bundle>
+        
<bundle>mvn:org.apache.james/apache-james-mailbox-tool/${mailbox.version}</bundle>
+        
<bundle>mvn:org.apache.james.protocols/protocols-api/${protocols.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+        
<bundle>mvn:org.apache.james/apache-mailet-api/${mailet.version}</bundle>
+        <feature version="${spring.version}">spring31</feature>
+    </feature>
+
+    <feature name="james-server-dnsservice-api" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-dnsservice-api/${project.version}</bundle>
+    </feature>
+
+    <feature name="james-server-dnsservice-dnsjava" 
version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-dnsservice-dnsjava/${project.version}</bundle>
+        <feature 
version="${project.version}">james-server-dnsservice-api</feature>
+        <feature 
version="${commons-configuration.version}">commons-configuration</feature>
+        
<bundle>mvn:org.apache.james/apache-mailet-api/${mailet.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+    </feature>
+
+    <feature name="james-server-dnsservice-library" 
version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-dnsservice-library/${project.version}</bundle>
+        <feature 
version="${project.version}">james-server-dnsservice-api</feature>
+        
<bundle>mvn:org.apache.james/apache-mailet-api/${mailet.version}</bundle>
+        <bundle>mvn:org.slf4j/slf4j-api/${slf4j.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+    </feature>
+
+    <feature name="james-server-queue-api" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-queue-api/${project.version}</bundle>
+        
<bundle>mvn:org.apache.james/apache-mailet-api/${mailet.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+    </feature>
+
+    <feature name="james-server-fetchmail" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-fetchmail/${project.version}</bundle>
+        <feature version="${project.version}">james-server-queue-api</feature>
+        <feature 
version="${project.version}">james-server-lifecycle-api</feature>
+        <feature version="${project.version}">james-server-util</feature>
+        <feature version="${project.version}">james-server-data-api</feature>
+        <feature version="${project.version}">james-server-core</feature>
+        <feature 
version="${project.version}">james-server-dnsservice-apo</feature>
+        
<bundle>mvn:org.apache.james/apache-mailet-api/${mailet.version}</bundle>
+        <feature 
version="${commons-configuration.version}">commons-configuration</feature>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.specs/geronimo-annotation_1.1_spec/${geronimo-annotation-spec.version}
+        </bundle>
+    </feature>
+
+    <feature name="james-server-data-library" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-data-library/${project.version}</bundle>
+        <feature 
version="${project.version}">james-server-lifecycle-api</feature>
+        <feature version="${project.version}">james-server-data-api</feature>
+        <feature 
version="${project.version}">james-server-dnsservice-api</feature>
+        <feature 
version="${project.version}">james-server-filesystem-api</feature>
+        
<bundle>mvn:org.apache.james/apache-mailet-api/${mailet.version}</bundle>
+        <feature 
version="${commons-configuration.version}">commons-configuration</feature>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+    </feature>
+
+    <feature name="james-server-data-jpa" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-data-jpa/${project.version}</bundle>
+        <feature 
version="${project.version}">james-server-lifecycle-api</feature>
+        <feature 
version="${project.version}">james-server-dnsservice-api</feature>
+        <feature version="${project.version}">james-server-data-api</feature>
+        <feature 
version="${project.version}">james-server-data-library</feature>
+        <feature 
version="${commons-configuration.version}">commons-configuration</feature>
+        <bundle 
dependency="true">mvn:commons-codec/commons-codec/${commons-codec.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.specs/geronimo-annotation_1.1_spec/${geronimo-annotation-spec.version}
+        </bundle>
+    </feature>
+
+    <!--<feature name="james-server-data-hbase" 
version="${project.version}">-->
+    
<!--<bundle>mvn:org.apache.james/james-server-data-hbase/${project.version}</bundle>-->
+    <!--</feature>-->
+
+    <!--<feature name="james-server-data-jcr" version="${project.version}">-->
+    
<!--<bundle>mvn:org.apache.james/james-server-data-jcr/${project.version}</bundle>-->
+    <!--</feature>-->
+
+    <feature name="james-server-data-jdbc" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-data-jdbc/${project.version}</bundle>
+        <feature 
version="${project.version}">james-server-lifecycle-api</feature>
+        <feature version="${project.version}">james-server-util</feature>
+        <feature 
version="${project.version}">james-server-filesystem-api</feature>
+        <feature version="${project.version}">james-server-data-api</feature>
+        <feature 
version="${project.version}">james-server-data-library</feature>
+        <feature version="${project.version}">james-server-core</feature>
+        <feature 
version="${commons-configuration.version}">commons-configuration</feature>
+        
<bundle>mvn:commons-codec/commons-codec/${commons-codec.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.specs/geronimo-annotation_1.1_spec/${geronimo-annotation-spec.version}</bundle>
+        <bundle>
+            
mvn:org.apache.servicemix.bundles/org.apache.servicemix.bundles.commons-dbcp/${commons-dbcp-bundle.version}
+        </bundle>
+        <bundle>mvn:commons-pool/commons-pool/${commons-pool.version}</bundle>
+        <bundle>mvn:org.apache.derby/derby/${derby.version}</bundle>
+    </feature>
+
+    <feature name="james-server-data-file" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-data-file/${project.version}</bundle>
+        <feature 
version="${project.version}">james-server-lifecycle-api</feature>
+        <feature 
version="${project.version}">james-server-filesystem-api</feature>
+        <feature version="${project.version}">james-server-data-api</feature>
+        <feature 
version="${project.version}">james-server-data-library</feature>
+        <feature version="${project.version}">james-server-core</feature>
+        <feature 
version="${project.version}">james-server-dnsservice-api</feature>
+        <feature 
version="${commons-configuration.version}">commons-configuration</feature>
+        
<bundle>mvn:org.apache.james/apache-mailet-api/${mailet.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.specs/geronimo-annotation_1.1_spec/${geronimo-annotation-spec.version}</bundle>
+    </feature>
+
+    <feature name="james-server-data-ldap" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-data-ldap/${project.version}</bundle>
+        <feature 
version="${project.version}">james-server-lifecycle-api</feature>
+        <feature version="${project.version}">james-server-data-api</feature>
+        <feature version="${project.version}">james-server-util</feature>
+        <feature 
version="${commons-configuration.version}">commons-configuration</feature>
+        
<bundle>mvn:org.apache.geronimo.specs/geronimo-annotation_1.1_spec/${geronimo-annotation-spec.version}</bundle>
+    </feature>
+
+    <feature name="james-server-mailbox-adapter" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-mailbox-adapter/${project.version}</bundle>
+        <feature version="${project.version}">james-server-data-api</feature>
+        <feature 
version="${project.version}">james-server-lifecycle-api</feature>
+        <feature 
version="${project.version}">james-server-filesystem-api</feature>
+        
<bundle>mvn:org.apache.james/apache-james-mailbox-api/${mailbox.version}</bundle>
+        
<bundle>mvn:org.apache.james/apache-james-mailbox-store/${mailbox.version}</bundle>
+        <feature version="${mime4j.version}">apache-james-mime4j</feature>
+        <feature 
version="${commons-configuration.version}">commons-configuration</feature>
+        
<bundle>mvn:org.apache.james/apache-james-mailbox-maildir/${mailbox.version}</bundle>
+    </feature>
+
+    <feature name="james-server-mailet-container-camel" 
version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-mailetcontainer-camel/${project.version}</bundle>
+        <feature 
version="${project.version}">james-server-mailetcontainer-api</feature>
+        <feature version="${project.version}">james-server-queue-api</feature>
+        <feature version="${project.version}">james-server-util</feature>
+        <feature 
version="${project.version}">james-server-dnsservice-api</feature>
+        <feature 
version="${project.version}">james-server-dnsservice-library</feature>
+        <feature 
version="${project.version}">james-server-lifecycle-api</feature>
+        <feature version="${project.version}">james-server-data-api</feature>
+        <feature version="${project.version}">james-server-core</feature>
+        
<bundle>mvn:org.apache.james/apache-mailet-api/${mailet.version}</bundle>
+        <feature 
version="${project.version}">james-server-filesystem-api</feature>
+        <feature 
version="${project.version}">james-server-data-library</feature>
+        <feature 
version="${commons-configuration.version}">commons-configuration</feature>
+        <bundle>mvn:org.apache.camel/camel-core/${camel.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.specs/geronimo-annotation_1.1_spec/${geronimo-annotation-spec.version}</bundle>
+    </feature>
+
+    <feature name="james-server-mailets" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-mailets/${project.version}</bundle>
+        <feature version="${project.version}">james-server-util</feature>
+        <feature 
version="${project.version}">james-server-dnsservice-library</feature>
+        <feature 
version="${project.version}">james-server-lifecycle-api</feature>
+        <feature 
version="${project.version}">james-server-filesystem-api</feature>
+        <feature version="${project.version}">james-server-queue-api</feature>
+        <feature 
version="${project.version}">james-server-dnsservice-api</feature>
+        <feature version="${project.version}">james-server-data-api</feature>
+        <feature 
version="${project.version}">james-server-data-library</feature>
+        <feature version="${project.version}">james-server-core</feature>
+        
<bundle>mvn:org.apache.james/apache-jsieve-mailet/${jsieve.version}</bundle>
+        
<bundle>mvn:org.apache.james/apache-mailet-api/${mailet.version}</bundle>
+        
<bundle>mvn:org.apache.james.jspf/apache-jspf-resolver/${apache-jspf-resolver.version}</bundle>
+        
<bundle>mvn:org.apache.james/apache-james-mailbox-api/${mailbox.version}</bundle>
+        
<bundle>mvn:org.apache.james.protocols/protocols-smtp/${protocols.version}</bundle>
+        <feature 
version="${commons-configuration.version}">commons-configuration</feature>
+        <bundle>mvn:org.apache.camel/camel-core/${camel.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.specs/geronimo-annotation_1.1_spec/${geronimo-annotation-spec.version}</bundle>
+    </feature>
+
+    <feature name="james-protocols-imap" version="${protocols.version}">
+        
<bundle>mvn:org.apache.james.protocols/protocols-imap/${protocols.version}</bundle>
+        
<bundle>mvn:org.apache.james/apache-james-mailbox-api/${mailbox.version}</bundle>
+        <feature version="${mime4j.version}">apache-james-mime4j</feature>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+        
<bundle>mvn:commons-codec/commons-codec/${commons-codec.version}</bundle>
+        <bundle>mvn:commons-lang/commons-lang/${commons-lang.version}</bundle>
+        
<bundle>mvn:org.apache.servicemix.bunldes/org.apache.servicemix.bundles.jutf7/${1.0.0_0-SNAPSHOT}</bundle>
+    </feature>
+
+    <feature name="james-server-protocols-imap" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-protocols-imap4/${project.version}</bundle>
+        <feature 
version="${project.version}">james-server-protocols-library</feature>
+        <feature 
version="${project.version}">james-server-filesystem-api</feature>
+        <feature version="${protocols.version}">james-protocols-imap</feature>
+        <feature 
version="${commons-configuration.version}">commons-configuration</feature>
+        <bundle>mvn:commons-io/commons-io/${commons-io.version}</bundle>
+        
<bundle>mvn:org.apache.james.protocols/protocols-netty/${protocols.version}</bundle>
+        <bundle>mvn:org.slf4j/slf4j-api/${slf4j.version}</bundle>
+        <bundle>mvn:io.netty/netty/${netty.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.specs/geronimo-annotation_1.1_spec/${geronimo-annotation-spec.version}</bundle>
+        
<bundle>mvn:org.apache.servicemix.bunldes/org.apache.servicemix.bundles.jutf7/${1.0.0_0-SNAPSHOT}</bundle>
+    </feature>
+
+    <feature name="james-server-protocols-smtp" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-protocols-smtp/${project.version}</bundle>
+        <feature version="${project.version}">james-server-util</feature>
+        <feature 
version="${project.version}">james-server-dnsservice-library</feature>
+        <feature version="${project.version}">james-server-queue-api</feature>
+        <feature 
version="${project.version}">james-server-filesystem-api</feature>
+        <feature version="${project.version}">james-server-data-api</feature>
+        <feature 
version="${project.version}">james-server-lifecycle-api</feature>
+        <feature 
version="${project.version}">james-server-dnsservice-api</feature>
+        <feature version="${project.version}">james-server-core</feature>
+        <feature 
version="${project.version}">james-server-protocols-library</feature>
+        
<bundle>mvn:org.apache.james/apache-mailet-api/${mailet.version}</bundle>
+
+        
<bundle>mvn:org.apache.james.protocols/protocols-api/${protocols.version}</bundle>
+        
<bundle>mvn:org.apache.james.protocols/protocols-smtp/${protocols.version}</bundle>
+        
<bundle>mvn:org.apache.james.protocols/protocols-netty/${protocols.version}</bundle>
+        
<bundle>mvn:org.apache.james.jspf/apache-jspf-resolver/${apache-jspf-resolver.version}</bundle>
+        <feature 
version="${commons-configuration.version}">commons-configuration</feature>
+
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.specs/geronimo-annotation_1.1_spec/${geronimo-annotation-spec.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.specs/geronimo-activation_1.1_spec/${geronimo-activation-spec.version}</bundle>
+        <bundle>mvn:io.netty/netty/${netty.version}</bundle>
+    </feature>
+
+    <feature name="james-server-protocols-lmtp" version="${project.version}">
+        
<bundle>mvn:org.apache.james/james-server-protocols-lmtp/${project.version}</bundle>
+        <feature 
version="${project.version}">james-server-protocols-smtp</feature>
+        <feature 
version="${project.version}">james-server-lifecycle-api</feature>
+        <feature version="${project.version}">james-server-core</feature>
+        <feature 
version="${project.version}">james-server-protocols-library</feature>
+        
<bundle>mvn:org.apache.james/apache-mailet-api/${mailet.version}</bundle>
+        
<bundle>mvn:org.apache.james.protocols/protocols-api/${protocols.version}</bundle>
+        
<bundle>mvn:org.apache.james.protocols/protocols-smtp/${protocols.version}</bundle>
+        
<bundle>mvn:org.apache.james.protocols/protocols-lmtp/${protocols.version}</bundle>
+        
<bundle>mvn:org.apache.james.protocols/protocols-netty/${protocols.version}</bundle>
+        
<bundle>mvn:org.apache.james/apache-james-mailbox-api/${mailbox.version}</bundle>
+        <feature 
version="${commons-configuration.version}">commons-configuration</feature>
+        
<bundle>mvn:org.apache.geronimo.javamail/geronimo-javamail_1.4_mail/${geronimo-javamail.version}</bundle>
+        
<bundle>mvn:org.apache.geronimo.specs/geronimo-annotation_1.1_spec/${geronimo-annotation-spec.version}</bundle>
+        <bundle>mvn:io.netty/netty/${netty.version}</bundle>
+        <bundle>mvn:org.slf4j/slf4j-api/${slf4j.version}</bundle>
+    </feature>
+
+    <feature name="commons-configuration" 
version="${commons-configuration.version}">
+        
<bundle>mvn:commons-configuration/commons-configuration/${commons-configuration.version}
+        </bundle>
+        <bundle>mvn:commons-lang/commons-lang/${commons-lang.version}</bundle>
+        
<!--<bundle>mvn:org.ops4j.pax.logging/pax-logging-api/${pax-logging-api.version}</bundle>-->
+    </feature>
+
+</features>
\ No newline at end of file

Added: james/server/trunk/karaf/integration/pom.xml
URL: 
http://svn.apache.org/viewvc/james/server/trunk/karaf/integration/pom.xml?rev=1443399&view=auto
==============================================================================
--- james/server/trunk/karaf/integration/pom.xml (added)
+++ james/server/trunk/karaf/integration/pom.xml Thu Feb  7 10:56:08 2013
@@ -0,0 +1,111 @@
+<?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/xsd/maven-4.0.0.xsd";>
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.apache.james</groupId>
+        <artifactId>james-server</artifactId>
+        <version>3.0-beta5-SNAPSHOT</version>
+        <relativePath>../../pom.xml</relativePath>
+    </parent>
+
+    <groupId>org.apache.james.karaf</groupId>
+    <artifactId>james-karaf-integration</artifactId>
+    <name>Apache James :: Karaf :: Intetgration tests</name>
+
+    <dependencies>
+        <!-- Pax-Exam dependencies -->
+        <dependency>
+            <groupId>org.ops4j.pax.exam</groupId>
+            <artifactId>pax-exam</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.karaf.tooling.exam</groupId>
+            <artifactId>org.apache.karaf.tooling.exam.container</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.ops4j.pax.exam</groupId>
+            <artifactId>pax-exam-junit4</artifactId>
+            <scope>test</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.ops4j.pax.exam</groupId>
+            <artifactId>pax-exam-link-mvn</artifactId>
+            <scope>test</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.ops4j.pax.url</groupId>
+            <artifactId>pax-url-aether</artifactId>
+            <scope>test</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.felix</groupId>
+            <artifactId>org.apache.felix.framework</artifactId>
+            <scope>test</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.ops4j.pax.swissbox</groupId>
+            <artifactId>pax-swissbox-tinybundles</artifactId>
+        </dependency>
+
+        <!-- Apache Felix Karaf integration -->
+        <dependency>
+            <groupId>org.apache.karaf</groupId>
+            <artifactId>apache-karaf</artifactId>
+            <version>${apache-karaf.version}</version>
+            <scope>test</scope>
+            <type>tar.gz</type>
+            <exclusions>
+                <exclusion>
+                    <groupId>org.apache.karaf</groupId>
+                    <artifactId>org.apache.karaf.client</artifactId>
+                </exclusion>
+                <exclusion>
+                    <groupId>org.eclipse.osgi</groupId>
+                    <artifactId>org.eclipse.osgi</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.apache.james.karaf</groupId>
+            <artifactId>james-karaf-features</artifactId>
+            <type>pom</type>
+        </dependency>
+
+    </dependencies>
+
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.ops4j.pax.exam</groupId>
+                <artifactId>maven-paxexam-plugin</artifactId>
+                <version>1.2.4</version>
+                <executions>
+                    <execution>
+                        <id>generate-config</id>
+                        <goals>
+                            <goal>generate-config</goal>
+                            <goal>generate-depends-file</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>
\ No newline at end of file

Added: 
james/server/trunk/karaf/integration/src/test/java/org/apache/james/karaf/karaf/KarafFeatureInstallTest.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/karaf/integration/src/test/java/org/apache/james/karaf/karaf/KarafFeatureInstallTest.java?rev=1443399&view=auto
==============================================================================
--- 
james/server/trunk/karaf/integration/src/test/java/org/apache/james/karaf/karaf/KarafFeatureInstallTest.java
 (added)
+++ 
james/server/trunk/karaf/integration/src/test/java/org/apache/james/karaf/karaf/KarafFeatureInstallTest.java
 Thu Feb  7 10:56:08 2013
@@ -0,0 +1,96 @@
+package org.apache.james.karaf.karaf;
+
+import org.apache.karaf.features.Feature;
+import org.apache.karaf.features.FeaturesService;
+import static 
org.apache.karaf.tooling.exam.options.KarafDistributionOption.karafDistributionConfiguration;
+import static 
org.apache.karaf.tooling.exam.options.KarafDistributionOption.logLevel;
+import org.apache.karaf.tooling.exam.options.LogLevelOption;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import static org.ops4j.pax.exam.CoreOptions.maven;
+import static org.ops4j.pax.exam.CoreOptions.systemProperty;
+import org.ops4j.pax.exam.MavenUtils;
+import org.ops4j.pax.exam.Option;
+import org.ops4j.pax.exam.junit.Configuration;
+import org.ops4j.pax.exam.junit.ExamReactorStrategy;
+import org.ops4j.pax.exam.junit.JUnit4TestRunner;
+import org.ops4j.pax.exam.options.MavenArtifactUrlReference;
+import org.ops4j.pax.exam.spi.reactors.AllConfinedStagedReactorFactory;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.BundleContext;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.inject.Inject;
+import java.io.File;
+import java.net.URI;
+
+/**
+ * Apache James Karaf deployment test.
+ */
+@RunWith(JUnit4TestRunner.class)
+@ExamReactorStrategy(AllConfinedStagedReactorFactory.class)
+public class KarafFeatureInstallTest {
+
+  private static final Logger LOG = 
LoggerFactory.getLogger(KarafFeatureInstallTest.class);
+  @Inject
+  private FeaturesService features;
+
+  @Inject
+  BundleContext bundleContext;
+
+  private String featuresVersion;
+
+  @Configuration
+  public static Option[] configuration() throws Exception {
+    MavenArtifactUrlReference karafUrl = maven().groupId("org.apache.karaf")
+        .artifactId("apache-karaf")
+        .version("2.3.0")
+        .type("tar.gz");
+
+    String jamesFeaturesVersion = 
MavenUtils.getArtifactVersion("org.apache.james.karaf", "james-karaf-features");
+
+    return new Option[]{
+        
karafDistributionConfiguration().frameworkUrl(karafUrl).karafVersion("2.3.0").name("Apache
 Karaf")
+            .unpackDirectory(new File("target/exam")),
+        logLevel(LogLevelOption.LogLevel.INFO),
+        // use system property to provide project version for tests
+        systemProperty("james-karaf-features").value(jamesFeaturesVersion)
+    };
+  }
+
+  @Before
+  public void setUp() {
+    featuresVersion = System.getProperty("james-karaf-features");
+  }
+
+  @Test
+  public void shouldInstallAllFeatures() throws Exception {
+    String url = maven("org.apache.james.karaf", "james-karaf-features")
+        .version(featuresVersion)
+        .classifier("features")
+        .type("xml")
+        .getURL();
+
+    features.addRepository(new URI(url));
+    features.installFeature("apache-james-mime4j");
+    features.installFeature("commons-configuration");
+
+    assertInstalled("apache-james-mime4j");
+    assertInstalled("commons-configuration");
+
+    for (Bundle bundle : bundleContext.getBundles()) {
+      LOG.info("***** bundle {} is {}", bundle.getSymbolicName(), 
bundle.getState());
+      assertEquals("Bundle " + bundle.getSymbolicName() + " is not active",
+          Bundle.ACTIVE, bundle.getState());
+    }
+  }
+
+  private void assertInstalled(String featureName) throws Exception {
+    Feature feature = features.getFeature(featureName);
+    assertTrue("Feature " + featureName + " should be installed", 
features.isInstalled(feature));
+  }
+}

Modified: james/server/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/james/server/trunk/pom.xml?rev=1443399&r1=1443398&r2=1443399&view=diff
==============================================================================
--- james/server/trunk/pom.xml (original)
+++ james/server/trunk/pom.xml Thu Feb  7 10:56:08 2013
@@ -54,6 +54,10 @@
 
     <modules>
         <module>app</module>
+
+        <module>karaf/features</module>
+        <module>karaf/integration</module>
+
         <module>util</module>
         <module>cli</module>
         <module>container-spring</module>
@@ -122,16 +126,17 @@
         <mailet.version>2.5.1-SNAPSHOT</mailet.version>
         <productName>Apache-James Mail Server</productName>
         <protocols.version>1.6.3-SNAPSHOT</protocols.version>
-        <spring.version>3.1.0.RELEASE</spring.version>
+        <spring.version>3.1.2.RELEASE</spring.version>
         <geronimo-jms-spec.version>1.1.1</geronimo-jms-spec.version>
         <h2.version>1.3.170</h2.version>
         <apache-jspf-resolver.version>1.0.0</apache-jspf-resolver.version>
-        <mail.version>1.4.4</mail.version>
+        <javamail.version>1.4.4</javamail.version>
         <javax-activation.version>1.1.1</javax-activation.version>
         
<geronimo-activation-spec.version>1.1</geronimo-activation-spec.version>
         <geronimo-javamail.version>1.8.3</geronimo-javamail.version>
         <slf4j.version>1.7.2</slf4j.version>
         <servlet-api.version>2.4</servlet-api.version>
+        <!-- commons -->
         <commons-daemon.version>1.0.10</commons-daemon.version>
         <commons-collections.version>3.2.1</commons-collections.version>
         <commons-lang.version>2.6</commons-lang.version>
@@ -143,6 +148,8 @@
         <commons-net.version>3.2</commons-net.version>
         <commons-beanutils-core.version>1.8.3</commons-beanutils-core.version>
         <commons-io.version>2.4</commons-io.version>
+        <commons-logging.version>1.1.1</commons-logging.version>
+
         <dnsjava.version>2.1.1</dnsjava.version>
         <junit.version>4.11</junit.version>
         <jmock.version>2.6.0</jmock.version>
@@ -154,15 +161,29 @@
         <tika-parsers.version>1.2</tika-parsers.version>
         <xbean-spring.version>3.12</xbean-spring.version>
         <netty.version>3.3.1.Final</netty.version>
-        
<geronimo-annotation_1.1_spec.version>1.0.1</geronimo-annotation_1.1_spec.version>
+        
<geronimo-annotation-spec.version>1.0.1</geronimo-annotation-spec.version>
         <spring-osgi-extender.version>1.2.1</spring-osgi-extender.version>
         <org.osgi.core.version>5.0.0</org.osgi.core.version>
         <guava.version>13.0</guava.version>
+
+        <!-- karaf dependencies -->
+        <exam.version>2.6.0</exam.version>
+        <url.version>1.4.0</url.version>
+        <felix.version>4.0.3</felix.version>
+        
<pax-swissbox-tinybundles.version>1.3.1</pax-swissbox-tinybundles.version>
+        <apache-karaf.version>2.3.0</apache-karaf.version>
+        
<karaf.tooling.exam.container.version>2.3.0</karaf.tooling.exam.container.version>
+        <pax-logging-api.version>1.6.4</pax-logging-api.version>
     </properties>
 
     <dependencyManagement>
         <dependencies>
             <dependency>
+                <groupId>org.ops4j.pax.logging</groupId>
+                <artifactId>pax-logging-api</artifactId>
+                <version>${pax-logging-api.version}</version>
+            </dependency>
+            <dependency>
                 <groupId>org.apache.james</groupId>
                 <artifactId>james-server-cli</artifactId>
                 <version>${project.version}</version>
@@ -645,7 +666,7 @@
             <dependency>
                 <groupId>javax.mail</groupId>
                 <artifactId>mail</artifactId>
-                <version>${mail.version}</version>
+                <version>${javamail.version}</version>
                 <exclusions>
                     <exclusion>
                         <groupId>javax.activation</groupId>
@@ -1033,7 +1054,7 @@
             <dependency>
                 <groupId>org.apache.geronimo.specs</groupId>
                 <artifactId>geronimo-annotation_1.1_spec</artifactId>
-                <version>${geronimo-annotation_1.1_spec.version}</version>
+                <version>${geronimo-annotation-spec.version}</version>
             </dependency>
 
             <dependency>
@@ -1072,6 +1093,78 @@
                 <version>${org.osgi.core.version}</version>
             </dependency>
 
+            <dependency>
+                <groupId>org.ops4j.pax.exam</groupId>
+                <artifactId>pax-exam</artifactId>
+                <version>${exam.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.karaf.tooling.exam</groupId>
+                
<artifactId>org.apache.karaf.tooling.exam.container</artifactId>
+                <version>${karaf.tooling.exam.container.version}</version>
+                <scope>test</scope>
+            </dependency>
+
+            <dependency>
+                <groupId>org.ops4j.pax.exam</groupId>
+                <artifactId>pax-exam-junit4</artifactId>
+                <version>${exam.version}</version>
+                <scope>test</scope>
+            </dependency>
+
+            <dependency>
+                <groupId>org.ops4j.pax.exam</groupId>
+                <artifactId>pax-exam-link-mvn</artifactId>
+                <version>${exam.version}</version>
+                <scope>test</scope>
+            </dependency>
+
+            <dependency>
+                <groupId>org.ops4j.pax.url</groupId>
+                <artifactId>pax-url-aether</artifactId>
+                <version>${url.version}</version>
+                <scope>test</scope>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>org.apache.felix.framework</artifactId>
+                <version>${felix.version}</version>
+            </dependency>
+
+            <dependency>
+                <groupId>org.ops4j.pax.swissbox</groupId>
+                <artifactId>pax-swissbox-tinybundles</artifactId>
+                <version>${pax-swissbox-tinybundles.version}</version>
+            </dependency>
+
+            <!-- Apache Felix Karaf integration -->
+            <dependency>
+                <groupId>org.apache.karaf</groupId>
+                <artifactId>apache-karaf</artifactId>
+                <version>${apache-karaf.version}</version>
+                <scope>test</scope>
+                <type>tar.gz</type>
+                <exclusions>
+                    <exclusion>
+                        <groupId>org.apache.karaf</groupId>
+                        <artifactId>org.apache.karaf.client</artifactId>
+                    </exclusion>
+                    <exclusion>
+                        <groupId>org.eclipse.osgi</groupId>
+                        <artifactId>org.eclipse.osgi</artifactId>
+                    </exclusion>
+                </exclusions>
+            </dependency>
+
+            <dependency>
+                <groupId>org.apache.james.karaf</groupId>
+                <artifactId>james-karaf-features</artifactId>
+                <version>${project.version}</version>
+                <type>pom</type>
+            </dependency>
+
             <!-- HBase/Hadoop dependencies -->
             <dependency>
                 <groupId>org.apache.hbase</groupId>
@@ -1096,6 +1189,7 @@
                 <scope>test</scope>
                 <version>${hadoop.version}</version>
             </dependency>
+
         </dependencies>
     </dependencyManagement>
 



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to