Remove all Karaf 3 Artifacts (now Karaf 4, only) 41/58841/6
authorMichael Vorburger <vorburger@redhat.com>
Tue, 13 Jun 2017 17:17:39 +0000 (19:17 +0200)
committerMichael Vorburger <vorburger@redhat.com>
Fri, 16 Jun 2017 12:08:15 +0000 (14:08 +0200)
Change-Id: I4e60779869d8d4cb4760c1327f4abf238be98ddd
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
64 files changed:
bundles-test-lib/pom.xml
bundles-test/pom.xml [deleted file]
feature3-repo-parent/pom.xml [deleted file]
features-parent/pom.xml [deleted file]
features-parent/src/main/features/features.xml [deleted file]
features-test/pom.xml [deleted file]
features-test/src/main/java/org/opendaylight/odlparent/featuretest/Constants.java [deleted file]
features-test/src/main/java/org/opendaylight/odlparent/featuretest/CustomBundleUrlStreamHandlerFactory.java [deleted file]
features-test/src/main/java/org/opendaylight/odlparent/featuretest/PerFeatureRunNotifier.java [deleted file]
features-test/src/main/java/org/opendaylight/odlparent/featuretest/PerFeatureRunner.java [deleted file]
features-test/src/main/java/org/opendaylight/odlparent/featuretest/PerRepoTestRunner.java [deleted file]
features-test/src/main/java/org/opendaylight/odlparent/featuretest/SingleFeatureTest.java [deleted file]
features-test/src/main/java/org/opendaylight/odlparent/featuretest/Util.java [deleted file]
features-test/src/main/resources/singlefeaturetest.properties [deleted file]
features/features-akka/pom.xml [deleted file]
features/features-akka/src/main/feature/feature.xml [deleted file]
features/features-odlparent/pom.xml [deleted file]
features/features-odlparent/src/main/feature/feature.xml [deleted file]
features/odl-akka-all/pom.xml [deleted file]
features/odl-akka-clustering-2.4/pom.xml [deleted file]
features/odl-akka-leveldb-0.7/pom.xml [deleted file]
features/odl-akka-persistence-2.4/pom.xml [deleted file]
features/odl-akka-scala-2.11/pom.xml [deleted file]
features/odl-akka-system-2.4/pom.xml [deleted file]
features/odl-guava-18/pom.xml [deleted file]
features/odl-guava-21/pom.xml [deleted file]
features/odl-lmax-3/pom.xml [deleted file]
features/odl-netty-4/pom.xml [deleted file]
features/odl-triemap-0.2/pom.xml [deleted file]
features/pom.xml [deleted file]
features4-test/src/main/java/org/opendaylight/odlparent/featuretest/SingleFeatureTest.java
karaf-plugin/pom.xml [deleted file]
karaf-plugin/src/it/settings.xml [deleted file]
karaf-plugin/src/it/simple-it/pom.xml [deleted file]
karaf-plugin/src/it/simple-it/verify.groovy [deleted file]
karaf-plugin/src/main/java/org/opendaylight/odlparent/AetherUtil.java [deleted file]
karaf-plugin/src/main/java/org/opendaylight/odlparent/FeatureUtil.java [deleted file]
karaf-plugin/src/main/java/org/opendaylight/odlparent/KarafFeaturesDependencyFilter.java [deleted file]
karaf-plugin/src/main/java/org/opendaylight/odlparent/MvnToAetherMapper.java [deleted file]
karaf-plugin/src/main/java/org/opendaylight/odlparent/PopulateLocalRepoMojo.java [deleted file]
karaf/karaf-parent/pom.xml [deleted file]
karaf/opendaylight-karaf-empty/pom.xml [deleted file]
karaf/opendaylight-karaf-resources/pom.xml [deleted file]
karaf/opendaylight-karaf-resources/src/main/assembly/etc/org.ops4j.pax.url.mvn.cfg [deleted file]
karaf/opendaylight-karaf-resources/src/main/resources/bin/instance [deleted file]
karaf/opendaylight-karaf-resources/src/main/resources/bin/instance.bat [deleted file]
karaf/opendaylight-karaf-resources/src/main/resources/bin/karaf [deleted file]
karaf/opendaylight-karaf-resources/src/main/resources/bin/karaf.bat [deleted file]
karaf/opendaylight-karaf-resources/src/main/resources/bin/setenv [deleted file]
karaf/opendaylight-karaf-resources/src/main/resources/bin/setenv.bat [deleted file]
karaf/opendaylight-karaf-resources/src/main/resources/configuration/context.xml [deleted file]
karaf/opendaylight-karaf-resources/src/main/resources/configuration/logback.xml [deleted file]
karaf/opendaylight-karaf-resources/src/main/resources/configuration/tomcat-logging.properties [deleted file]
karaf/opendaylight-karaf-resources/src/main/resources/configuration/tomcat-server.xml [deleted file]
karaf/opendaylight-karaf-resources/src/main/resources/etc/custom.properties [deleted file]
karaf/opendaylight-karaf-resources/src/main/resources/etc/jetty.xml [deleted file]
karaf/opendaylight-karaf-resources/src/main/resources/etc/jre.properties [deleted file]
karaf/opendaylight-karaf-resources/src/main/resources/etc/odl.java.security [deleted file]
karaf/opendaylight-karaf-resources/src/main/resources/etc/org.ops4j.pax.logging.cfg [deleted file]
karaf/pom.xml
karaf4-plugin/pom.xml
odlparent/pom.xml
pom.xml
single-feature3-parent/pom.xml [deleted file]

index d0e8cdff0f139ca451b2db5e0edce988d011a129..58dcbc784c9b3a06fbc9365031f337e4f0ae7217 100644 (file)
@@ -30,7 +30,6 @@
     <dependency>
       <groupId>org.apache.karaf.bundle</groupId>
       <artifactId>org.apache.karaf.bundle.core</artifactId>
-      <!-- karaf.version & karaf4.version are API compatible (for karaf.bundle.core) -->
       <version>${karaf.version}</version>
       <scope>provided</scope>
     </dependency>
diff --git a/bundles-test/pom.xml b/bundles-test/pom.xml
deleted file mode 100644 (file)
index 81d47c0..0000000
+++ /dev/null
@@ -1,105 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- vi: set et smarttab sw=4 tabstop=4: -->
-<!--
- Copyright (c) 2016 Red Hat, Inc. and others. All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
--->
-<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.opendaylight.odlparent</groupId>
-    <artifactId>bundle-parent</artifactId>
-    <version>1.9.1-SNAPSHOT</version>
-    <relativePath>../bundle-parent</relativePath>
-  </parent>
-
-  <artifactId>bundles-test</artifactId>
-  <packaging>bundle</packaging>
-  <name>ODL :: odlparent :: ${project.artifactId}</name>
-
-  <dependencies>
-    <dependency>
-      <groupId>org.opendaylight.odlparent</groupId>
-      <artifactId>bundles-test-lib</artifactId>
-      <version>${project.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.karaf.bundle</groupId>
-      <artifactId>org.apache.karaf.bundle.core</artifactId>
-      <version>${karaf.version}</version>
-      <scope>provided</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.hamcrest</groupId>
-      <artifactId>hamcrest-core</artifactId>
-      <scope>compile</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.awaitility</groupId>
-      <artifactId>awaitility</artifactId>
-      <scope>compile</scope>
-      <exclusions>
-        <exclusion>
-          <groupId>cglib</groupId>
-          <artifactId>cglib-nodep</artifactId>
-        </exclusion>
-        <exclusion>
-          <groupId>org.objenesis</groupId>
-          <artifactId>objenesis</artifactId>
-        </exclusion>
-      </exclusions>
-    </dependency>
-  </dependencies>
-
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.apache.felix</groupId>
-        <artifactId>maven-bundle-plugin</artifactId>
-        <configuration>
-          <instructions>
-            <Embed-Dependency>*;scope=compile</Embed-Dependency>
-            <Embed-Transitive>true</Embed-Transitive>
-            <Import-Package>!net.sf.cglib.proxy,!org.objenesis,*</Import-Package>
-            <_exportcontents>org.opendaylight.odlparent.bundlestest.lib.*</_exportcontents>
-          </instructions>
-        </configuration>
-      </plugin>
-      <plugin>
-        <artifactId>maven-checkstyle-plugin</artifactId>
-        <configuration>
-          <propertyExpansion>checkstyle.violationSeverity=error</propertyExpansion>
-        </configuration>
-      </plugin>
-      <plugin>
-        <groupId>org.codehaus.mojo</groupId>
-        <artifactId>findbugs-maven-plugin</artifactId>
-        <configuration>
-          <failOnError>true</failOnError>
-        </configuration>
-      </plugin>
-    </plugins>
-  </build>
-
-  <!--
-    Maven Site Configuration
-
-    The following configuration is necessary for maven-site-plugin to
-    correctly identify the correct deployment path for OpenDaylight Maven
-    sites.
-  -->
-  <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-  <distributionManagement>
-    <site>
-      <id>opendaylight-site</id>
-      <url>${nexus.site.url}/${project.artifactId}/</url>
-    </site>
-  </distributionManagement>
-
-</project>
diff --git a/feature3-repo-parent/pom.xml b/feature3-repo-parent/pom.xml
deleted file mode 100644 (file)
index b1fd3f3..0000000
+++ /dev/null
@@ -1,126 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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>
-
-    <!--
-         Base parent POM for building, packaging and testing Karaf feature repositories.
-         Karaf features are generated based on the POM dependencies; they can be supplemented by a base
-         feature.xml file in src/main/feature.
-
-         Users should do the following:
-
-         - specify this as their parent
-         - make sure the packaging is set to feature
-         - specify features to be provided in the repository by depending on them in the project <dependencies/>
-    -->
-
-    <parent>
-        <groupId>org.opendaylight.odlparent</groupId>
-        <artifactId>odlparent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../odlparent</relativePath>
-    </parent>
-
-    <artifactId>feature3-repo-parent</artifactId>
-    <packaging>pom</packaging>
-    <name>ODL :: odlparent :: ${project.artifactId}</name>
-
-    <properties>
-        <skip.karaf.featureTest>false</skip.karaf.featureTest>
-    </properties>
-
-    <dependencies>
-        <!-- Test the generated features.xml -->
-        <dependency>
-            <groupId>org.opendaylight.odlparent</groupId>
-            <artifactId>features-test</artifactId>
-            <version>1.9.1-SNAPSHOT</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.opendaylight.odlparent</groupId>
-            <artifactId>bundles-test-lib</artifactId>
-            <version>1.9.1-SNAPSHOT</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.bundle</groupId>
-            <artifactId>org.apache.karaf.bundle.core</artifactId>
-            <version>${karaf.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <!-- Force SLF4J to test scope -->
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-api</artifactId>
-            <scope>test</scope>
-        </dependency>
-    </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <!-- This generates the META-INF/maven/dependencies.properties file
-                     which is required by the versionAsInProject() used in SingleFeatureTest -->
-                <groupId>org.apache.servicemix.tooling</groupId>
-                <artifactId>depends-maven-plugin</artifactId>
-            </plugin>
-            <plugin>
-                <artifactId>maven-surefire-plugin</artifactId>
-                <version>${maven.surefire.version}</version>
-                <configuration>
-                    <skip>${skip.karaf.featureTest}</skip>
-                    <dependenciesToScan>
-                        <dependency>org.opendaylight.odlparent:features-test</dependency>
-                    </dependenciesToScan>
-                    <additionalClasspathElements>
-                        <additionalClasspathElement>${project.build.directory}/feature</additionalClasspathElement>
-                    </additionalClasspathElements>
-                </configuration>
-                <executions>
-                    <execution>
-                        <phase>test</phase>
-                        <goals>
-                            <goal>test</goal>
-                        </goals>
-                    </execution>
-                </executions>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.karaf.tooling</groupId>
-                <artifactId>karaf-maven-plugin</artifactId>
-                <version>${karaf.version}</version>
-                <extensions>true</extensions>
-                <configuration>
-                    <aggregateFeatures>true</aggregateFeatures>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-
-    <!--
-        Maven Site Configuration
-
-        The following configuration is necessary for maven-site-plugin to
-        correctly identify the correct deployment path for OpenDaylight Maven
-        sites.
-    -->
-    <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-    <distributionManagement>
-        <site>
-            <id>opendaylight-site</id>
-            <url>${nexus.site.url}/${project.artifactId}/</url>
-        </site>
-    </distributionManagement>
-
-</project>
diff --git a/features-parent/pom.xml b/features-parent/pom.xml
deleted file mode 100644 (file)
index d0ced99..0000000
+++ /dev/null
@@ -1,394 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- vi: set et smarttab sw=4 tabstop=4: -->
-<!--
- Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
--->
-<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">
-
-    <!--
-         Base parent pom for building, packaging and testing Karaf features.
-         Users should do the following:
-
-         - specify this as their parent
-         - define their features template in src/main/features
-         - make sure the packaging is set to jar
-         - setup projects <dependencies/> as needed for their features
-    -->
-
-    <modelVersion>4.0.0</modelVersion>
-    <parent>
-        <groupId>org.opendaylight.odlparent</groupId>
-        <artifactId>odlparent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../odlparent</relativePath>
-    </parent>
-
-    <artifactId>features-parent</artifactId>
-    <packaging>pom</packaging>
-    <name>ODL :: odlparent :: ${project.artifactId}</name>
-
-    <properties>
-        <features.file>features.xml</features.file>
-        <skip.karaf.featureTest>false</skip.karaf.featureTest>
-    </properties>
-
-    <build>
-        <resources>
-            <resource>
-                <directory>src/main/resources</directory>
-                <filtering>true</filtering>
-            </resource>
-        </resources>
-
-        <pluginManagement>
-            <plugins>
-                <!-- generate dependencies versions -->
-                <plugin>
-                    <artifactId>maven-dependency-plugin</artifactId>
-                      <executions>
-                          <execution>
-                              <phase>generate-resources</phase>
-                              <goals><goal>resolve</goal></goals>
-                              <configuration>
-                                  <outputFile>${project.build.directory}/dependencies.txt</outputFile>
-                              </configuration>
-                          </execution>
-                      </executions>
-                </plugin>
-                <plugin>
-                    <groupId>com.alexecollins.maven.plugin</groupId>
-                    <artifactId>script-maven-plugin</artifactId>
-                    <version>1.0.0</version>
-                    <executions>
-                        <execution>
-                        <id>add-version-to-features</id>
-                        <phase>generate-resources</phase>
-                            <goals>
-                                 <goal>execute</goal>
-                            </goals>
-                            <configuration>
-                                <language>groovy</language>
-                                <script>
-                                    /**
-                                     * Placeholder, which is used in src/features/features.xml
-                                     * to mark version which should be inserted from dependencies.
-                                     * Currently works only for bundle and configfile tags
-                                     * with mvn: url schema, and needs to be used
-                                     * as third component of schema.
-                                     * eg. mvn:group/artefact/{{VERSION}}
-                                     */
-                                    def versionPlaceholder = "{{VERSION}}"
-                                    /**
-                                     * Path to features.xml which uses versionPlaceholder.
-                                     * This will be processed by this script.
-                                     *
-                                     */
-                                    def featureFilePath = "src/main/features/features.xml"
-                                    // Contains mapping of groupID:artefactID to versoin
-                                    def versionMap = new HashMap();
-                                    /* Loads transitive dependency list generated from
-                                     * maven-dependency-plugin resolve goal
-                                     * and populates map
-                                     */
-                                    def dependencies = new File(project.build.directory,"dependencies.txt")
-                                    dependencies.eachLine {
-                                        def cmps = it.trim().split(":")
-                                        // Depends on number of components:
-                                        //  - groupId
-                                        //  - artifactId
-                                        //  - Type
-                                        //  - Qualifier (optional)
-                                        //  - Version
-                                        //  - Scope
-                                        if(cmps.length > 4) {
-                                            def id = cmps[0] + ":" + cmps[1]
-                                            if(cmps.length == 6) {
-                                                versionMap[id] = cmps[4]
-                                            } else if(cmps.length == 5) {
-                                                versionMap[id] = cmps[3]
-                                            }
-                                        }
-                                    }
-
-                                    /*
-                                     * Takes splitted mvn: URL, looks for placeholder
-                                     * and returns new mvn: URL with version learned
-                                     * from dependency plugin.
-                                     *
-                                     * If referenced bundle is not dependency (direct or transitive)
-                                     * throws an exception and fails build.
-                                     *
-                                     */
-                                    def updatedURLFromProject = { args ->
-                                        // 0 - groupID, 1 - artifactID
-                                        // 2 - version, 3 - type, 4 - Classifier
-
-                                        def groupId = args[0];
-                                        def artifactId = args[1];
-                                        def id = groupId + ":" + artifactId
-                                        def dependencyVersion = versionMap[id]
-                                        if(dependencyVersion != null) {
-                                            // Overriding version
-                                            args[2] = dependencyVersion
-                                            return "mvn:" + args.join("/")
-                                        }
-                                        throw new IllegalArgumentException("Feature dependency $groupId:$artifactId is not a dependency in the project pom.xml.")
-                                    }
-
-                                    def updateMavenDependency = { dep ->
-                                        def mvnUrl = dep.text()
-                                        def prefix = ""
-                                        if (mvnUrl.startsWith("wrap:")) {
-                                            prefix = "wrap:"
-                                            mvnUrl = mvnUrl.substring(5)
-                                        }
-                                        if (mvnUrl.startsWith("mvn:") &amp;&amp; mvnUrl.indexOf(versionPlaceholder) >= 0) {
-                                            // Process property place-holders
-                                            def dollarIndex;
-                                            while ((dollarIndex = mvnUrl.indexOf("\${")) >= 0) {
-                                                def closingBrace = mvnUrl.indexOf("}", dollarIndex);
-                                                if (closingBrace > dollarIndex) {
-                                                    def propKey = mvnUrl.substring(dollarIndex + 2, closingBrace);
-                                                    def propVal = project.properties[propKey];
-                                                    mvnUrl = mvnUrl.replace("\${${propKey}}", propVal);
-                                                } else {
-                                                    println "[WARN] Malformed Maven URL: ${mvnUrl}";
-                                                    break;
-                                                }
-                                            }
-                                            def components =  mvnUrl.substring(4).split("/")
-                                            if (components[2].startsWith(versionPlaceholder)) {
-                                                def suffix = "";
-                                                if (components[2].length() > versionPlaceholder.length()) {
-                                                    suffix = components[2].substring(versionPlaceholder.length())
-                                                    components[2] = versionPlaceholder
-                                                }
-                                                dep.value = prefix + updatedURLFromProject(components) + suffix
-                                            }
-                                        }
-                                    }
-
-                                    def featureFile = new File(project.basedir,featureFilePath)
-                                    def root = new XmlParser().parse(featureFile)
-
-                                    println "[INFO] Updating repository declarations"
-                                    root.repository.each updateMavenDependency
-
-                                    root.feature.each { feature ->
-                                        println "[INFO] Processing feature: ${feature.@name}"
-                                        feature.bundle.each updateMavenDependency
-                                        feature.configfile.each updateMavenDependency
-                                    }
-
-                                    def outDir = new File(project.build.directory,"generated-resources/script")
-                                    outDir.mkdirs();
-                                    def outFile = new File(outDir,"features.xml")
-                                    def outWriter = outFile.newPrintWriter("ASCII");
-                                    xmlPrinter = new XmlNodePrinter(outWriter);
-                                    xmlPrinter.preserveWhitespace = true
-                                    xmlPrinter.print(root)
-                                    outWriter.close();
-                                </script>
-                            </configuration>
-                        </execution>
-                    </executions>
-                    <dependencies>
-                        <dependency>
-                            <groupId>org.codehaus.groovy</groupId>
-                            <artifactId>groovy</artifactId>
-                            <version>1.8.6</version>
-                        </dependency>
-                    </dependencies>
-                </plugin>
-                <plugin>
-                    <groupId>org.apache.karaf.tooling</groupId>
-                    <artifactId>karaf-maven-plugin</artifactId>
-                    <version>${karaf.version}</version>
-                    <extensions>true</extensions>
-                    <executions>
-                        <execution>
-                            <id>features-create-kar</id>
-                            <goals>
-                                <goal>features-create-kar</goal>
-                            </goals>
-                            <configuration>
-                                <featuresFile>${project.build.directory}/classes/${features.file}</featuresFile>
-                            </configuration>
-                        </execution>
-                    </executions>
-                    <!-- There is no useful configuration for the kar mojo. The features-generate-descriptor mojo configuration may be useful -->
-                </plugin>
-                <plugin>
-                    <groupId>org.codehaus.mojo</groupId>
-                    <artifactId>build-helper-maven-plugin</artifactId>
-                    <version>1.12</version>
-                    <executions>
-                        <execution>
-                        <phase>generate-resources</phase>
-                        <goals><goal>add-resource</goal></goals>
-                        <configuration>
-                            <resources>
-                              <resource>
-                                <directory>${project.build.directory}/generated-resources/script</directory>
-                                <filtering>true</filtering>
-                              </resource>
-                            </resources>
-                        </configuration>
-                        </execution>
-                        <execution>
-                            <id>attach-artifacts</id>
-                            <phase>package</phase>
-                            <goals>
-                                <goal>attach-artifact</goal>
-                            </goals>
-                            <configuration>
-                                <artifacts>
-                                    <artifact>
-                                        <file>${project.build.directory}/classes/${features.file}</file>
-                                        <type>xml</type>
-                                        <classifier>features</classifier>
-                                    </artifact>
-                                </artifacts>
-                            </configuration>
-                        </execution>
-                    </executions>
-                </plugin>
-                <plugin>
-                    <artifactId>maven-resources-plugin</artifactId>
-                    <version>3.0.1</version>
-                    <executions>
-                        <execution>
-                            <id>filter</id>
-                            <phase>generate-resources</phase>
-                            <goals>
-                                <goal>resources</goal>
-                            </goals>
-                        </execution>
-                    </executions>
-                </plugin>
-                <plugin>
-                    <artifactId>maven-surefire-plugin</artifactId>
-                    <version>${maven.surefire.version}</version>
-                    <configuration>
-                        <skip>${skip.karaf.featureTest}</skip>
-                        <systemPropertyVariables>
-                            <!-- Remove these properties when a better fix to Bug 6523 appears. -->
-                            <karaf.distro.groupId>org.opendaylight.odlparent</karaf.distro.groupId>
-                            <karaf.distro.artifactId>opendaylight-karaf-empty</karaf.distro.artifactId>
-                            <karaf.distro.version>1.9.1-SNAPSHOT</karaf.distro.version>
-                        </systemPropertyVariables>
-                        <dependenciesToScan>
-                            <dependency>org.opendaylight.odlparent:features-test</dependency>
-                        </dependenciesToScan>
-                    </configuration>
-                </plugin>
-                <!-- Ignore/Execute plugin execution -->
-                <plugin>
-                  <groupId>org.eclipse.m2e</groupId>
-                  <artifactId>lifecycle-mapping</artifactId>
-                  <version>1.0.0</version>
-                  <configuration>
-                    <lifecycleMappingMetadata>
-                      <pluginExecutions>
-                        <pluginExecution>
-                          <pluginExecutionFilter>
-                            <groupId>com.alexecollins.maven.plugin</groupId>
-                            <artifactId>script-maven-plugin</artifactId>
-                            <versionRange>[0.0,)</versionRange>
-                            <goals>
-                              <goal>execute</goal>
-                            </goals>
-                          </pluginExecutionFilter>
-                          <action>
-                            <ignore/>
-                          </action>
-                        </pluginExecution>
-                        <pluginExecution>
-                          <pluginExecutionFilter>
-                            <groupId>org.apache.maven.plugins</groupId>
-                            <artifactId>maven-dependency-plugin</artifactId>
-                            <versionRange>[0.0,)</versionRange>
-                            <goals>
-                              <goal>resolve</goal>
-                            </goals>
-                          </pluginExecutionFilter>
-                          <action>
-                            <ignore/>
-                          </action>
-                        </pluginExecution>
-                     </pluginExecutions>
-                   </lifecycleMappingMetadata>
-                  </configuration>
-                </plugin>
-            </plugins>
-        </pluginManagement>
-
-        <plugins>
-            <plugin>
-                <!-- This generates the META-INF/maven/dependencies.properties file
-                        which is required by the versionAsInProject() used in SingleFeatureTest -->
-                <groupId>org.apache.servicemix.tooling</groupId>
-                <artifactId>depends-maven-plugin</artifactId>
-            </plugin>
-            <plugin>
-                <artifactId>maven-dependency-plugin</artifactId>
-            </plugin>
-            <plugin>
-                <groupId>com.alexecollins.maven.plugin</groupId>
-                <artifactId>script-maven-plugin</artifactId>
-            </plugin>
-            <plugin>
-                <groupId>org.apache.karaf.tooling</groupId>
-                <artifactId>karaf-maven-plugin</artifactId>
-            </plugin>
-            <plugin>
-                <groupId>org.codehaus.mojo</groupId>
-                <artifactId>build-helper-maven-plugin</artifactId>
-            </plugin>
-            <plugin>
-                <artifactId>maven-resources-plugin</artifactId>
-            </plugin>
-            <plugin>
-                <artifactId>maven-surefire-plugin</artifactId>
-            </plugin>
-        </plugins>
-    </build>
-
-    <dependencies>
-        <!-- test the features.xml -->
-        <dependency>
-            <groupId>org.opendaylight.odlparent</groupId>
-            <artifactId>features-test</artifactId>
-            <version>1.9.1-SNAPSHOT</version>
-            <scope>test</scope>
-        </dependency>
-        <!-- Remove this dependency when a better fix for Bug 6523 appears. -->
-        <dependency>
-            <groupId>org.opendaylight.odlparent</groupId>
-            <artifactId>opendaylight-karaf-empty</artifactId>
-            <version>1.9.1-SNAPSHOT</version>
-            <type>zip</type>
-            <scope>test</scope>
-        </dependency>
-    </dependencies>
-
-  <!--
-    Maven Site Configuration
-
-    The following configuration is necessary for maven-site-plugin to
-    correctly identify the correct deployment path for OpenDaylight Maven
-    sites.
-  -->
-  <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-  <distributionManagement>
-    <site>
-      <id>opendaylight-site</id>
-      <url>${nexus.site.url}/${project.artifactId}/</url>
-    </site>
-  </distributionManagement>
-</project>
diff --git a/features-parent/src/main/features/features.xml b/features-parent/src/main/features/features.xml
deleted file mode 100644 (file)
index 4ad3917..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- vi: set et smarttab sw=4 tabstop=4: -->
-<!--
- Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
--->
-<!--
-     This is a dummy feature file. It is just a placeholder to keep the
-     artifact working.
-  -->
-<features name="odl-dummy-feature" xmlns="http://karaf.apache.org/xmlns/features/v1.2.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.2.0 http://karaf.apache.org/xmlns/features/v1.2.0"/>
diff --git a/features-test/pom.xml b/features-test/pom.xml
deleted file mode 100644 (file)
index e1a42b8..0000000
+++ /dev/null
@@ -1,168 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- vi: set et smarttab sw=4 tabstop=4: -->
-<!--
- Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
--->
-<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">
-
-    <parent>
-        <groupId>org.opendaylight.odlparent</groupId>
-        <artifactId>bundle-parent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../bundle-parent</relativePath>
-    </parent>
-
-    <modelVersion>4.0.0</modelVersion>
-    <artifactId>features-test</artifactId>
-    <packaging>bundle</packaging>
-    <name>ODL :: odlparent :: ${project.artifactId}</name>
-
-    <dependencies>
-        <!-- Dependencies for pax exam karaf container -->
-        <dependency>
-            <groupId>org.ops4j.pax.exam</groupId>
-            <artifactId>pax-exam-container-karaf</artifactId>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.ops4j.pax.exam</groupId>
-            <artifactId>pax-exam-junit4</artifactId>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.ops4j.pax.exam</groupId>
-            <artifactId>pax-exam</artifactId>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.ops4j.pax.url</groupId>
-            <artifactId>pax-url-aether</artifactId>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.maven.wagon</groupId>
-            <artifactId>wagon-http</artifactId>
-            <version>2.10</version>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.features</groupId>
-            <artifactId>standard</artifactId>
-            <version>${karaf.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-        <dependency>
-            <groupId>junit</groupId>
-            <artifactId>junit</artifactId>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.deployer</groupId>
-            <artifactId>org.apache.karaf.deployer.blueprint</artifactId>
-            <version>${karaf.version}</version>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.deployer</groupId>
-            <artifactId>org.apache.karaf.deployer.features</artifactId>
-            <version>${karaf.version}</version>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.deployer</groupId>
-            <artifactId>org.apache.karaf.deployer.spring</artifactId>
-            <version>${karaf.version}</version>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.ops4j.pax.url</groupId>
-            <artifactId>pax-url-wrap</artifactId>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.slf4j</groupId>
-            <artifactId>slf4j-api</artifactId>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>com.google.guava</groupId>
-            <artifactId>guava</artifactId>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>javax.inject</groupId>
-            <artifactId>javax.inject</artifactId>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.osgi</groupId>
-            <artifactId>org.osgi.core</artifactId>
-            <scope>compile</scope>
-        </dependency>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>bundles-test</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.karaf.bundle</groupId>
-            <artifactId>org.apache.karaf.bundle.core</artifactId>
-            <version>${karaf.version}</version>
-            <scope>provided</scope>
-        </dependency>
-    </dependencies>
-
-    <build>
-        <resources>
-            <resource>
-                <directory>src/main/resources</directory>
-                <filtering>true</filtering>
-            </resource>
-        </resources>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.felix</groupId>
-                <artifactId>maven-bundle-plugin</artifactId>
-            </plugin>
-            <plugin>
-                <artifactId>maven-checkstyle-plugin</artifactId>
-                <configuration>
-                    <propertyExpansion>checkstyle.violationSeverity=error</propertyExpansion>
-                </configuration>
-                <executions>
-                    <execution>
-                        <id>check-license</id>
-                        <configuration>
-                            <excludes>
-                                <!-- Skip Apache Licensed files -->
-                                org/opendaylight/odlparent/featuretest/CustomBundleUrlStreamHandlerFactory.java
-                            </excludes>
-                        </configuration>
-                    </execution>
-                </executions>
-            </plugin>
-        </plugins>
-    </build>
-
-  <!--
-    Maven Site Configuration
-
-    The following configuration is necessary for maven-site-plugin to
-    correctly identify the correct deployment path for OpenDaylight Maven
-    sites.
-  -->
-  <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-  <distributionManagement>
-    <site>
-      <id>opendaylight-site</id>
-      <url>${nexus.site.url}/${project.artifactId}/</url>
-    </site>
-  </distributionManagement>
-</project>
diff --git a/features-test/src/main/java/org/opendaylight/odlparent/featuretest/Constants.java b/features-test/src/main/java/org/opendaylight/odlparent/featuretest/Constants.java
deleted file mode 100644 (file)
index f3ad104..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-package org.opendaylight.odlparent.featuretest;
-
-public final class Constants {
-
-    private Constants() {
-        // Noop constructor
-    }
-
-    /*
-     * Named of System Properties we need to set in PerFeatureRunner and read in SingleFeatureTest
-     */
-    public static final String ORG_OPENDAYLIGHT_FEATURETEST_URI_PROP = "org.opendaylight.featuretest.uri";
-    public static final String ORG_OPENDAYLIGHT_FEATURETEST_FEATURENAME_PROP =
-            "org.opendaylight.featuretest.featurename";
-    public static final String ORG_OPENDAYLIGHT_FEATURETEST_FEATUREVERSION_PROP =
-            "org.opendaylight.featuretest.featureversion";
-}
diff --git a/features-test/src/main/java/org/opendaylight/odlparent/featuretest/CustomBundleUrlStreamHandlerFactory.java b/features-test/src/main/java/org/opendaylight/odlparent/featuretest/CustomBundleUrlStreamHandlerFactory.java
deleted file mode 100644 (file)
index 2cb2211..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * The NOTICE file referred to in the license statement below is available
- * as Karaf-NOTICE at the root of this project.
- */
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.opendaylight.odlparent.featuretest;
-
-import java.net.URLStreamHandler;
-import java.net.URLStreamHandlerFactory;
-
-import org.apache.karaf.deployer.blueprint.BlueprintURLHandler;
-import org.apache.karaf.deployer.features.FeatureURLHandler;
-import org.apache.karaf.deployer.spring.SpringURLHandler;
-
-public class CustomBundleUrlStreamHandlerFactory implements URLStreamHandlerFactory {
-
-    private static final String MVN_URI_PREFIX = "mvn";
-    private static final String WRAP_URI_PREFIX = "wrap";
-    private static final String FEATURE_URI_PREFIX = "feature";
-    private static final String SPRING_URI_PREFIX = "spring";
-    private static final String BLUEPRINT_URI_PREFIX = "blueprint";
-
-    @Override
-    public URLStreamHandler createURLStreamHandler(String protocol) {
-        switch (protocol) {
-            case MVN_URI_PREFIX:
-                return new org.ops4j.pax.url.mvn.Handler();
-            case WRAP_URI_PREFIX:
-                return new org.ops4j.pax.url.wrap.Handler();
-            case FEATURE_URI_PREFIX:
-                return new FeatureURLHandler();
-            case SPRING_URI_PREFIX:
-                return new SpringURLHandler();
-            case BLUEPRINT_URI_PREFIX:
-                return new BlueprintURLHandler();
-            default:
-                return null;
-        }
-    }
-
-}
diff --git a/features-test/src/main/java/org/opendaylight/odlparent/featuretest/PerFeatureRunNotifier.java b/features-test/src/main/java/org/opendaylight/odlparent/featuretest/PerFeatureRunNotifier.java
deleted file mode 100644 (file)
index 3166f33..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-/*
- * Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-package org.opendaylight.odlparent.featuretest;
-
-import com.google.common.base.Preconditions;
-import java.net.URL;
-import java.rmi.NoSuchObjectException;
-import org.junit.runner.Description;
-import org.junit.runner.Result;
-import org.junit.runner.notification.Failure;
-import org.junit.runner.notification.RunListener;
-import org.junit.runner.notification.RunNotifier;
-
-public class PerFeatureRunNotifier extends RunNotifier {
-
-    private final RunNotifier delegate;
-    private final URL repoUrl;
-    private final String featureName;
-    private final String featureVersion;
-
-    /**
-     * Create a delegating notifier.
-     *
-     * @param repoUrl The repository URL.
-     * @param featureName The feature name.
-     * @param featureVersion The feature version.
-     * @param delegate The notification delegate.
-     */
-    public PerFeatureRunNotifier(
-            final URL repoUrl, final String featureName, final String featureVersion, final RunNotifier delegate) {
-        this.repoUrl = Preconditions.checkNotNull(repoUrl);
-        this.featureName = Preconditions.checkNotNull(featureName);
-        this.featureVersion = Preconditions.checkNotNull(featureVersion);
-        this.delegate = Preconditions.checkNotNull(delegate);
-    }
-
-    private Failure convertFailure(final Failure failure) {
-        return new Failure(Util.convertDescription(repoUrl, featureName, featureVersion, failure.getDescription()),
-                failure.getException());
-    }
-
-    @Override
-    public void addListener(final RunListener listener) {
-        delegate.addListener(listener);
-    }
-
-    @Override
-    public void removeListener(final RunListener listener) {
-        delegate.removeListener(listener);
-    }
-
-    /**
-     * Calculates the hash code (delegated).
-     *
-     * @see java.lang.Object#hashCode()
-     */
-    @Override
-    public int hashCode() {
-        return delegate.hashCode();
-    }
-
-    @Override
-    public void fireTestRunStarted(final Description description) {
-        delegate.fireTestRunStarted(Util.convertDescription(repoUrl, featureName, featureVersion, description));
-    }
-
-    @Override
-    public void fireTestRunFinished(final Result result) {
-        delegate.fireTestRunFinished(result);
-    }
-
-    @Override
-    public void fireTestStarted(final Description description) {
-        delegate.fireTestStarted(Util.convertDescription(repoUrl, featureName, featureVersion, description));
-    }
-
-    @Override
-    public boolean equals(final Object obj) {
-        return delegate.equals(obj);
-    }
-
-    @Override
-    public void fireTestFailure(final Failure failure) {
-        if (!(failure.getException() instanceof NoSuchObjectException)) {
-            delegate.fireTestFailure(convertFailure(failure));
-        }
-    }
-
-    @Override
-    public void fireTestAssumptionFailed(final Failure failure) {
-        delegate.fireTestAssumptionFailed(convertFailure(failure));
-    }
-
-    @Override
-    public void fireTestIgnored(final Description description) {
-        delegate.fireTestIgnored(Util.convertDescription(repoUrl, featureName, featureVersion, description));
-    }
-
-    @Override
-    public void fireTestFinished(final Description description) {
-        delegate.fireTestFinished(Util.convertDescription(repoUrl, featureName, featureVersion, description));
-    }
-
-    /**
-     * Please stop.
-     * @see org.junit.runner.notification.RunNotifier#pleaseStop()
-     */
-    @Override
-    public void pleaseStop() {
-        delegate.pleaseStop();
-    }
-
-    @Override
-    public void addFirstListener(final RunListener listener) {
-        delegate.addFirstListener(listener);
-    }
-
-    /**
-     * Value of the delegate as a String.
-     * @see java.lang.Object#toString()
-     */
-    @Override
-    public String toString() {
-        return delegate.toString();
-    }
-}
diff --git a/features-test/src/main/java/org/opendaylight/odlparent/featuretest/PerFeatureRunner.java b/features-test/src/main/java/org/opendaylight/odlparent/featuretest/PerFeatureRunner.java
deleted file mode 100644 (file)
index f14a401..0000000
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-package org.opendaylight.odlparent.featuretest;
-
-import static org.opendaylight.odlparent.featuretest.Constants.ORG_OPENDAYLIGHT_FEATURETEST_FEATURENAME_PROP;
-import static org.opendaylight.odlparent.featuretest.Constants.ORG_OPENDAYLIGHT_FEATURETEST_FEATUREVERSION_PROP;
-import static org.opendaylight.odlparent.featuretest.Constants.ORG_OPENDAYLIGHT_FEATURETEST_URI_PROP;
-
-import com.google.common.base.Preconditions;
-import java.net.URL;
-import org.junit.runner.Description;
-import org.junit.runner.Runner;
-import org.junit.runner.manipulation.Filter;
-import org.junit.runner.manipulation.Filterable;
-import org.junit.runner.manipulation.NoTestsRemainException;
-import org.junit.runner.manipulation.Sortable;
-import org.junit.runner.manipulation.Sorter;
-import org.junit.runner.notification.RunNotifier;
-import org.junit.runners.model.InitializationError;
-import org.ops4j.pax.exam.junit.PaxExam;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class PerFeatureRunner extends Runner implements Filterable, Sortable {
-
-    private static final Logger LOG = LoggerFactory.getLogger(PerFeatureRunner.class);
-
-    private final String featureVersion;
-    private final String featureName;
-    private final PaxExam delegate;
-    private final URL repoUrl;
-
-    /**
-     * Create a runner.
-     *
-     * @param repoUrl        The repository URL.
-     * @param featureName    The feature name.
-     * @param featureVersion The feature version.
-     * @param testClass      The test class.
-     * @throws InitializationError if an error occurs.
-     */
-    public PerFeatureRunner(
-            final URL repoUrl, final String featureName, final String featureVersion, final Class<?> testClass)
-            throws InitializationError {
-        this.repoUrl = Preconditions.checkNotNull(repoUrl);
-        this.featureName = Preconditions.checkNotNull(featureName);
-        this.featureVersion = Preconditions.checkNotNull(featureVersion);
-
-        System.setProperty(ORG_OPENDAYLIGHT_FEATURETEST_URI_PROP, repoUrl.toString());
-        System.setProperty(ORG_OPENDAYLIGHT_FEATURETEST_FEATURENAME_PROP, featureName);
-        System.setProperty(ORG_OPENDAYLIGHT_FEATURETEST_FEATUREVERSION_PROP, featureVersion);
-        this.delegate = new PaxExam(Preconditions.checkNotNull(testClass));
-    }
-
-    @Override
-    public Description getDescription() {
-        return Util.convertDescription(repoUrl, featureName, featureVersion, delegate.getDescription());
-    }
-
-    @Override
-    public void run(final RunNotifier notifier) {
-        LOG.info("About to run test for feature: {} {}", featureName, featureVersion);
-        System.setProperty(ORG_OPENDAYLIGHT_FEATURETEST_URI_PROP, repoUrl.toString());
-        System.setProperty(ORG_OPENDAYLIGHT_FEATURETEST_FEATURENAME_PROP, featureName);
-        System.setProperty(ORG_OPENDAYLIGHT_FEATURETEST_FEATUREVERSION_PROP, featureVersion);
-        delegate.run(new PerFeatureRunNotifier(repoUrl, featureName, featureVersion, notifier));
-    }
-
-    @Override
-    public int testCount() {
-        return delegate.testCount();
-    }
-
-    @Override
-    public void filter(final Filter filter) throws NoTestsRemainException {
-        delegate.filter(filter);
-    }
-
-    @Override
-    public void sort(final Sorter sorter) {
-        delegate.sort(sorter);
-    }
-
-    /**
-     * Delegated implementation of {@link #toString()}.
-     *
-     * @see java.lang.Object#toString()
-     */
-    @Override
-    public String toString() {
-        return delegate.toString();
-    }
-
-    /**
-     * Returns the repository URL.
-     *
-     * @return The repository URL.
-     */
-    public URL getRepoUrl() {
-        return repoUrl;
-    }
-
-    /**
-     * Returns the feature name.
-     *
-     * @return The feature name.
-     */
-    public String getFeatureName() {
-        return featureName;
-    }
-
-    /**
-     * Returns the feature version.
-     *
-     * @return The feature version.
-     */
-    public String getFeatureVersion() {
-        return featureVersion;
-    }
-}
diff --git a/features-test/src/main/java/org/opendaylight/odlparent/featuretest/PerRepoTestRunner.java b/features-test/src/main/java/org/opendaylight/odlparent/featuretest/PerRepoTestRunner.java
deleted file mode 100644 (file)
index 27e95a8..0000000
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-package org.opendaylight.odlparent.featuretest;
-
-import java.io.IOException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.List;
-import javax.xml.bind.JAXBException;
-import org.apache.karaf.features.internal.model.Feature;
-import org.apache.karaf.features.internal.model.Features;
-import org.apache.karaf.features.internal.model.JaxbUtil;
-import org.junit.runner.Description;
-import org.junit.runner.notification.RunNotifier;
-import org.junit.runners.ParentRunner;
-import org.junit.runners.model.InitializationError;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class PerRepoTestRunner extends ParentRunner<PerFeatureRunner> {
-
-    private static final Logger LOG = LoggerFactory.getLogger(PerRepoTestRunner.class);
-
-    private static final String REPO_RECURSE = "repo.recurse";
-    private static final String[] FEATURES_FILENAMES = new String[] { "features.xml", "feature.xml" };
-
-    private static boolean isURLStreamHandlerFactorySet = false;
-    // Do NOT static { URL.setURLStreamHandlerFactory(new CustomBundleUrlStreamHandlerFactory()); }
-    // This is VERY BAD practice, because it leads to VERY HARD TO TRACK errors in case ANYTHING
-    // goes wrong in this.  For example, we had a case where (following an upgrade of PAX Exam)
-    // a dependency was missing.  This appeared as a confusing error because the root cause
-    // of static initialization errors is typically lost in Java; so best is NOT to use it!
-    // ("NoClassDefFoundError: Could not initialize class ...PerRepoTestRunner")
-
-    private final List<PerFeatureRunner> children = new ArrayList<>();
-
-    /**
-     * Create a runner.
-     *
-     * @param testClass The test class.
-     * @throws InitializationError if an error occurs.
-     */
-    public PerRepoTestRunner(final Class<?> testClass) throws InitializationError {
-        super(testClass);
-        setURLStreamHandlerFactory();
-        try {
-            for (String filename : FEATURES_FILENAMES) {
-                final URL repoUrl = getClass().getClassLoader().getResource(filename);
-                if (repoUrl != null) {
-                    final boolean recursive = Boolean.getBoolean(REPO_RECURSE);
-                    LOG.info("Creating test runners for repoUrl {} recursive {}", repoUrl, recursive);
-                    children.addAll(runnersFromRepoUrl(repoUrl, testClass, recursive));
-                } else {
-                    LOG.error("getClass().getClassLoader().getResource(\"{}\") returned null", filename);
-                }
-            }
-        } catch (final IOException | JAXBException e) {
-            throw new InitializationError(e);
-        }
-    }
-
-    // We have to exceptionally suppress IllegalCatch just because URL.setURLStreamHandlerFactory stupidly throws Error
-    @SuppressWarnings("checkstyle:IllegalCatch")
-    // see doc on isURLStreamHandlerFactorySet for why we do NOT want to do this in a static block
-    private static synchronized void setURLStreamHandlerFactory() {
-        if (!isURLStreamHandlerFactorySet) {
-            try {
-                URL.setURLStreamHandlerFactory(new CustomBundleUrlStreamHandlerFactory());
-                isURLStreamHandlerFactorySet = true;
-            } catch (Error e) {
-                LOG.warn("Failed to setURLStreamHandlerFactory to CustomBundleUrlStreamHandlerFactory "
-                        + "(depending on which is already set, this may or may not actually be a problem"
-                        + "; e.g. Karaf 4 already registers the neccessary handlers, so OK to ignore)", e);
-            }
-        }
-    }
-
-    protected List<PerFeatureRunner> runnersFromRepoUrl(
-            final URL repoUrl, final Class<?> testClass, final boolean recursive)
-            throws JAXBException, IOException, InitializationError {
-        if (recursive) {
-            return recursiveRunnersFromRepoUrl(repoUrl, testClass);
-        } else {
-            return runnersFromRepoUrl(repoUrl, testClass);
-        }
-    }
-
-    protected List<PerFeatureRunner> runnersFromRepoUrl(final URL repoUrl, final Class<?> testClass)
-            throws JAXBException, IOException, InitializationError {
-        final List<PerFeatureRunner> runners = new ArrayList<>();
-        final Features features = getFeatures(repoUrl);
-        runners.addAll(runnersFromFeatures(repoUrl, features, testClass));
-        return runners;
-    }
-
-    protected List<PerFeatureRunner> recursiveRunnersFromRepoUrl(final URL repoUrl, final Class<?> testClass)
-            throws JAXBException, IOException, InitializationError {
-        final List<PerFeatureRunner> runners = new ArrayList<>();
-        final Features features = getFeatures(repoUrl);
-        runners.addAll(runnersFromRepoUrl(repoUrl, testClass));
-        for (final String repoString : features.getRepository()) {
-            final URL subRepoUrl = new URL(repoString);
-            runners.addAll(recursiveRunnersFromRepoUrl(subRepoUrl, testClass));
-        }
-        return runners;
-    }
-
-    protected List<PerFeatureRunner> runnersFromFeatures(
-            final URL repoUrl, final Features features, final Class<?> testClass) throws InitializationError {
-        final List<PerFeatureRunner> runners = new ArrayList<>();
-        final List<Feature> featureList = features.getFeature();
-        for (final Feature f : featureList) {
-            runners.add(new PerFeatureRunner(repoUrl, f.getName(), f.getVersion(), testClass));
-        }
-        return runners;
-    }
-
-    protected Features getFeatures(final URL repoUrl) throws JAXBException, IOException {
-        return JaxbUtil.unmarshal(repoUrl.openStream(), false);
-    }
-
-    @Override
-    protected List<PerFeatureRunner> getChildren() {
-        return children;
-    }
-
-    @Override
-    protected Description describeChild(final PerFeatureRunner child) {
-        return child.getDescription();
-    }
-
-    @Override
-    @SuppressWarnings("checkstyle:RegexpSinglelineJava")
-    protected void runChild(final PerFeatureRunner child, final RunNotifier notifier) {
-        LOG.info("[LOG] About to run test: {}", child.getDescription());
-        System.out.println("[sys.out] About to run test: " + child.getDescription());
-        child.run(notifier);
-    }
-
-    /* (non-Javadoc)
-     * @see org.junit.runner.Runner#testCount()
-     */
-    @Override
-    public int testCount() {
-        return super.testCount() * children.size();
-    }
-}
diff --git a/features-test/src/main/java/org/opendaylight/odlparent/featuretest/SingleFeatureTest.java b/features-test/src/main/java/org/opendaylight/odlparent/featuretest/SingleFeatureTest.java
deleted file mode 100644 (file)
index 2ebfda0..0000000
+++ /dev/null
@@ -1,385 +0,0 @@
-/*
- * Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-package org.opendaylight.odlparent.featuretest;
-
-import static java.util.concurrent.TimeUnit.SECONDS;
-import static org.opendaylight.odlparent.featuretest.Constants.ORG_OPENDAYLIGHT_FEATURETEST_FEATURENAME_PROP;
-import static org.opendaylight.odlparent.featuretest.Constants.ORG_OPENDAYLIGHT_FEATURETEST_FEATUREVERSION_PROP;
-import static org.opendaylight.odlparent.featuretest.Constants.ORG_OPENDAYLIGHT_FEATURETEST_URI_PROP;
-import static org.ops4j.pax.exam.CoreOptions.maven;
-import static org.ops4j.pax.exam.CoreOptions.mavenBundle;
-import static org.ops4j.pax.exam.CoreOptions.when;
-import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.configureConsole;
-import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.editConfigurationFilePut;
-import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.features;
-import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.karafDistributionConfiguration;
-import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.keepRuntimeFolder;
-import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.logLevel;
-
-import com.google.common.collect.ImmutableList;
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.EnumSet;
-import java.util.List;
-import java.util.Properties;
-import javax.inject.Inject;
-import org.apache.karaf.bundle.core.BundleService;
-import org.apache.karaf.features.Feature;
-import org.apache.karaf.features.FeaturesService;
-import org.apache.karaf.features.Repository;
-import org.apache.karaf.features.internal.model.Features;
-import org.apache.karaf.features.internal.model.JaxbUtil;
-import org.eclipse.jdt.annotation.NonNull;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.opendaylight.odlparent.bundlestest.lib.TestBundleDiag;
-import org.ops4j.pax.exam.Configuration;
-import org.ops4j.pax.exam.CoreOptions;
-import org.ops4j.pax.exam.Option;
-import org.ops4j.pax.exam.karaf.options.LogLevelOption.LogLevel;
-import org.ops4j.pax.exam.options.PropagateSystemPropertyOption;
-import org.ops4j.pax.exam.options.extra.VMOption;
-import org.osgi.framework.BundleContext;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-@RunWith(PerRepoTestRunner.class)
-public class SingleFeatureTest {
-
-    private static final String MAVEN_REPO_LOCAL = "maven.repo.local";
-    private static final String ORG_OPS4J_PAX_URL_MVN_LOCAL_REPOSITORY = "org.ops4j.pax.url.mvn.localRepository";
-    private static final String ORG_OPS4J_PAX_URL_MVN_REPOSITORIES = "org.ops4j.pax.url.mvn.repositories";
-    private static final String ETC_ORG_OPS4J_PAX_URL_MVN_CFG = "etc/org.ops4j.pax.url.mvn.cfg";
-    private static final String ETC_ORG_OPS4J_PAX_LOGGING_CFG = "etc/org.ops4j.pax.logging.cfg";
-
-    private static final String KEEP_UNPACK_DIRECTORY_PROP = "karaf.keep.unpack";
-    private static final String PROFILE_PROP = "karaf.featureTest.profile";
-    private static final String BUNDLES_DIAG_SKIP_PROP = "sft.diag.skip";
-    private static final String BUNDLES_DIAG_FORCE_PROP = "sft.diag.force";
-    private static final String BUNDLES_DIAG_TIMEOUT_PROP = "sft.diag.timeout";
-
-    private static final String LOG4J_LOGGER_ORG_OPENDAYLIGHT_YANGTOOLS_FEATURETEST =
-            "log4j.logger.org.opendaylight.odlparent.featuretest";
-    private static final Logger LOG = LoggerFactory.getLogger(SingleFeatureTest.class);
-
-    /*
-     * File name to add our logging config property too.
-     */
-    private static final String ORG_OPS4J_PAX_LOGGING_CFG = "etc/org.ops4j.pax.logging.cfg";
-
-    /*
-     * Default values for karaf distro type, groupId, and artifactId
-     */
-    private static final String KARAF_DISTRO_TYPE = "zip";
-    private static final String KARAF_DISTRO_ARTIFACTID = "apache-karaf";
-    private static final String KARAF_DISTRO_GROUPID = "org.apache.karaf";
-
-    /*
-     * Property names to override defaults for karaf distro artifactId, groupId, version, and type
-     */
-    private static final String KARAF_DISTRO_VERSION_PROP = "karaf.distro.version";
-    private static final String KARAF_DISTRO_TYPE_PROP = "karaf.distro.type";
-    private static final String KARAF_DISTRO_ARTIFACTID_PROP = "karaf.distro.artifactId";
-    private static final String KARAF_DISTRO_GROUPID_PROP = "karaf.distro.groupId";
-
-    /**
-     * Property file used to store the Karaf distribution version.
-     */
-    private static final String PROPERTIES_FILENAME = "singlefeaturetest.properties";
-
-    /**
-     * <p>List of Karaf 3.0.4 default maven repositories with snapshot repositories excluded.</p>
-     * <p>Unfortunately this must be hard-coded since declarative model which uses Options,
-     * does not allow us to read value, parse it (properties has allways
-     * problems with lists) and construct replacement string which does
-     * not contains snapshots.</p>
-     * <p>When updating Karaf, check this against org.ops4j.pax.url.mvn.cfg in the Karaf distribution.</p>
-     */
-    private static final String EXTERNAL_DEFAULT_REPOSITORIES = "http://repo1.maven.org/maven2@id=central, "
-            + "http://repository.springsource.com/maven/bundles/release@id=spring.ebr.release, "
-            + "http://repository.springsource.com/maven/bundles/external@id=spring.ebr.external, "
-            + "http://zodiac.springsource.com/maven/bundles/release@id=gemini ";
-
-    @Inject @NonNull
-    private BundleContext bundleContext;
-
-    @Inject @NonNull
-    private FeaturesService featuresService;
-
-    @Inject @NonNull
-    private BundleService bundleService; // NOT BundleStateService, see checkBundleStatesDiag()
-
-    private String karafVersion;
-    private String karafDistroVersion;
-
-    /**
-     * Returns the required configuration.
-     *
-     * @return The Pax Exam configuration.
-     * @throws IOException if an error occurs.
-     */
-    @Configuration
-    public Option[] config() throws IOException {
-        return new Option[] {
-            // TODO: Find a way to inherit memory limits from Maven options.
-            new VMOption("-Xmx2g"),
-            new VMOption("-XX:+HeapDumpOnOutOfMemoryError"),
-            new VMOption("-XX:OnOutOfMemoryError=\"kill -3 %p\""),
-            // inspired by org.apache.commons.lang.SystemUtils
-            when(System.getProperty("os.name").toLowerCase().startsWith("linux")).useOptions(
-                // This prevents low entropy issues on Linux to affect Java random numbers
-                // which can block crypto such as the SSH server in netconf
-                // see https://bugs.opendaylight.org/show_bug.cgi?id=6790
-                new VMOption("-Djava.security.egd=file:/dev/./urandom")
-            ),
-            when(Boolean.getBoolean(PROFILE_PROP)).useOptions(
-                new VMOption("-XX:+UnlockCommercialFeatures"),
-                new VMOption("-XX:+FlightRecorder"),
-                new VMOption("-XX:FlightRecorderOptions=defaultrecording=true,dumponexit=true,dumponexitpath="
-                               + getNewJFRFile())
-            ),
-            getKarafDistroOption(),
-            when(Boolean.getBoolean(KEEP_UNPACK_DIRECTORY_PROP)).useOptions(keepRuntimeFolder()),
-            configureConsole().ignoreLocalConsole(),
-            logLevel(LogLevel.WARN),
-            mvnLocalRepoOption(),
-            standardKarafFeatures(),
-            // Guava is used by this SingleFeatureTest class itself (not, anymore, by by bundles-test),
-            // in (at least) the BLACKLISTED_BROKEN_FEATURES ImmutableList at the end, so we need to
-            // add Guava so that this class can run in Karaf under OSGi, as it compiled here
-            mavenBundle(maven("com.google.guava", "guava").versionAsInProject()),
-            mavenBundle(maven("org.opendaylight.odlparent", "bundles-test").versionAsInProject()),
-            editConfigurationFilePut(ORG_OPS4J_PAX_LOGGING_CFG, LOG4J_LOGGER_ORG_OPENDAYLIGHT_YANGTOOLS_FEATURETEST,
-                    LogLevel.INFO.name()),
-            editConfigurationFilePut(ETC_ORG_OPS4J_PAX_LOGGING_CFG, "log4j.rootLogger", "INFO, stdout, osgi:*"),
-             /*
-              *
-              * Disables external snapshot repositories.
-              *
-              * Pax URL and Karaf by default always search for new version of snapshots
-              * in all snapshots repository, even if that snapshots does not belong to that
-              * repository and maven is invoked even with -nsu (no snapshot update)
-              * or offline mode.
-              *
-              * This is also true for OpenDaylight snapshot artefacts - pax url tries
-              * to resolve them from third-party repositories, even if they are not present
-              * there - this increases time which takes for features to install.
-              *
-              * For more complex projects this actually means several HTTP GETs for each
-              * snapshot bundle referenced, even if the bundle is already present
-              * in local maven repository.
-              *
-              * In order to speed-up installation and remove unnecessary network traffic,
-              * which fails for obvious reasons, external snapshot repositories are
-              * removed.
-              *
-              *
-              */
-            disableExternalSnapshotRepositories(),
-            new PropagateSystemPropertyOption(ORG_OPENDAYLIGHT_FEATURETEST_URI_PROP),
-            new PropagateSystemPropertyOption(ORG_OPENDAYLIGHT_FEATURETEST_FEATURENAME_PROP),
-            new PropagateSystemPropertyOption(ORG_OPENDAYLIGHT_FEATURETEST_FEATUREVERSION_PROP),
-            new PropagateSystemPropertyOption(BUNDLES_DIAG_SKIP_PROP),
-            new PropagateSystemPropertyOption(BUNDLES_DIAG_FORCE_PROP),
-            new PropagateSystemPropertyOption(BUNDLES_DIAG_TIMEOUT_PROP),
-            // Needed for Agrona/aeron.io
-            CoreOptions.systemPackages("com.sun.media.sound", "sun.nio.ch"),
-        };
-    }
-
-    private String getNewJFRFile() throws IOException {
-        return File.createTempFile("SingleFeatureTest-Karaf-JavaFlightRecorder", ".jfr").getAbsolutePath();
-    }
-
-    private Option standardKarafFeatures() throws IOException {
-        String url = maven().groupId("org.apache.karaf.features").artifactId("standard").classifier("features").type(
-                "xml").version(getKarafVersion()).getURL();
-        try {
-            Features features = JaxbUtil.unmarshal(new URL(url).openStream(), false);
-            List<String> featureNames = new ArrayList<>();
-            for (Feature f : features.getFeature()) {
-                featureNames.add(f.getName());
-            }
-
-            return features(url, featureNames.toArray(new String[featureNames.size()]));
-        } catch (IOException e) {
-            throw new IOException("Could not obtain features from URL: " + url, e);
-        }
-    }
-
-    private String getKarafVersion() throws IOException {
-        if (karafVersion == null) {
-            // We use a properties file to retrieve ${karaf.version}, instead of .versionAsInProject()
-            // This avoids forcing all users to depend on Karaf in their POMs
-            Properties singleFeatureTestProps = new Properties();
-            try (InputStream singleFeatureTestInputStream = Thread.currentThread().getContextClassLoader()
-                    .getResourceAsStream(PROPERTIES_FILENAME)) {
-                if (singleFeatureTestInputStream == null) {
-                    throw new IOException("Resource not found; expected to be present on current thread classloader: "
-                            + PROPERTIES_FILENAME);
-                }
-                singleFeatureTestProps.load(singleFeatureTestInputStream);
-            }
-            karafVersion = singleFeatureTestProps.getProperty(KARAF_DISTRO_VERSION_PROP);
-
-            LOG.info("Retrieved karafVersion {} from properties file {}", karafVersion, PROPERTIES_FILENAME);
-        } else {
-            LOG.info("Retrieved karafVersion {} from system property {}", karafVersion, KARAF_DISTRO_VERSION_PROP);
-        }
-
-        return karafVersion;
-    }
-
-    private String getKarafDistroVersion() throws IOException {
-        if (karafDistroVersion == null) {
-            karafDistroVersion = System.getProperty(KARAF_DISTRO_VERSION_PROP);
-            if (karafDistroVersion == null) {
-                karafDistroVersion = getKarafVersion();
-            } else {
-                LOG.info("Retrieved karafDistroVersion {} from system property {}", karafVersion,
-                        KARAF_DISTRO_VERSION_PROP);
-            }
-        }
-
-        return karafDistroVersion;
-    }
-
-    /**
-     * Disables snapshot repositories, which are enabled by default in karaf distribution.
-     *
-     * @return Edit Configuration option which removes external snapshot repositories.
-     */
-    private static Option disableExternalSnapshotRepositories() {
-        return editConfigurationFilePut(ETC_ORG_OPS4J_PAX_URL_MVN_CFG, ORG_OPS4J_PAX_URL_MVN_REPOSITORIES,
-                EXTERNAL_DEFAULT_REPOSITORIES);
-    }
-
-    protected Option mvnLocalRepoOption() {
-        String mvnRepoLocal = System.getProperty(MAVEN_REPO_LOCAL, "");
-        LOG.info("mvnLocalRepo \"{}\"", mvnRepoLocal);
-        return editConfigurationFilePut(ETC_ORG_OPS4J_PAX_URL_MVN_CFG, ORG_OPS4J_PAX_URL_MVN_LOCAL_REPOSITORY,
-                mvnRepoLocal);
-    }
-
-    protected Option getKarafDistroOption() throws IOException {
-        String groupId = System.getProperty(KARAF_DISTRO_GROUPID_PROP, KARAF_DISTRO_GROUPID);
-        String artifactId = System.getProperty(KARAF_DISTRO_ARTIFACTID_PROP, KARAF_DISTRO_ARTIFACTID);
-        String type = System.getProperty(KARAF_DISTRO_TYPE_PROP, KARAF_DISTRO_TYPE);
-        LOG.info("Using karaf distro {} {} {} {}", groupId, artifactId, getKarafDistroVersion(), type);
-        return karafDistributionConfiguration()
-                .frameworkUrl(
-                        maven()
-                                .groupId(groupId)
-                                .artifactId(artifactId)
-                                .type(type)
-                                .version(getKarafDistroVersion()))
-                .name("OpenDaylight")
-                .unpackDirectory(new File("target/pax"))
-                .useDeployFolder(false);
-    }
-
-    private static URI getRepoUri() throws URISyntaxException {
-        return new URI(getProperty(ORG_OPENDAYLIGHT_FEATURETEST_URI_PROP));
-    }
-
-    private static String getFeatureName() {
-        return getProperty(ORG_OPENDAYLIGHT_FEATURETEST_FEATURENAME_PROP);
-    }
-
-    public String getFeatureVersion() {
-        return getProperty(ORG_OPENDAYLIGHT_FEATURETEST_FEATUREVERSION_PROP);
-    }
-
-    private static String getProperty(final String propName) {
-        String prop = System.getProperty(propName);
-        Assert.assertTrue("Missing property :" + propName, prop != null);
-        return prop;
-    }
-
-    private void checkRepository(final URI repoUri) {
-        Repository repo = null;
-        for (Repository r : featuresService.listRepositories()) {
-            if (r.getURI().equals(repoUri)) {
-                repo = r;
-                break;
-            }
-        }
-        Assert.assertNotNull("Repository not found: " + repoUri, repo);
-    }
-
-    /**
-     * Sets the repository up.
-     *
-     * @throws Exception if an error occurs.
-     */
-    @Before
-    public void installRepo() throws Exception {
-        final URI repoUri = getRepoUri();
-        LOG.info("Attempting to add repository {}", repoUri);
-        featuresService.addRepository(repoUri);
-        checkRepository(repoUri);
-        LOG.info("Successfully loaded repository {}", repoUri);
-    }
-
-    // Give it 10 minutes max as we've seen feature install hang on jenkins.
-    @Test(timeout = 600000)
-    public void installFeature() throws Exception {
-        LOG.info("Attempting to install feature {} {}", getFeatureName(), getFeatureVersion());
-        featuresService.installFeature(getFeatureName(), getFeatureVersion(),
-                EnumSet.of(FeaturesService.Option.NoCleanIfFailure, FeaturesService.Option.PrintExecptionPerFeature));
-        Feature feature = featuresService.getFeature(getFeatureName(), getFeatureVersion());
-        Assert.assertNotNull(
-                "Attempt to get feature " + getFeatureName() + " " + getFeatureVersion() + "resulted in null", feature);
-        Assert.assertTrue("Failed to install Feature: " + getFeatureName() + " " + getFeatureVersion(),
-                featuresService.isInstalled(feature));
-        LOG.info("Successfull installed feature {} {}", getFeatureName(), getFeatureVersion());
-
-        if (!Boolean.getBoolean(BUNDLES_DIAG_SKIP_PROP)
-                && (Boolean.getBoolean(BUNDLES_DIAG_FORCE_PROP)
-                    || !BLACKLISTED_BROKEN_FEATURES.contains(getFeatureName()))) {
-            Integer timeOutInSeconds = Integer.getInteger(BUNDLES_DIAG_TIMEOUT_PROP, 5 * 60);
-            new TestBundleDiag(bundleContext, bundleService).checkBundleDiagInfos(timeOutInSeconds, SECONDS);
-        } else {
-            LOG.warn("SKIPPING TestBundleDiag because system property {} is true or feature is blacklisted: {}",
-                    BUNDLES_DIAG_SKIP_PROP, getFeatureName());
-        }
-    }
-
-    // TODO remove this when all issues linked to parent https://bugs.opendaylight.org/show_bug.cgi?id=7582 are resolved
-    private static final List<String> BLACKLISTED_BROKEN_FEATURES = ImmutableList.of(
-            // integration/distribution/features-test due to DOMRpcService
-            // see https://bugs.opendaylight.org/show_bug.cgi?id=7595
-            "odl-integration-all",
-            // controller/features/mdsal/ due to IllegalStateException: ./configuration/initial/akka.conf is missing
-            // see https://bugs.opendaylight.org/show_bug.cgi?id=7583
-            "odl-mdsal-broker-local",
-            "odl-mdsal-clustering-commons",
-            "odl-mdsal-distributed-datastore",
-            "odl-mdsal-remoterpc-connector",
-            // 1/17 in groupbasedpolicy/features due to NOK org.opendaylight.groupbasedpolicy
-            // Caused by: org.opendaylight.mdsal.eos.common.api.CandidateAlreadyRegisteredException
-            // see https://bugs.opendaylight.org/show_bug.cgi?id=7587
-            "odl-groupbasedpolicy-ne-location-provider",
-            // 1/11 in tsdr/features due to (strange) ClassNotFoundException: odlparent.bundlestest
-            //   .TestBundleDiag (works for all other features; class loading issue in that feature?)
-            // see https://bugs.opendaylight.org/show_bug.cgi?id=7588
-            // Check tsdr-verify-carbon on Sandbox before removing this.
-            "odl-hbaseclient",
-            // 1/9 in unimgr/features due missing mdsal, similar to issue to odl-integration-all?
-            // TODO retry after https://bugs.opendaylight.org/show_bug.cgi?id=7595 is fixed
-            "odl-unimgr-netvirt"
-    );
-}
diff --git a/features-test/src/main/java/org/opendaylight/odlparent/featuretest/Util.java b/features-test/src/main/java/org/opendaylight/odlparent/featuretest/Util.java
deleted file mode 100644 (file)
index fd97fa1..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-package org.opendaylight.odlparent.featuretest;
-
-import java.lang.annotation.Annotation;
-import java.net.URL;
-import java.util.Collection;
-
-import org.junit.runner.Description;
-
-public final class Util {
-
-    private Util() {
-        // Noop constructor
-    }
-
-    /**
-     * <p>Convert a Description to a Description that includes information about repoUrl, featureName, and
-     * featureVersion</p>
-     * <p>This is done so that when a test fails, we can get information about which repoUrl, featureName, and
-     * featureVersion can come back with the Failure.</p>
-     *
-     * @param repoUrl URL of the repository.
-     * @param featureName the name of the feature.
-     * @param featureVersion the version of the feature.
-     * @param description original description of the feature.
-     * @return the final description of the feature with the information of repoUrl, featureName, and featureVersion
-     *     included.
-     */
-    public static Description convertDescription(
-            final URL repoUrl, final String featureName,
-            final String featureVersion, final Description description) {
-        String delegateDisplayName = description.getDisplayName();
-        delegateDisplayName =
-                delegateDisplayName + "[repoUrl: " + repoUrl + ", Feature: " + featureName + " " + featureVersion + "]";
-        Collection<Annotation> annotations = description.getAnnotations();
-        Annotation[] annotationArray = annotations.toArray(new Annotation[annotations.size()]);
-        return Description.createSuiteDescription(delegateDisplayName, annotationArray);
-    }
-}
diff --git a/features-test/src/main/resources/singlefeaturetest.properties b/features-test/src/main/resources/singlefeaturetest.properties
deleted file mode 100644 (file)
index 4d4867b..0000000
+++ /dev/null
@@ -1 +0,0 @@
-karaf.distro.version=${karaf.version}
diff --git a/features/features-akka/pom.xml b/features/features-akka/pom.xml
deleted file mode 100644 (file)
index c54ca47..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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.opendaylight.odlparent</groupId>
-        <artifactId>feature3-repo-parent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../../feature3-repo-parent</relativePath>
-    </parent>
-
-    <artifactId>features-akka</artifactId>
-    <packaging>feature</packaging>
-    <name>ODL :: odlparent :: ${project.artifactId}</name>
-
-    <dependencies>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-akka-all</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-akka-scala-${scala.version}</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-akka-system-2.4</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-akka-clustering-2.4</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-akka-leveldb-0.7</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-akka-persistence-2.4</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-    </dependencies>
-
-    <!--
-        Maven Site Configuration
-
-        The following configuration is necessary for maven-site-plugin to
-        correctly identify the correct deployment path for OpenDaylight Maven
-        sites.
-    -->
-    <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-    <distributionManagement>
-        <site>
-            <id>opendaylight-site</id>
-            <url>${nexus.site.url}/${project.artifactId}/</url>
-        </site>
-    </distributionManagement>
-
-</project>
diff --git a/features/features-akka/src/main/feature/feature.xml b/features/features-akka/src/main/feature/feature.xml
deleted file mode 100644 (file)
index 9c3d591..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- vi: set et smarttab sw=4 tabstop=4: -->
-<!--
- Copyright (c) 2014, 2016 Cisco Systems, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
--->
-<features name="odl-controller-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.2.0"
-          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-          xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.2.0 http://karaf.apache.org/xmlns/features/v1.2.0">
-    <!-- These are additional features with non-standard (upstream) versions,
-         provided for backwards-compatibility; they are now deprecated. For
-         backwards-compatibility we need to preserve the feature name and
-         version; once these are unused, we should re-introduce the features
-         with odlparent versions rather than upstream versions (features with
-         upstream versions belong upstream). -->
-    <!-- TODO Migrate these features away from upstream versions -->
-    <!-- TODO Replace the versioned features with these, using single-feature-parent -->
-    <!-- (In both cases, we need to determine whether it makes sense to use
-         unversioned features, in terms of the feasability of handling upgrades
-         later.) -->
-    <feature name="odl-akka-scala" description="Scala Runtime for OpenDaylight" version="${scala.version}">
-        <feature version="${project.version}">odl-akka-scala-${scala.version}</feature>
-    </feature>
-    <feature name="odl-akka-system" description="Akka Actor Framework System Bundles" version="${akka.version}">
-        <feature version="${project.version}">odl-akka-system-2.4</feature>
-    </feature>
-    <feature name="odl-akka-clustering" description="Akka Clustering" version="${akka.version}">
-        <feature version="${project.version}">odl-akka-clustering-2.4</feature>
-    </feature>
-    <feature name='odl-akka-leveldb' description='LevelDB' version='${leveldb.version}'>
-        <feature version="${project.version}">odl-akka-leveldb-0.7</feature>
-    </feature>
-    <feature name='odl-akka-persistence' description='Akka Persistence' version="${akka.version}">
-        <feature version="${project.version}">odl-akka-persistence-2.4</feature>
-    </feature>
-</features>
diff --git a/features/features-odlparent/pom.xml b/features/features-odlparent/pom.xml
deleted file mode 100644 (file)
index 4efcc29..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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.opendaylight.odlparent</groupId>
-        <artifactId>feature3-repo-parent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../../feature3-repo-parent</relativePath>
-    </parent>
-
-    <artifactId>features-odlparent</artifactId>
-    <packaging>feature</packaging>
-    <name>ODL :: odlparent :: ${project.artifactId}</name>
-
-    <dependencies>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-netty-4</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-guava-18</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-guava-21</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-lmax-3</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-
-        <dependency>
-            <groupId>org.opendaylight.odlparent</groupId>
-            <artifactId>odl-triemap-0.2</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-    </dependencies>
-
-    <!--
-        Maven Site Configuration
-
-        The following configuration is necessary for maven-site-plugin to
-        correctly identify the correct deployment path for OpenDaylight Maven
-        sites.
-    -->
-    <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-    <distributionManagement>
-        <site>
-            <id>opendaylight-site</id>
-            <url>${nexus.site.url}/${project.artifactId}/</url>
-        </site>
-    </distributionManagement>
-
-</project>
diff --git a/features/features-odlparent/src/main/feature/feature.xml b/features/features-odlparent/src/main/feature/feature.xml
deleted file mode 100644 (file)
index c1392c0..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<!--
- Copyright © 2015, 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<features name="odlparent-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.2.0"
-          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-          xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.2.0 http://karaf.apache.org/xmlns/features/v1.2.0">
-    <!-- These are additional features with non-standard (upstream) versions,
-         provided for backwards-compatibility; they are now deprecated. For
-         backwards-compatibility we need to preserve the feature name and
-         version; once these are unused, we should re-introduce the features
-         with odlparent versions rather than upstream versions (features with
-         upstream versions belong upstream). -->
-    <!-- TODO Migrate these features away from upstream versions -->
-    <!-- TODO Replace the versioned features with these, using single-feature-parent -->
-    <!-- (In both cases, we need to determine whether it makes sense to use
-         unversioned features, in terms of the feasability of handling upgrades
-         later.) -->
-    <!-- See also the links defined for our Maven site in the root POM (maven-javadoc-plugin) -->
-    <feature name="odl-netty" description="OpenDaylight :: Netty" version="4.1.7.Final">
-        <feature version="${project.version}">odl-netty-4</feature>
-    </feature>
-    <feature name="odl-guava" description="OpenDaylight :: Guava" version="18.0">
-        <feature version="${project.version}">odl-guava-18</feature>
-    </feature>
-    <feature name="odl-guava" description="OpenDaylight :: Guava" version="19.0">
-        <bundle>mvn:com.google.guava/guava/19.0</bundle>
-    </feature>
-    <feature name="odl-lmax" description="OpenDaylight :: LMAX Disruptor" version="3.3.6">
-        <feature version="${project.version}">odl-lmax-3</feature>
-    </feature>
-    <feature name="odl-triemap" description="OpenDaylight :: Concurrent Trie HashMap" version="0.2.23">
-        <feature version="${project.version}">odl-triemap-0.2</feature>
-    </feature>
-</features>
diff --git a/features/odl-akka-all/pom.xml b/features/odl-akka-all/pom.xml
deleted file mode 100644 (file)
index 97b1f73..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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.opendaylight.odlparent</groupId>
-        <artifactId>single-feature3-parent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../../single-feature3-parent</relativePath>
-    </parent>
-
-    <groupId>org.opendaylight.odlparent</groupId>
-    <artifactId>odl-akka-all</artifactId>
-    <version>1.9.1-SNAPSHOT</version>
-    <packaging>feature</packaging>
-
-    <name>OpenDaylight :: Akka :: All</name>
-
-    <dependencies>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-akka-scala-2.11</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-akka-system-2.4</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-akka-clustering-2.4</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-akka-leveldb-0.7</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-akka-persistence-2.4</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-    </dependencies>
-
-    <!--
-        Maven Site Configuration
-
-        The following configuration is necessary for maven-site-plugin to
-        correctly identify the correct deployment path for OpenDaylight Maven
-        sites.
-    -->
-    <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-    <distributionManagement>
-        <site>
-            <id>opendaylight-site</id>
-            <url>${nexus.site.url}/${project.artifactId}/</url>
-        </site>
-    </distributionManagement>
-
-</project>
\ No newline at end of file
diff --git a/features/odl-akka-clustering-2.4/pom.xml b/features/odl-akka-clustering-2.4/pom.xml
deleted file mode 100644 (file)
index 6f80d8b..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016, 2017 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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.opendaylight.odlparent</groupId>
-        <artifactId>single-feature3-parent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../../single-feature3-parent</relativePath>
-    </parent>
-
-    <groupId>org.opendaylight.odlparent</groupId>
-    <artifactId>odl-akka-clustering-2.4</artifactId>
-    <version>1.9.1-SNAPSHOT</version>
-    <packaging>feature</packaging>
-
-    <name>Akka Clustering</name>
-
-    <dependencies>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-akka-system-2.4</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-        <dependency>
-            <groupId>org.uncommons.maths</groupId>
-            <artifactId>uncommons-maths</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>jfree</groupId>
-                    <artifactId>jcommon</artifactId>
-                </exclusion>
-                <exclusion>
-                    <groupId>jfree</groupId>
-                    <artifactId>jfreechart</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>com.typesafe.akka</groupId>
-            <artifactId>akka-protobuf_${scala.version}</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>io.netty</groupId>
-            <artifactId>netty</artifactId>
-            <version>3.10.6.Final</version>
-        </dependency>
-        <dependency>
-            <groupId>com.typesafe.akka</groupId>
-            <artifactId>akka-remote_${scala.version}</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.typesafe.akka</groupId>
-            <artifactId>akka-cluster_${scala.version}</artifactId>
-        </dependency>
-    </dependencies>
-
-    <!--
-        Maven Site Configuration
-
-        The following configuration is necessary for maven-site-plugin to
-        correctly identify the correct deployment path for OpenDaylight Maven
-        sites.
-    -->
-    <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-    <distributionManagement>
-        <site>
-            <id>opendaylight-site</id>
-            <url>${nexus.site.url}/${project.artifactId}/</url>
-        </site>
-    </distributionManagement>
-
-</project>
diff --git a/features/odl-akka-leveldb-0.7/pom.xml b/features/odl-akka-leveldb-0.7/pom.xml
deleted file mode 100644 (file)
index fca737c..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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.opendaylight.odlparent</groupId>
-        <artifactId>single-feature3-parent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../../single-feature3-parent</relativePath>
-    </parent>
-
-    <groupId>org.opendaylight.odlparent</groupId>
-    <artifactId>odl-akka-leveldb-0.7</artifactId>
-    <version>1.9.1-SNAPSHOT</version>
-    <packaging>feature</packaging>
-
-    <name>LevelDB</name>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.iq80.leveldb</groupId>
-            <artifactId>leveldb</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.fusesource.leveldbjni</groupId>
-            <artifactId>leveldbjni-all</artifactId>
-        </dependency>
-    </dependencies>
-
-    <!--
-        Maven Site Configuration
-
-        The following configuration is necessary for maven-site-plugin to
-        correctly identify the correct deployment path for OpenDaylight Maven
-        sites.
-    -->
-    <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-    <distributionManagement>
-        <site>
-            <id>opendaylight-site</id>
-            <url>${nexus.site.url}/${project.artifactId}/</url>
-        </site>
-    </distributionManagement>
-
-</project>
\ No newline at end of file
diff --git a/features/odl-akka-persistence-2.4/pom.xml b/features/odl-akka-persistence-2.4/pom.xml
deleted file mode 100644 (file)
index 3e6bb20..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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.opendaylight.odlparent</groupId>
-        <artifactId>single-feature3-parent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../../single-feature3-parent</relativePath>
-    </parent>
-
-    <groupId>org.opendaylight.odlparent</groupId>
-    <artifactId>odl-akka-persistence-2.4</artifactId>
-    <version>1.9.1-SNAPSHOT</version>
-    <packaging>feature</packaging>
-
-    <name>Akka Persistence</name>
-
-    <dependencies>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-akka-leveldb-0.7</artifactId>
-            <version>1.9.1-SNAPSHOT</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-akka-system-2.4</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-        <dependency>
-            <groupId>com.typesafe.akka</groupId>
-            <artifactId>akka-protobuf_${scala.version}</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.typesafe.akka</groupId>
-            <artifactId>akka-persistence_${scala.version}</artifactId>
-        </dependency>
-    </dependencies>
-
-    <!--
-        Maven Site Configuration
-
-        The following configuration is necessary for maven-site-plugin to
-        correctly identify the correct deployment path for OpenDaylight Maven
-        sites.
-    -->
-    <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-    <distributionManagement>
-        <site>
-            <id>opendaylight-site</id>
-            <url>${nexus.site.url}/${project.artifactId}/</url>
-        </site>
-    </distributionManagement>
-
-</project>
diff --git a/features/odl-akka-scala-2.11/pom.xml b/features/odl-akka-scala-2.11/pom.xml
deleted file mode 100644 (file)
index b4bc47b..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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.opendaylight.odlparent</groupId>
-        <artifactId>single-feature3-parent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../../single-feature3-parent</relativePath>
-    </parent>
-
-    <groupId>org.opendaylight.odlparent</groupId>
-    <artifactId>odl-akka-scala-2.11</artifactId>
-    <version>1.9.1-SNAPSHOT</version>
-    <packaging>feature</packaging>
-
-    <name>Scala Runtime for OpenDaylight</name>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.scala-lang</groupId>
-            <artifactId>scala-library</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.scala-lang</groupId>
-            <artifactId>scala-reflect</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.scala-lang.modules</groupId>
-            <artifactId>scala-java8-compat_${scala.version}</artifactId>
-        </dependency>
-    </dependencies>
-
-    <!--
-        Maven Site Configuration
-
-        The following configuration is necessary for maven-site-plugin to
-        correctly identify the correct deployment path for OpenDaylight Maven
-        sites.
-    -->
-    <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-    <distributionManagement>
-        <site>
-            <id>opendaylight-site</id>
-            <url>${nexus.site.url}/${project.artifactId}/</url>
-        </site>
-    </distributionManagement>
-
-</project>
\ No newline at end of file
diff --git a/features/odl-akka-system-2.4/pom.xml b/features/odl-akka-system-2.4/pom.xml
deleted file mode 100644 (file)
index 1f1f1fa..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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.opendaylight.odlparent</groupId>
-        <artifactId>single-feature3-parent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../../single-feature3-parent</relativePath>
-    </parent>
-
-    <groupId>org.opendaylight.odlparent</groupId>
-    <artifactId>odl-akka-system-2.4</artifactId>
-    <version>1.9.1-SNAPSHOT</version>
-    <packaging>feature</packaging>
-
-    <name>Akka Actor Framework System Bundles</name>
-
-    <dependencies>
-        <dependency>
-            <groupId>${project.groupId}</groupId>
-            <artifactId>odl-akka-scala-${scala.version}</artifactId>
-            <version>${project.version}</version>
-            <classifier>features</classifier>
-            <type>xml</type>
-        </dependency>
-        <dependency>
-            <groupId>com.typesafe</groupId>
-            <artifactId>config</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.typesafe.akka</groupId>
-            <artifactId>akka-actor_${scala.version}</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.typesafe.akka</groupId>
-            <artifactId>akka-slf4j_${scala.version}</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>org.slf4j</groupId>
-                    <artifactId>slf4j-api</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-        <dependency>
-            <groupId>com.typesafe.akka</groupId>
-            <artifactId>akka-osgi_${scala.version}</artifactId>
-        </dependency>
-    </dependencies>
-
-    <!--
-        Maven Site Configuration
-
-        The following configuration is necessary for maven-site-plugin to
-        correctly identify the correct deployment path for OpenDaylight Maven
-        sites.
-    -->
-    <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-    <distributionManagement>
-        <site>
-            <id>opendaylight-site</id>
-            <url>${nexus.site.url}/${project.artifactId}/</url>
-        </site>
-    </distributionManagement>
-
-</project>
\ No newline at end of file
diff --git a/features/odl-guava-18/pom.xml b/features/odl-guava-18/pom.xml
deleted file mode 100644 (file)
index 51f505f..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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.opendaylight.odlparent</groupId>
-        <artifactId>single-feature3-parent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../../single-feature3-parent</relativePath>
-    </parent>
-
-    <groupId>org.opendaylight.odlparent</groupId>
-    <artifactId>odl-guava-18</artifactId>
-    <version>1.9.1-SNAPSHOT</version>
-    <packaging>feature</packaging>
-
-    <name>OpenDaylight :: Guava 18</name>
-
-    <dependencies>
-        <dependency>
-            <groupId>com.google.guava</groupId>
-            <artifactId>guava</artifactId>
-            <version>18.0</version>
-        </dependency>
-    </dependencies>
-
-    <!--
-        Maven Site Configuration
-
-        The following configuration is necessary for maven-site-plugin to
-        correctly identify the correct deployment path for OpenDaylight Maven
-        sites.
-    -->
-    <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-    <distributionManagement>
-        <site>
-            <id>opendaylight-site</id>
-            <url>${nexus.site.url}/${project.artifactId}/</url>
-        </site>
-    </distributionManagement>
-
-</project>
\ No newline at end of file
diff --git a/features/odl-guava-21/pom.xml b/features/odl-guava-21/pom.xml
deleted file mode 100644 (file)
index ee6b61a..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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.opendaylight.odlparent</groupId>
-        <artifactId>single-feature3-parent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../../single-feature3-parent</relativePath>
-    </parent>
-
-    <groupId>org.opendaylight.odlparent</groupId>
-    <artifactId>odl-guava-21</artifactId>
-    <version>1.9.1-SNAPSHOT</version>
-    <packaging>feature</packaging>
-
-    <name>OpenDaylight :: Guava 21</name>
-
-    <dependencies>
-        <dependency>
-            <groupId>com.google.guava</groupId>
-            <artifactId>guava</artifactId>
-            <version>21.0</version>
-        </dependency>
-    </dependencies>
-
-    <!--
-        Maven Site Configuration
-
-        The following configuration is necessary for maven-site-plugin to
-        correctly identify the correct deployment path for OpenDaylight Maven
-        sites.
-    -->
-    <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-    <distributionManagement>
-        <site>
-            <id>opendaylight-site</id>
-            <url>${nexus.site.url}/${project.artifactId}/</url>
-        </site>
-    </distributionManagement>
-
-</project>
diff --git a/features/odl-lmax-3/pom.xml b/features/odl-lmax-3/pom.xml
deleted file mode 100644 (file)
index d680638..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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.opendaylight.odlparent</groupId>
-        <artifactId>single-feature3-parent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../../single-feature3-parent</relativePath>
-    </parent>
-
-    <groupId>org.opendaylight.odlparent</groupId>
-    <artifactId>odl-lmax-3</artifactId>
-    <version>1.9.1-SNAPSHOT</version>
-    <packaging>feature</packaging>
-
-    <name>OpenDaylight :: LMAX Disruptor</name>
-
-    <dependencies>
-        <dependency>
-            <groupId>com.lmax</groupId>
-            <artifactId>disruptor</artifactId>
-        </dependency>
-    </dependencies>
-
-    <!--
-        Maven Site Configuration
-
-        The following configuration is necessary for maven-site-plugin to
-        correctly identify the correct deployment path for OpenDaylight Maven
-        sites.
-    -->
-    <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-    <distributionManagement>
-        <site>
-            <id>opendaylight-site</id>
-            <url>${nexus.site.url}/${project.artifactId}/</url>
-        </site>
-    </distributionManagement>
-
-</project>
\ No newline at end of file
diff --git a/features/odl-netty-4/pom.xml b/features/odl-netty-4/pom.xml
deleted file mode 100644 (file)
index 7c330c8..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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.opendaylight.odlparent</groupId>
-        <artifactId>single-feature3-parent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../../single-feature3-parent</relativePath>
-    </parent>
-
-    <groupId>org.opendaylight.odlparent</groupId>
-    <artifactId>odl-netty-4</artifactId>
-    <version>1.9.1-SNAPSHOT</version>
-    <packaging>feature</packaging>
-
-    <name>OpenDaylight :: Netty</name>
-
-    <dependencies>
-        <dependency>
-            <groupId>io.netty</groupId>
-            <artifactId>netty-buffer</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>io.netty</groupId>
-            <artifactId>netty-common</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>io.netty</groupId>
-            <artifactId>netty-transport</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>io.netty</groupId>
-            <artifactId>netty-codec</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>io.netty</groupId>
-            <artifactId>netty-codec-http</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>io.netty</groupId>
-            <artifactId>netty-handler</artifactId>
-        </dependency>
-        <!-- Here we need to depend on all available native epoll implementations; we can't limit ourselves to the build
-        platform and we can't require the build platform to have an implementation (e.g. OS X) -->
-        <dependency>
-            <groupId>io.netty</groupId>
-            <artifactId>netty-transport-native-epoll</artifactId>
-            <classifier>linux-x86_64</classifier>
-        </dependency>
-    </dependencies>
-
-    <!--
-        Maven Site Configuration
-
-        The following configuration is necessary for maven-site-plugin to
-        correctly identify the correct deployment path for OpenDaylight Maven
-        sites.
-    -->
-    <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-    <distributionManagement>
-        <site>
-            <id>opendaylight-site</id>
-            <url>${nexus.site.url}/${project.artifactId}/</url>
-        </site>
-    </distributionManagement>
-
-</project>
diff --git a/features/odl-triemap-0.2/pom.xml b/features/odl-triemap-0.2/pom.xml
deleted file mode 100644 (file)
index dd9e3ca..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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.opendaylight.odlparent</groupId>
-        <artifactId>single-feature3-parent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../../single-feature3-parent</relativePath>
-    </parent>
-
-    <groupId>org.opendaylight.odlparent</groupId>
-    <artifactId>odl-triemap-0.2</artifactId>
-    <version>1.9.1-SNAPSHOT</version>
-
-    <packaging>feature</packaging>
-
-    <name>OpenDaylight :: Concurrent Trie HashMap</name>
-
-    <dependencies>
-        <dependency>
-            <groupId>com.github.romix</groupId>
-            <artifactId>java-concurrent-hash-trie-map</artifactId>
-        </dependency>
-    </dependencies>
-
-</project>
\ No newline at end of file
diff --git a/features/pom.xml b/features/pom.xml
deleted file mode 100644 (file)
index 4f504ee..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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.opendaylight.odlparent</groupId>
-        <artifactId>aggregator-parent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../aggregator-parent</relativePath>
-    </parent>
-
-    <artifactId>features-aggregator</artifactId>
-    <packaging>pom</packaging>
-    <name>ODL :: odlparent :: ${project.artifactId}</name>
-
-    <modules>
-        <!-- Akka features -->
-        <module>features-akka</module>
-        <module>odl-akka-all</module>
-        <module>odl-akka-clustering-2.4</module>
-        <module>odl-akka-leveldb-0.7</module>
-        <module>odl-akka-persistence-2.4</module>
-        <module>odl-akka-scala-2.11</module>
-        <module>odl-akka-system-2.4</module>
-
-        <!-- General features -->
-        <module>features-odlparent</module>
-        <module>odl-guava-18</module>
-        <module>odl-guava-21</module>
-        <module>odl-lmax-3</module>
-        <module>odl-netty-4</module>
-        <module>odl-triemap-0.2</module>
-    </modules>
-
-</project>
index 80acc56a5191762578497a30b7ee7b3436f88457..99c8bbc04b28d02a2fcf8c275e5b0e4c8d54e663 100644 (file)
@@ -219,7 +219,7 @@ public class SingleFeatureTest {
 
     private String getKarafVersion() throws IOException {
         if (karafVersion == null) {
-            // We use a properties file to retrieve ${karaf.version}, instead of .versionAsInProject()
+            // We use a properties file to retrieve Karaf's version, instead of .versionAsInProject()
             // This avoids forcing all users to depend on Karaf in their POMs
             Properties singleFeatureTestProps = new Properties();
             try (InputStream singleFeatureTestInputStream = Thread.currentThread().getContextClassLoader()
diff --git a/karaf-plugin/pom.xml b/karaf-plugin/pom.xml
deleted file mode 100644 (file)
index 3fd4ba5..0000000
+++ /dev/null
@@ -1,167 +0,0 @@
-<?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>
-    <artifactId>odlparent</artifactId>
-    <groupId>org.opendaylight.odlparent</groupId>
-    <version>1.9.1-SNAPSHOT</version>
-    <relativePath>../odlparent/</relativePath>
-  </parent>
-  <artifactId>karaf-plugin</artifactId>
-  <packaging>maven-plugin</packaging>
-
-  <name>ODL :: odlparent :: ${project.artifactId}</name>
-
-  <properties>
-    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-  </properties>
-
-  <dependencies>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-plugin-api</artifactId>
-      <version>3.3.3</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-core</artifactId>
-      <version>3.3.3</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
-      <artifactId>maven-model</artifactId>
-      <version>3.3.3</version>
-    </dependency>
-    <dependency>
-        <groupId>org.ops4j.pax.url</groupId>
-        <artifactId>pax-url-aether</artifactId>
-        <scope>compile</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.karaf.features</groupId>
-      <artifactId>org.apache.karaf.features.core</artifactId>
-      <version>${karaf.version}</version>
-      <scope>compile</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.eclipse.aether</groupId>
-      <artifactId>aether-api</artifactId>
-      <version>1.0.2.v20150114</version>
-    </dependency>
-    <dependency>
-      <groupId>org.opendaylight.odlparent</groupId>
-      <artifactId>features-test</artifactId>
-      <version>${project.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>org.osgi</groupId>
-      <artifactId>org.osgi.core</artifactId>
-      <scope>runtime</scope>
-    </dependency>
-  </dependencies>
-
-  <build>
-    <plugins>
-      <plugin>
-        <artifactId>maven-checkstyle-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>check-license</id>
-            <goals>
-              <goal>check</goal>
-            </goals>
-            <phase>process-sources</phase>
-            <configuration>
-              <configLocation>check-license.xml</configLocation>
-              <includeResources>false</includeResources>
-              <includeTestResources>false</includeTestResources>
-              <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
-              <excludes>
-                <!-- Skip Apache Licensed files -->
-                org/opendaylight/odlparent/PopulateLocalRepoMojo.java
-              </excludes>
-              <failsOnError>false</failsOnError>
-              <consoleOutput>true</consoleOutput>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <artifactId>maven-plugin-plugin</artifactId>
-        <configuration>
-          <goalPrefix>karaf</goalPrefix>
-          <skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
-        </configuration>
-        <executions>
-          <execution>
-            <id>mojo-descriptor</id>
-            <goals>
-              <goal>descriptor</goal>
-            </goals>
-          </execution>
-          <execution>
-            <id>help-goal</id>
-            <goals>
-              <goal>helpmojo</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-  <profiles>
-    <profile>
-      <id>run-its</id>
-      <build>
-
-        <plugins>
-          <plugin>
-            <artifactId>maven-invoker-plugin</artifactId>
-            <version>2.0.0</version>
-            <configuration>
-              <debug>true</debug>
-              <cloneProjectsTo>${project.build.directory}/it</cloneProjectsTo>
-              <pomIncludes>
-                <pomInclude>*/pom.xml</pomInclude>
-              </pomIncludes>
-              <postBuildHookScript>verify</postBuildHookScript>
-              <localRepositoryPath>${project.build.directory}/local-repo</localRepositoryPath>
-              <settingsFile>src/it/settings.xml</settingsFile>
-              <goals>
-                <goal>clean</goal>
-                <goal>test-compile</goal>
-              </goals>
-            </configuration>
-            <executions>
-              <execution>
-                <id>integration-test</id>
-                <goals>
-                  <goal>install</goal>
-                  <goal>integration-test</goal>
-                  <goal>verify</goal>
-                </goals>
-              </execution>
-            </executions>
-          </plugin>
-        </plugins>
-
-      </build>
-    </profile>
-  </profiles>
-
-  <!--
-    Maven Site Configuration
-
-    The following configuration is necessary for maven-site-plugin to
-    correctly identify the correct deployment path for OpenDaylight Maven
-    sites.
-  -->
-  <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-  <distributionManagement>
-    <site>
-      <id>opendaylight-site</id>
-      <url>${nexus.site.url}/${project.artifactId}/</url>
-    </site>
-  </distributionManagement>
-</project>
diff --git a/karaf-plugin/src/it/settings.xml b/karaf-plugin/src/it/settings.xml
deleted file mode 100644 (file)
index fd7219c..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
- The NOTICE file referred to in the license statement below is available
- as Karaf-NOTICE at the root of this project.
--->
-<!--
-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.
--->
-
-<settings>
-  <profiles>
-    <profile>
-      <id>it-repo</id>
-      <activation>
-        <activeByDefault>true</activeByDefault>
-      </activation>
-      <repositories>
-        <repository>
-          <id>local.central</id>
-          <url>@localRepositoryUrl@</url>
-          <releases>
-            <enabled>true</enabled>
-          </releases>
-          <snapshots>
-            <enabled>true</enabled>
-          </snapshots>
-        </repository>
-      </repositories>
-      <pluginRepositories>
-        <pluginRepository>
-          <id>local.central</id>
-          <url>@localRepositoryUrl@</url>
-          <releases>
-            <enabled>true</enabled>
-          </releases>
-          <snapshots>
-            <enabled>true</enabled>
-          </snapshots>
-        </pluginRepository>
-      </pluginRepositories>
-    </profile>
-  </profiles>
-</settings>
diff --git a/karaf-plugin/src/it/simple-it/pom.xml b/karaf-plugin/src/it/simple-it/pom.xml
deleted file mode 100644 (file)
index 6bd1dc9..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<?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>
-
-  <groupId>org.opendaylight.odlparent.it</groupId>
-  <artifactId>simple-it</artifactId>
-  <version>1.9.1-SNAPSHOT</version>
-
-  <description>A simple IT verifying the basic use case.</description>
-
-  <properties>
-    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-  </properties>
-
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>@project.groupId@</groupId>
-        <artifactId>@project.artifactId@</artifactId>
-        <version>@project.version@</version>
-        <executions>
-          <execution>
-            <id>touch</id>
-            <phase>validate</phase>
-            <goals>
-              <goal>touch</goal>
-            </goals>
-            <configuration>
-                <featureRepos>
-                    <param>foo</param>
-                </featureRepos>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/karaf-plugin/src/it/simple-it/verify.groovy b/karaf-plugin/src/it/simple-it/verify.groovy
deleted file mode 100644 (file)
index 7b307c7..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-File touchFile = new File( basedir, "target/touch.txt" );
-
-assert touchFile.isFile()
diff --git a/karaf-plugin/src/main/java/org/opendaylight/odlparent/AetherUtil.java b/karaf-plugin/src/main/java/org/opendaylight/odlparent/AetherUtil.java
deleted file mode 100644 (file)
index 5775fad..0000000
+++ /dev/null
@@ -1,179 +0,0 @@
-/*
- * Copyright (c) 2015 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-package org.opendaylight.odlparent;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.LinkedHashSet;
-import java.util.List;
-import java.util.Set;
-import org.eclipse.aether.DefaultRepositorySystemSession;
-import org.eclipse.aether.RepositorySystem;
-import org.eclipse.aether.RepositorySystemSession;
-import org.eclipse.aether.artifact.Artifact;
-import org.eclipse.aether.artifact.DefaultArtifact;
-import org.eclipse.aether.collection.CollectRequest;
-import org.eclipse.aether.graph.Dependency;
-import org.eclipse.aether.graph.DependencyFilter;
-import org.eclipse.aether.installation.InstallationException;
-import org.eclipse.aether.installation.InstallRequest;
-import org.eclipse.aether.repository.LocalRepository;
-import org.eclipse.aether.repository.LocalRepositoryManager;
-import org.eclipse.aether.repository.RemoteRepository;
-import org.eclipse.aether.resolution.ArtifactRequest;
-import org.eclipse.aether.resolution.ArtifactResolutionException;
-import org.eclipse.aether.resolution.ArtifactResult;
-import org.eclipse.aether.resolution.DependencyRequest;
-import org.eclipse.aether.resolution.DependencyResolutionException;
-import org.eclipse.aether.resolution.DependencyResult;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class AetherUtil {
-    private static final Logger LOG = LoggerFactory.getLogger(AetherUtil.class);
-    private RepositorySystem repoSystem;
-
-    private RepositorySystemSession repoSession;
-
-    private List<RemoteRepository> remoteRepos;
-
-    protected File localRepository;
-
-    /**
-     * Create an instance for the given repositories.
-     *
-     * @param repoSystem The repository system.
-     * @param repoSession The repository session.
-     * @param remoteRepos The remote repositories.
-     * @param localRepository The local repository.
-     */
-    public AetherUtil(
-            RepositorySystem repoSystem, RepositorySystemSession repoSession, List<RemoteRepository> remoteRepos,
-            File localRepository) {
-        this.repoSystem = repoSystem;
-        this.repoSession = repoSession;
-        this.remoteRepos = remoteRepos;
-        this.localRepository = localRepository;
-    }
-
-    /**
-     * Resolves the given dependencies.
-     *
-     * @param dependencies The dependencies.
-     * @param filter The dependency filter.
-     * @return The corresponding artifacts.
-     * @throws DependencyResolutionException if an error occurs.
-     */
-    public Set<Artifact> resolveDependencies(List<Dependency> dependencies, DependencyFilter filter)
-            throws DependencyResolutionException {
-        Set<Artifact> artifacts = new LinkedHashSet<>();
-        CollectRequest collectRequest = new CollectRequest();
-        collectRequest.setDependencies(dependencies);
-        collectRequest.setRepositories(remoteRepos);
-        DependencyRequest request = new DependencyRequest(collectRequest, filter);
-        DependencyResult results = repoSystem.resolveDependencies(repoSession, request);
-        for (ArtifactResult artifactResult : results.getArtifactResults()) {
-            artifacts.add(artifactResult.getArtifact());
-        }
-        LOG.trace("resolveDependencies({}) returns {}", dependencies, artifacts);
-        return artifacts;
-    }
-
-    /**
-     * Resolves the given artifact.
-     *
-     * @param artifact The artifact.
-     * @return The resolved artifact, or {@code null} if it can't be resolved.
-     */
-    public Artifact resolveArtifact(Artifact artifact) {
-        ArtifactRequest request = new ArtifactRequest(artifact, remoteRepos, null);
-        ArtifactResult result;
-        try {
-            result = repoSystem.resolveArtifact(repoSession, request);
-        } catch (ArtifactResolutionException e) {
-            LOG.warn("Unable to resolve artifact: {}", e.getMessage(), e);
-            return null;
-        }
-        LOG.trace("resolveArtifacts({}) returns {}", artifact, result.getArtifact());
-        return result.getArtifact();
-    }
-
-    /**
-     * Resolves the given coordinates.
-     *
-     * @param coord The coordinates to resolve.
-     * @return The resolved artifact, or {@code null} if the coordinates can't be resolved.
-     */
-    public Artifact resolveArtifact(String coord) {
-        DefaultArtifact artifact = new DefaultArtifact(coord);
-        return resolveArtifact(artifact);
-    }
-
-    /**
-     * Resolves the given coordinates.
-     *
-     * @param coords The set of coordinates to resolve.
-     * @return The resolved artifacts. Unresolvable coordinates are skipped without error.
-     */
-    public Set<Artifact> resolveArtifacts(Set<String> coords) {
-        Set<Artifact> result = new LinkedHashSet<>();
-        for (String coord : coords) {
-            Artifact artifact = resolveArtifact(coord);
-            if (artifact != null) {
-                result.add(artifact);
-            }
-        }
-        LOG.trace("resolveArtifacts({}) returns {}", coords, result);
-        return result;
-    }
-
-    /**
-     * Converts the given artifact coordinates to a {@link Dependency} instance.
-     *
-     * @param coord The coordinates.
-     * @return The dependency.
-     */
-    public Dependency toDependency(String coord) {
-        Artifact artifact = new DefaultArtifact(coord);
-        return new Dependency(artifact, null);
-    }
-
-    /**
-     * Converts the given list of artifact coordinates to dependencies.
-     *
-     * @param coords The list of coordinates.
-     * @return The corresponding dependencies.
-     */
-    public List<Dependency> toDependencies(List<String> coords) {
-        List<Dependency> result = new ArrayList<>();
-        for (String coord : coords) {
-            result.add(toDependency(coord));
-        }
-        LOG.trace("toDependencies({}) returns {}", coords, result);
-        return result;
-    }
-
-    /**
-     * Installs the given artifacts.
-     *
-     * @param artifacts The artifacts to install.
-     * @throws InstallationException if an error occurs.
-     */
-    public void installArtifacts(Set<Artifact> artifacts) throws InstallationException {
-        LocalRepository localRepo = new LocalRepository(localRepository);
-        LocalRepositoryManager localManager = repoSystem.newLocalRepositoryManager(repoSession, localRepo);
-        DefaultRepositorySystemSession localSession = new DefaultRepositorySystemSession();
-        localSession.setLocalRepositoryManager(localManager);
-        InstallRequest installRequest = new InstallRequest();
-        for (Artifact featureArtifact : artifacts) {
-            installRequest.addArtifact(featureArtifact);
-        }
-        repoSystem.install(localSession, installRequest);
-    }
-}
diff --git a/karaf-plugin/src/main/java/org/opendaylight/odlparent/FeatureUtil.java b/karaf-plugin/src/main/java/org/opendaylight/odlparent/FeatureUtil.java
deleted file mode 100644 (file)
index 3169a29..0000000
+++ /dev/null
@@ -1,327 +0,0 @@
-/*
- * Copyright (c) 2015 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-package org.opendaylight.odlparent;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.LinkedHashSet;
-import java.util.List;
-import java.util.Set;
-import org.apache.karaf.features.internal.model.Bundle;
-import org.apache.karaf.features.internal.model.ConfigFile;
-import org.apache.karaf.features.internal.model.Feature;
-import org.apache.karaf.features.internal.model.Features;
-import org.apache.karaf.features.internal.model.JaxbUtil;
-import org.eclipse.aether.artifact.Artifact;
-import org.eclipse.aether.resolution.ArtifactResolutionException;
-import org.ops4j.pax.url.mvn.internal.Parser;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public final class FeatureUtil {
-    private static final Logger LOG = LoggerFactory.getLogger(FeatureUtil.class);
-
-    private FeatureUtil() {
-        throw new UnsupportedOperationException();
-    }
-
-    /**
-     * Converts the given list of URLs to artifact coordinates.
-     *
-     * @param urls The URLs.
-     * @return The corresponding artifact coordinates.
-     * @throws MalformedURLException if a URL is malformed.
-     */
-    public static List<String> toCoord(List<URL> urls) throws MalformedURLException {
-        List<String> result = new ArrayList<>();
-        for (URL url : urls) {
-            result.add(toCoord(url));
-        }
-        LOG.trace("toCoord({}) returns {}", urls, result);
-        return result;
-    }
-
-    /**
-     * Converts the given URL to artifact coordinates.
-     *
-     * @param url The URL.
-     * @return The corresponding artifact coordinates.
-     * @throws MalformedURLException if the URL is malformed.
-     */
-    public static String toCoord(URL url) throws MalformedURLException {
-        String repository = url.toString();
-        String unwrappedRepo = repository.replaceFirst("wrap:", "");
-        Parser parser = new Parser(unwrappedRepo);
-        String coord = parser.getGroup().replace("mvn:", "") + ":" + parser.getArtifact();
-        if (parser.getType() != null) {
-            coord = coord + ":" + parser.getType();
-        }
-        if (parser.getClassifier() != null) {
-            coord = coord + ":" + parser.getClassifier();
-        }
-        coord = coord + ":" + parser.getVersion().replaceAll("\\$.*$", "");
-        LOG.trace("toCoord({}) returns {}", url, coord);
-        return coord;
-    }
-
-    /**
-     * Parses the given repository as URLs and converts them to artifact coordinates.
-     *
-     * @param repository The repository (list of URLs).
-     * @return The corresponding artifact coordinates.
-     * @throws MalformedURLException if a URL is malformed.
-     */
-    public static Set<String> mvnUrlsToCoord(List<String> repository) throws MalformedURLException {
-        Set<String> result = new LinkedHashSet<>();
-        for (String url : repository) {
-            result.add(toCoord(new URL(url)));
-        }
-        LOG.trace("mvnUrlsToCoord({}) returns {}", repository, result);
-        return result;
-    }
-
-    /**
-     * Converts the given features' repository to artifact coordinates.
-     *
-     * @param features The features.
-     * @return The corresponding artifact coordinates.
-     * @throws MalformedURLException if a URL is malformed.
-     */
-    public static Set<String> featuresRepositoryToCoords(Features features) throws MalformedURLException {
-        return mvnUrlsToCoord(features.getRepository());
-    }
-
-    /**
-     * Converts all the given features' repositories to artifact coordinates.
-     *
-     * @param features The features.
-     * @return The corresponding artifact coordinates.
-     * @throws MalformedURLException if a URL is malformed.
-     */
-    public static Set<String> featuresRepositoryToCoords(Set<Features> features) throws MalformedURLException {
-        Set<String> result = new LinkedHashSet<>();
-        for (Features feature : features) {
-            result.addAll(featuresRepositoryToCoords(feature));
-        }
-        LOG.trace("featuresRepositoryToCoords({}) returns {}", features, result);
-        return result;
-    }
-
-    /**
-     * Lists the artifact coordinates of the given feature's bundles and configuration files.
-     *
-     * @param feature The feature.
-     * @return The corresponding coordinates.
-     * @throws MalformedURLException if a URL is malformed.
-     */
-    public static Set<String> featureToCoords(Feature feature) throws MalformedURLException {
-        Set<String> result = new LinkedHashSet<>();
-        if (feature.getBundle() != null) {
-            result.addAll(bundlesToCoords(feature.getBundle()));
-        }
-        if (feature.getConfigfile() != null) {
-            result.addAll(configFilesToCoords(feature.getConfigfile()));
-        }
-        LOG.trace("featureToCoords({}) returns {}", feature.getName(), result);
-        return result;
-    }
-
-    /**
-     * Lists the artifact coordinates of the given configuration files.
-     *
-     * @param configfiles The configuration files.
-     * @return The corresponding coordinates.
-     * @throws MalformedURLException if a URL is malformed.
-     */
-    public static Set<String> configFilesToCoords(List<ConfigFile> configfiles) throws MalformedURLException {
-        Set<String> result = new LinkedHashSet<>();
-        for (ConfigFile configFile : configfiles) {
-            result.add(toCoord(new URL(configFile.getLocation())));
-        }
-        LOG.trace("configFilesToCoords({}) returns {}", configfiles, result);
-        return result;
-    }
-
-    /**
-     * Lists the artifact coordinates of the given bundles.
-     *
-     * @param bundles The bundles.
-     * @return The corresponding coordinates.
-     * @throws MalformedURLException if a URL is malformed.
-     */
-    public static Set<String> bundlesToCoords(List<Bundle> bundles) throws MalformedURLException {
-        Set<String> result = new LinkedHashSet<>();
-        for (Bundle bundle : bundles) {
-            result.add(toCoord(new URL(bundle.getLocation())));
-        }
-        LOG.trace("bundlesToCoords({}) returns {}", bundles, result);
-        return result;
-    }
-
-    /**
-     * Extracts all the artifact coordinates for the given features (repositories, bundles, configuration files).
-     *
-     * @param features The feature.
-     * @return The artifact coordinates.
-     * @throws MalformedURLException if a URL is malformed.
-     */
-    public static Set<String> featuresToCoords(Features features) throws MalformedURLException {
-        Set<String> result = new LinkedHashSet<>();
-        if (features.getRepository() != null) {
-            result.addAll(featuresRepositoryToCoords(features));
-        }
-        if (features.getFeature() != null) {
-            for (Feature feature : features.getFeature()) {
-                result.addAll(featureToCoords(feature));
-            }
-        }
-        LOG.trace("featuresToCoords({}) returns {}", features.getName(), result);
-        return result;
-    }
-
-    /**
-     * Extracts all the artifact coordinates for the given set of features (repositories, bundles, configuration
-     * files).
-     *
-     * @param features The features.
-     * @return The artifact coordinates.
-     * @throws MalformedURLException if a URL is malformed.
-     */
-    public static Set<String> featuresToCoords(Set<Features> features) throws MalformedURLException {
-        Set<String> result = new LinkedHashSet<>();
-        for (Features feature : features) {
-            result.addAll(featuresToCoords(feature));
-        }
-        LOG.trace("featuresToCoords({}) returns {}", features, result);
-        return result;
-    }
-
-    /**
-     * Unmarshal all the features in the given artifacts.
-     *
-     * @param featureArtifacts The artifacts.
-     * @return The features.
-     * @throws FileNotFoundException if a file is missing.
-     */
-    public static Set<Features> readFeatures(Set<Artifact> featureArtifacts) throws FileNotFoundException {
-        Set<Features> result = new LinkedHashSet<>();
-        for (Artifact artifact : featureArtifacts) {
-            result.add(readFeature(artifact));
-        }
-        LOG.trace("readFeatures({}) returns {}", featureArtifacts, result);
-        return result;
-    }
-
-    /**
-     * Unmarshal the features in the given artifact.
-     *
-     * @param artifact The artifact.
-     * @return The features.
-     * @throws FileNotFoundException if a file is missing.
-     */
-    public static Features readFeature(Artifact artifact) throws FileNotFoundException {
-        File file = artifact.getFile();
-        FileInputStream stream = new FileInputStream(file);
-        Features result = JaxbUtil.unmarshal(stream, false);
-        LOG.trace("readFeature({}) returns {} without resolving first", artifact, result.getName());
-        return result;
-    }
-
-    /**
-     * Unmarshal the features matching the given artifact coordinates.
-     *
-     * @param aetherUtil The Aether resolver.
-     * @param coords The artifact coordinates.
-     * @return The features.
-     * @throws ArtifactResolutionException if the coordinates can't be resolved.
-     * @throws FileNotFoundException if a file is missing.
-     */
-    public static Features readFeature(AetherUtil aetherUtil, String coords)
-            throws ArtifactResolutionException, FileNotFoundException {
-        Artifact artifact = aetherUtil.resolveArtifact(coords);
-        Features result = readFeature(artifact);
-        LOG.trace("readFeature({}) returns {} after resolving first", coords, result.getName());
-        return result;
-    }
-
-    /**
-     * Unmarshals all the features starting from the given feature.
-     *
-     * @param aetherUtil The Aether resolver.
-     * @param features The starting features.
-     * @param existingCoords The artifact coordinates which have already been unmarshalled.
-     * @return The features.
-     * @throws MalformedURLException if a URL is malformed.
-     * @throws FileNotFoundException if a file is missing.
-     * @throws ArtifactResolutionException if artifact coordinates can't be resolved.
-     */
-    public static Set<Features> findAllFeaturesRecursively(
-            AetherUtil aetherUtil, Features features, Set<String> existingCoords)
-            throws MalformedURLException, FileNotFoundException, ArtifactResolutionException {
-        LOG.debug("findAllFeaturesRecursively({}) starts", features.getName());
-        LOG.trace("findAllFeaturesRecursively knows about these coords: {}", existingCoords);
-        Set<Features> result = new LinkedHashSet<>();
-        Set<String> coords = FeatureUtil.featuresRepositoryToCoords(features);
-        for (String coord : coords) {
-            if (!existingCoords.contains(coord)) {
-                LOG.trace("findAllFeaturesRecursively() going to add {}", coord);
-                existingCoords.add(coord);
-                Features feature = FeatureUtil.readFeature(aetherUtil, coord);
-                result.add(feature);
-                LOG.debug("findAllFeaturesRecursively() added {}", coord);
-                result.addAll(findAllFeaturesRecursively(aetherUtil, FeatureUtil.readFeature(aetherUtil, coord),
-                        existingCoords));
-            } else {
-                LOG.trace("findAllFeaturesRecursively() skips known {}", coord);
-            }
-        }
-        return result;
-    }
-
-    /**
-     * Unmarshals all the features starting from the given features.
-     *
-     * @param aetherUtil The Aether resolver.
-     * @param features The starting features.
-     * @param existingCoords The artifact coordinates which have already been unmarshalled.
-     * @return The features.
-     * @throws MalformedURLException if a URL is malformed.
-     * @throws FileNotFoundException if a file is missing.
-     * @throws ArtifactResolutionException if artifact coordinates can't be resolved.
-     */
-    public static Set<Features> findAllFeaturesRecursively(
-            AetherUtil aetherUtil, Set<Features> features, Set<String> existingCoords)
-            throws MalformedURLException, FileNotFoundException, ArtifactResolutionException {
-        Set<Features> result = new LinkedHashSet<>();
-        for (Features feature : features) {
-            result.addAll(findAllFeaturesRecursively(aetherUtil, feature, existingCoords));
-        }
-        return result;
-    }
-
-    /**
-     * Unmarshals all the features (including known ones) starting from the given features.
-     *
-     * @param aetherUtil The Aether resolver.
-     * @param features The starting features.
-     * @return The features.
-     * @throws MalformedURLException if a URL is malformed.
-     * @throws FileNotFoundException if a file is missing.
-     * @throws ArtifactResolutionException if artifact coordinates can't be resolved.
-     */
-    public static Set<Features> findAllFeaturesRecursively(AetherUtil aetherUtil, Set<Features> features)
-            throws MalformedURLException, FileNotFoundException, ArtifactResolutionException {
-        return findAllFeaturesRecursively(aetherUtil, features, new LinkedHashSet<>());
-    }
-
-}
diff --git a/karaf-plugin/src/main/java/org/opendaylight/odlparent/KarafFeaturesDependencyFilter.java b/karaf-plugin/src/main/java/org/opendaylight/odlparent/KarafFeaturesDependencyFilter.java
deleted file mode 100644 (file)
index c97011c..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright (c) 2015 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-package org.opendaylight.odlparent;
-
-import java.util.List;
-import org.eclipse.aether.graph.DependencyFilter;
-import org.eclipse.aether.graph.DependencyNode;
-
-public class KarafFeaturesDependencyFilter implements DependencyFilter {
-
-    /**
-     * Accepts only Karaf features.
-     *
-     * @param node The dependency node.
-     * @param parents The parents (ignored).
-     * @return {@code true} if the dependency is a Karaf feature, {@code false} otherwise.
-     */
-    @Override
-    public boolean accept(DependencyNode node, List<DependencyNode> parents) {
-        return node != null
-                && node.getArtifact() != null
-                && node.getDependency() != null
-                && node.getDependency().getScope() != null
-                && node.getArtifact().getClassifier().equals("features")
-                && node.getArtifact().getExtension().equals("xml");
-    }
-
-}
diff --git a/karaf-plugin/src/main/java/org/opendaylight/odlparent/MvnToAetherMapper.java b/karaf-plugin/src/main/java/org/opendaylight/odlparent/MvnToAetherMapper.java
deleted file mode 100644 (file)
index dafbcb6..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * Copyright (c) 2015 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-
-package org.opendaylight.odlparent;
-
-import java.util.ArrayList;
-import java.util.List;
-import org.eclipse.aether.artifact.DefaultArtifact;
-import org.eclipse.aether.artifact.DefaultArtifactType;
-import org.eclipse.aether.graph.Dependency;
-
-public final class MvnToAetherMapper {
-    private MvnToAetherMapper() {
-        throw new UnsupportedOperationException();
-    }
-
-    /**
-     * Converts a Maven model dependency to an Aether dependency.
-     *
-     * @param dependency The Maven model dependency.
-     * @return The Aether dependency.
-     */
-    public static Dependency toAether(org.apache.maven.model.Dependency dependency) {
-        DefaultArtifact artifact = new DefaultArtifact(dependency.getGroupId(),
-                dependency.getArtifactId(),
-                dependency.getClassifier(),
-                null,
-                dependency.getVersion(),
-                new DefaultArtifactType(dependency.getType()));
-        return new Dependency(artifact, null);
-    }
-
-    /**
-     * Converts a list of Maven model dependencies to a list of Aether dependencies.
-     *
-     * @param dependencies The Maven model dependencies.
-     * @return The Aether dependencies.
-     */
-    public static List<Dependency> toAether(List<org.apache.maven.model.Dependency> dependencies) {
-        List<Dependency> result = new ArrayList<>();
-        for (org.apache.maven.model.Dependency dependency : dependencies) {
-            result.add(toAether(dependency));
-        }
-        return result;
-    }
-}
diff --git a/karaf-plugin/src/main/java/org/opendaylight/odlparent/PopulateLocalRepoMojo.java b/karaf-plugin/src/main/java/org/opendaylight/odlparent/PopulateLocalRepoMojo.java
deleted file mode 100644 (file)
index fe7235e..0000000
+++ /dev/null
@@ -1,181 +0,0 @@
-/*
- * Copyright 2001-2005 The Apache Software Foundation.
- *
- * 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.
- */
-
-package org.opendaylight.odlparent;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.net.URL;
-import java.util.Arrays;
-import java.util.Enumeration;
-import java.util.LinkedHashSet;
-import java.util.List;
-import java.util.Properties;
-import java.util.Set;
-
-import org.apache.karaf.features.internal.model.Features;
-import org.apache.maven.plugin.AbstractMojo;
-import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.plugin.MojoFailureException;
-import org.apache.maven.project.MavenProject;
-import org.eclipse.aether.RepositorySystem;
-import org.eclipse.aether.RepositorySystemSession;
-import org.eclipse.aether.artifact.Artifact;
-import org.eclipse.aether.repository.RemoteRepository;
-import org.eclipse.aether.resolution.ArtifactResolutionException;
-import org.opendaylight.odlparent.featuretest.CustomBundleUrlStreamHandlerFactory;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-// TODO: Use org.apache.maven.plugin.annotations.* to allow more flexibility for non-ODL consumers.
-
-/**
- * Mojo populating the local repository by delegating to Aether.
- *
- * @goal populate-local-repo
- * @phase prepare-package
- */
-public class PopulateLocalRepoMojo
-        extends AbstractMojo {
-    private static final Logger LOG = LoggerFactory.getLogger(PopulateLocalRepoMojo.class);
-
-    static {
-        // Static initialization, as we may be invoked multiple times
-        // karaf-maven-plugin defines its own URLStreamHandlerFactory for install-kars, so we may find a factory
-        // already defined (but it handles "mvn:" and "wrap:mvn:" so we should be OK)
-        try {
-            URL.setURLStreamHandlerFactory(new CustomBundleUrlStreamHandlerFactory());
-        } catch (Error e) {
-            LOG.warn("populate-local-repo: URL factory is already defined");
-        }
-    }
-
-    /**
-     * The Maven project being built.
-     *
-     * @component
-     * @required
-     * @readonly
-     */
-    private MavenProject project;
-
-    /**
-     * The entry point to Aether, i.e. the component doing all the work.
-     *
-     * @component
-     */
-    private RepositorySystem repoSystem;
-
-    /**
-     * The current repository/network configuration of Maven.
-     *
-     * @parameter default-value="${repositorySystemSession}"
-     * @readonly
-     */
-    private RepositorySystemSession repoSession;
-
-    /**
-     * The project's remote repositories to use for the resolution of plugins and their dependencies.
-     *
-     * @parameter default-value="${project.remoteProjectRepositories}"
-     * @readonly
-     */
-    private List<RemoteRepository> remoteRepos;
-
-    /**
-     * The local repository to use for the resolution of plugins and their dependencies.
-     *
-     * @parameter
-     */
-    private File localRepo;
-
-    private AetherUtil aetherUtil;
-
-    @Override
-    public void execute() throws MojoExecutionException, MojoFailureException {
-
-        aetherUtil = new AetherUtil(repoSystem, repoSession, remoteRepos, localRepo);
-        try {
-            Set<Artifact> startupArtifacts = readStartupProperties();
-            aetherUtil.installArtifacts(startupArtifacts);
-            Set<Artifact> featureArtifacts = readFeatureCfg();
-            featureArtifacts.addAll(
-                    aetherUtil.resolveDependencies(MvnToAetherMapper.toAether(project.getDependencies()),
-                            new KarafFeaturesDependencyFilter()));
-            Set<Features> features = FeatureUtil.readFeatures(featureArtifacts);
-            // Do not provide FeatureUtil.featuresRepositoryToCoords(features)) as existingCoords
-            // to findAllFeaturesRecursively, as those coords are not resolved yet, and it would lead to Bug 6187.
-            features.addAll(FeatureUtil.findAllFeaturesRecursively(aetherUtil, features));
-            for (Features feature : features) {
-                LOG.info("Feature repository discovered recursively: {}", feature.getName());
-            }
-            Set<Artifact> artifacts = aetherUtil.resolveArtifacts(FeatureUtil.featuresToCoords(features));
-            artifacts.addAll(featureArtifacts);
-
-            for (Artifact artifact : artifacts) {
-                LOG.debug("Artifact to be installed: {}", artifact.toString());
-            }
-            if (localRepo != null) {
-                aetherUtil.installArtifacts(artifacts);
-            }
-        } catch (Exception e) {
-            throw new MojoExecutionException("Failed to execute", e);
-        }
-    }
-
-    private Set<Artifact> readFeatureCfg() throws ArtifactResolutionException {
-        Set<Artifact> artifacts = new LinkedHashSet<>();
-        File file = new File(localRepo.getParentFile().toString() + "/etc/org.apache.karaf.features.cfg");
-        Properties prop = new Properties();
-        try {
-            prop.load(new FileInputStream(file));
-            String featuresRepositories = prop.getProperty("featuresRepositories");
-            List<String> result = Arrays.asList(featuresRepositories.split(","));
-            for (String mvnUrl : result) {
-                artifacts.add(aetherUtil.resolveArtifact(FeatureUtil.toCoord(new URL(mvnUrl))));
-            }
-        } catch (FileNotFoundException e) {
-            LOG.info("Could not find properties file: {}", file.getAbsolutePath(), e);
-        } catch (IOException e) {
-            LOG.info("Could not read properties file: {}", file.getAbsolutePath(), e);
-        }
-
-        return artifacts;
-    }
-
-    private Set<Artifact> readStartupProperties() throws ArtifactResolutionException {
-        Set<Artifact> artifacts = new LinkedHashSet<>();
-        File file = new File(localRepo.getParentFile().toString() + "/etc/startup.properties");
-        Properties prop = new Properties();
-        try {
-            prop.load(new FileInputStream(file));
-            Enumeration<Object> mvnUrls = prop.keys();
-            while(mvnUrls.hasMoreElements()) {
-                String mvnUrl = (String)mvnUrls.nextElement();
-                Artifact artifact = aetherUtil.resolveArtifact(FeatureUtil.toCoord(new URL(mvnUrl)));
-                artifacts.add(artifact);
-            }
-        } catch (FileNotFoundException e) {
-            LOG.info("Could not find properties file: {}", file.getAbsolutePath(), e);
-        } catch (IOException e) {
-            LOG.info("Could not read properties file: {}", file.getAbsolutePath(), e);
-        }
-
-        return artifacts;
-    }
-}
diff --git a/karaf/karaf-parent/pom.xml b/karaf/karaf-parent/pom.xml
deleted file mode 100644 (file)
index c4835ab..0000000
+++ /dev/null
@@ -1,439 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
-
-This program and the accompanying materials are made available under the
-terms of the Eclipse Public License v1.0 which accompanies this distribution,
-and is available at http://www.eclipse.org/legal/epl-v10.html
--->
-<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">
-  <parent>
-    <groupId>org.opendaylight.odlparent</groupId>
-    <artifactId>odlparent</artifactId>
-    <version>1.9.1-SNAPSHOT</version>
-    <relativePath>../../odlparent</relativePath>
-  </parent>
-  <modelVersion>4.0.0</modelVersion>
-  <artifactId>karaf-parent</artifactId>
-  <packaging>pom</packaging>
-  <name>ODL :: odlparent :: ${project.artifactId}</name>
-
-  <properties>
-    <branding.version>1.9.1-SNAPSHOT</branding.version>
-    <karaf.localFeature>standard</karaf.localFeature>
-    <!--  Karaf Maven plugin 3.0.3 reinstalls already installed
-          boot features to container, which could be observed
-          in huge logs and seems like loop in build, even if it
-          is not.
-     -->
-    <karaf.maven.version>3.0.1</karaf.maven.version>
-    <karaf.archiveTarGz>true</karaf.archiveTarGz>
-    <karaf.archiveZip>true</karaf.archiveZip>
-  </properties>
-  <dependencyManagement>
-    <dependencies>
-      <dependency>
-        <!-- scope is compile so all features (there is only one) are installed
-        into startup.properties and the feature repo itself is not installed -->
-        <groupId>org.apache.karaf.features</groupId>
-        <artifactId>framework</artifactId>
-        <version>${karaf.version}</version>
-        <type>kar</type>
-        <exclusions>
-          <exclusion>
-            <groupId>org.osgi</groupId>
-            <artifactId>org.osgi.core</artifactId>
-          </exclusion>
-          <exclusion>
-            <groupId>org.apache.sshd</groupId>
-            <artifactId>sshd-core</artifactId>
-          </exclusion>
-          <!-- We provide a newer version of Aries Proxy -->
-          <exclusion>
-            <groupId>org.apache.aries.proxy</groupId>
-            <artifactId>org.apache.aries.proxy.impl</artifactId>
-          </exclusion>
-        </exclusions>
-      </dependency>
-    </dependencies>
-  </dependencyManagement>
-  <dependencies>
-    <!-- karaf standard features - scope is runtime so the feature repo is listed in the
-         features cfg file but the features aren't all installed by default via the
-         startup.properties. The features may be installed using the karaf-maven-plugin
-         configuration. -->
-    <dependency>
-      <groupId>org.apache.karaf.features</groupId>
-      <artifactId>standard</artifactId>
-      <version>${karaf.version}</version>
-      <type>xml</type>
-      <classifier>features</classifier>
-      <scope>runtime</scope>
-    </dependency>
-    <!-- karaf region dependency -->
-    <dependency>
-      <groupId>org.apache.karaf.region</groupId>
-      <artifactId>org.apache.karaf.region.persist</artifactId>
-      <version>${karaf.version}</version>
-      <scope>runtime</scope>
-    </dependency>
-    <!-- ODL Branding -->
-    <dependency>
-      <groupId>org.opendaylight.odlparent</groupId>
-      <artifactId>karaf.branding</artifactId>
-      <version>${branding.version}</version>
-      <scope>compile</scope>
-    </dependency>
-
-    <!-- Resources needed -->
-    <dependency>
-      <groupId>org.opendaylight.odlparent</groupId>
-      <artifactId>opendaylight-karaf-resources</artifactId>
-      <version>1.9.1-SNAPSHOT</version>
-    </dependency>
-
-    <!-- Aries Proxy 1.0.5 contains important bug fixes -->
-    <!-- Once we upgrade to a version of Karaf which has at least 1.0.5, this can be removed -->
-    <dependency>
-      <groupId>org.apache.aries.proxy</groupId>
-      <artifactId>org.apache.aries.proxy.impl</artifactId>
-      <version>1.0.5</version>
-    </dependency>
-  </dependencies>
-  <build>
-    <pluginManagement>
-      <plugins>
-        <plugin>
-          <groupId>org.eclipse.m2e</groupId>
-          <artifactId>lifecycle-mapping</artifactId>
-          <version>1.0.0</version>
-          <configuration>
-            <lifecycleMappingMetadata>
-              <pluginExecutions>
-                <pluginExecution>
-                  <pluginExecutionFilter>
-                    <groupId>org.apache.felix</groupId>
-                    <artifactId>maven-bundle-plugin</artifactId>
-                    <versionRange>[0,)</versionRange>
-                    <goals>
-                      <goal>cleanVersions</goal>
-                    </goals>
-                  </pluginExecutionFilter>
-                  <action>
-                    <ignore></ignore>
-                  </action>
-                </pluginExecution>
-                <pluginExecution>
-                  <pluginExecutionFilter>
-                    <groupId>org.apache.maven.plugins</groupId>
-                    <artifactId>maven-dependency-plugin</artifactId>
-                    <versionRange>[0,)</versionRange>
-                    <goals>
-                      <goal>copy</goal>
-                      <goal>unpack</goal>
-                    </goals>
-                  </pluginExecutionFilter>
-                  <action>
-                    <ignore></ignore>
-                  </action>
-                </pluginExecution>
-                <pluginExecution>
-                  <pluginExecutionFilter>
-                    <groupId>org.apache.karaf.tooling</groupId>
-                    <artifactId>karaf-maven-plugin</artifactId>
-                    <versionRange>[0,)</versionRange>
-                    <goals>
-                      <goal>commands-generate-help</goal>
-                      <goal>features-add-to-repository</goal>
-                      <goal>install-kars</goal>
-                    </goals>
-                  </pluginExecutionFilter>
-                  <action>
-                    <ignore></ignore>
-                  </action>
-                </pluginExecution>
-                <pluginExecution>
-                  <pluginExecutionFilter>
-                    <groupId>org.fusesource.scalate</groupId>
-                    <artifactId>maven-scalate-plugin</artifactId>
-                    <versionRange>[0,)</versionRange>
-                    <goals>
-                      <goal>sitegen</goal>
-                    </goals>
-                  </pluginExecutionFilter>
-                  <action>
-                    <ignore></ignore>
-                  </action>
-                </pluginExecution>
-                <pluginExecution>
-                  <pluginExecutionFilter>
-                    <groupId>org.apache.servicemix.tooling</groupId>
-                    <artifactId>depends-maven-plugin</artifactId>
-                    <versionRange>[0,)</versionRange>
-                    <goals>
-                      <goal>generate-depends-file</goal>
-                    </goals>
-                  </pluginExecutionFilter>
-                  <action>
-                    <ignore></ignore>
-                  </action>
-                </pluginExecution>
-              </pluginExecutions>
-            </lifecycleMappingMetadata>
-          </configuration>
-        </plugin>
-
-        <plugin>
-          <artifactId>maven-resources-plugin</artifactId>
-          <executions>
-            <execution>
-              <id>copy-resources</id>
-              <!-- here the phase you need -->
-              <phase>prepare-package</phase>
-              <goals>
-                <goal>copy-resources</goal>
-              </goals>
-              <configuration>
-                <outputDirectory>${basedir}/target/assembly</outputDirectory>
-                <resources>
-                  <resource>
-                    <directory>src/main/assembly</directory>
-                  </resource>
-                </resources>
-                <overwrite>true</overwrite>
-              </configuration>
-            </execution>
-          </executions>
-        </plugin>
-        <plugin>
-          <groupId>org.apache.karaf.tooling</groupId>
-          <artifactId>karaf-maven-plugin</artifactId>
-          <version>${karaf.maven.version}</version>
-          <extensions>true</extensions>
-          <configuration>
-            <startupFeatures>
-              <!-- For some reason, the eventadmin bundle works fine when installed via the
-                   startup.properties but doesn't work properly when installed via the
-                   boot features.  -->
-              <feature>eventadmin</feature>
-            </startupFeatures>
-            <bootFeatures>
-              <feature>standard</feature>
-              <feature>${karaf.localFeature}</feature>
-            </bootFeatures>
-            <!-- no installedFeatures -->
-          </configuration>
-          <executions>
-            <execution>
-              <id>populate-system</id>
-              <phase>generate-resources</phase>
-              <goals>
-                <goal>features-add-to-repository</goal>
-              </goals>
-              <configuration>
-                <descriptors>
-                  <descriptor>mvn:org.apache.karaf.features/standard/${karaf.version}/xml/features</descriptor>
-                </descriptors>
-                <features>
-                  <feature>standard</feature>
-                  <feature>config</feature>
-                  <feature>package</feature>
-                  <feature>kar</feature>
-                  <feature>ssh</feature>
-                  <feature>management</feature>
-                  <feature>war</feature>
-                </features>
-                <repository>target/assembly/system</repository>
-              </configuration>
-            </execution>
-            <execution>
-              <id>process-resources</id>
-              <goals>
-                <goal>install-kars</goal>
-              </goals>
-              <phase>process-resources</phase>
-            </execution>
-            <execution>
-              <id>package</id>
-              <goals>
-                <goal>instance-create-archive</goal>
-              </goals>
-              <configuration>
-                <archiveTarGz>${karaf.archiveTarGz}</archiveTarGz>
-                <archiveZip>${karaf.archiveZip}</archiveZip>
-              </configuration>
-            </execution>
-          </executions>
-        </plugin>
-        <plugin>
-          <groupId>org.apache.maven.plugins</groupId>
-          <artifactId>maven-checkstyle-plugin</artifactId>
-          <version>${checkstyle.version}</version>
-          <configuration>
-            <excludes>**\/target\/,**\/bin\/,**\/target-ide\/,**\/configuration\/initial\/</excludes>
-          </configuration>
-        </plugin>
-        <plugin>
-          <groupId>org.apache.maven.plugins</groupId>
-          <artifactId>maven-dependency-plugin</artifactId>
-          <executions>
-            <execution>
-              <id>copy</id>
-              <goals>
-                <goal>copy</goal>
-              </goals>
-              <!-- here the phase you need -->
-              <phase>generate-resources</phase>
-              <configuration>
-                <artifactItems>
-                  <artifactItem>
-                    <groupId>org.opendaylight.odlparent</groupId>
-                    <artifactId>karaf.branding</artifactId>
-                    <version>${karaf.branding.version}</version>
-                    <outputDirectory>target/assembly/lib</outputDirectory>
-                    <destFileName>karaf.branding-${branding.version}.jar</destFileName>
-                  </artifactItem>
-                </artifactItems>
-              </configuration>
-            </execution>
-            <execution>
-              <id>unpack-karaf-resources</id>
-              <goals>
-                <goal>unpack-dependencies</goal>
-              </goals>
-              <phase>prepare-package</phase>
-              <configuration>
-                <outputDirectory>${project.build.directory}/assembly</outputDirectory>
-                <groupId>org.opendaylight.odlparent</groupId>
-                <includeArtifactIds>opendaylight-karaf-resources</includeArtifactIds>
-                <excludes>META-INF\/**</excludes>
-                <excludeTransitive>true</excludeTransitive>
-                <ignorePermissions>false</ignorePermissions>
-              </configuration>
-            </execution>
-            <execution>
-              <id>org.ops4j.pax.url.mvn.cfg</id>
-              <goals>
-                <goal>copy</goal>
-              </goals>
-              <phase>prepare-package</phase>
-              <configuration>
-                <artifactItems>
-                  <artifactItem>
-                    <groupId>org.opendaylight.odlparent</groupId>
-                    <artifactId>opendaylight-karaf-resources</artifactId>
-                    <type>properties</type>
-                    <classifier>config</classifier>
-                    <overWrite>true</overWrite>
-                    <outputDirectory>${project.build.directory}/assembly/etc/</outputDirectory>
-                    <destFileName>org.ops4j.pax.url.mvn.cfg</destFileName>
-                  </artifactItem>
-                </artifactItems>
-                <overWriteReleases>true</overWriteReleases>
-                <overWriteSnapshots>true</overWriteSnapshots>
-              </configuration>
-            </execution>
-          </executions>
-        </plugin>
-        <plugin>
-          <groupId>org.apache.maven.plugins</groupId>
-          <artifactId>maven-antrun-plugin</artifactId>
-          <executions>
-            <execution>
-              <phase>prepare-package</phase>
-              <goals>
-                <goal>run</goal>
-              </goals>
-              <configuration>
-                <target>
-                  <chmod perm="755">
-                    <fileset dir="${project.build.directory}/assembly/bin">
-                      <include name="karaf"/>
-                      <include name="instance"/>
-                      <include name="start"/>
-                      <include name="stop"/>
-                      <include name="status"/>
-                      <include name="client"/>
-                      <include name="shell"/>
-                    </fileset>
-                  </chmod>
-                  <!-- Remove this once Karaf provides a new-enough version of Aries Proxy -->
-                  <replace dir="${project.build.directory}/assembly/etc" token="org.apache.aries.proxy.impl/1.0.4"
-                           value="org.apache.aries.proxy.impl/1.0.5">
-                    <include name="startup.properties"/>
-                  </replace>
-
-                  <!-- BUG-5917, BUG-5943: remove overrides for platform factories and neuter Xalan's services-->
-                  <replace dir="${project.build.directory}/assembly/etc" token="javax.xml.parsers.DocumentBuilderFactory="
-                           value="# BUG-5943: javax.xml.parsers.DocumentBuilderFactory=">
-                    <include name="system.properties"/>
-                  </replace>
-                  <replace dir="${project.build.directory}/assembly/etc" token="javax.xml.transform.TransformerFactory="
-                           value="# BUG-5917: javax.xml.transform.TransformerFactory=">
-                    <include name="system.properties"/>
-                  </replace>
-                  <!-- Karaf 3.0.6 ships the Xalan 2.7.2_2 ServiceMix bundle -->
-                  <jar destfile="${project.build.directory}/assembly/lib/endorsed/odl-org.apache.servicemix.bundles.xalan-2.7.2_2_odl.jar">
-                    <zipfileset src="${project.build.directory}/assembly/lib/endorsed/org.apache.servicemix.bundles.xalan-2.7.2_2.jar"
-                                excludes="META-INF/services/javax.xml.*" erroronmissingarchive="false"/>
-                  </jar>
-                  <delete file="${project.build.directory}/assembly/lib/endorsed/org.apache.servicemix.bundles.xalan-2.7.2_2.jar" />
-                  <!-- Karaf 3.0.7 ships the Xalan 2.7.2_3 ServiceMix bundle -->
-                  <jar destfile="${project.build.directory}/assembly/lib/endorsed/odl-org.apache.servicemix.bundles.xalan-2.7.2_3_odl.jar">
-                    <zipfileset src="${project.build.directory}/assembly/lib/endorsed/org.apache.servicemix.bundles.xalan-2.7.2_3.jar"
-                                excludes="META-INF/services/javax.xml.*" erroronmissingarchive="false"/>
-                  </jar>
-                  <delete file="${project.build.directory}/assembly/lib/endorsed/org.apache.servicemix.bundles.xalan-2.7.2_3.jar" />
-
-                </target>
-              </configuration>
-            </execution>
-          </executions>
-        </plugin>
-        <plugin>
-            <groupId>org.opendaylight.odlparent</groupId>
-            <artifactId>karaf-plugin</artifactId>
-            <version>1.9.1-SNAPSHOT</version>
-            <executions>
-                <execution>
-                    <id>populate-local-repo</id>
-                    <goals>
-                        <goal>populate-local-repo</goal>
-                    </goals>
-                    <configuration>
-                        <localRepo>${project.build.directory}/assembly/system</localRepo>
-                    </configuration>
-                </execution>
-            </executions>
-        </plugin>
-      </plugins>
-    </pluginManagement>
-    <plugins>
-      <plugin>
-        <artifactId>maven-resources-plugin</artifactId>
-      </plugin>
-      <plugin>
-        <groupId>org.apache.karaf.tooling</groupId>
-        <artifactId>karaf-maven-plugin</artifactId>
-      </plugin>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-checkstyle-plugin</artifactId>
-      </plugin>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-dependency-plugin</artifactId>
-      </plugin>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-antrun-plugin</artifactId>
-      </plugin>
-      <plugin>
-        <groupId>org.opendaylight.odlparent</groupId>
-        <artifactId>karaf-plugin</artifactId>
-      </plugin>
-    </plugins>
-  </build>
-
-</project>
diff --git a/karaf/opendaylight-karaf-empty/pom.xml b/karaf/opendaylight-karaf-empty/pom.xml
deleted file mode 100644 (file)
index 1021836..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-<?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">
-  <parent>
-    <groupId>org.opendaylight.odlparent</groupId>
-    <artifactId>karaf-parent</artifactId>
-    <version>1.9.1-SNAPSHOT</version>
-    <relativePath>../karaf-parent</relativePath>
-  </parent>
-  <modelVersion>4.0.0</modelVersion>
-  <artifactId>opendaylight-karaf-empty</artifactId>
-  <packaging>pom</packaging>
-  <name>ODL :: odlparent :: ${project.artifactId}</name>
-  <dependencies>
-    <dependency>
-      <!-- scope is compile so all features (there is only one) are installed
-      into startup.properties and the feature repo itself is not installed -->
-      <groupId>org.apache.karaf.features</groupId>
-      <artifactId>framework</artifactId>
-      <type>kar</type>
-    </dependency>
-  </dependencies>
-  <scm>
-    <connection>scm:git:http://git.opendaylight.org/gerrit/odlparent.git</connection>
-    <developerConnection>scm:git:ssh://git.opendaylight.org:29418/odlparent.git</developerConnection>
-    <tag>HEAD</tag>
-    <url>https://git.opendaylight.org/gerrit/gitweb?p=odlparent.git;a=tree;f=karaf/opendaylight-karaf-empty;hb=HEAD</url>
-  </scm>
-</project>
diff --git a/karaf/opendaylight-karaf-resources/pom.xml b/karaf/opendaylight-karaf-resources/pom.xml
deleted file mode 100644 (file)
index 144cfda..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
--->
-<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.opendaylight.odlparent</groupId>
-    <artifactId>odlparent</artifactId>
-    <version>1.9.1-SNAPSHOT</version>
-    <relativePath>../../odlparent</relativePath>
-  </parent>
-  <artifactId>opendaylight-karaf-resources</artifactId>
-  <description>Resources for opendaylight-karaf</description>
-  <packaging>jar</packaging>
-  <name>ODL :: odlparent :: ${project.artifactId}</name>
-  <properties>
-    <!-- These are used in the instance script and need to be kept in sync with Karaf's definitions -->
-    <aries.blueprint.api.version>1.0.1</aries.blueprint.api.version>
-    <aries.blueprint.cm.version>1.0.8</aries.blueprint.cm.version>
-    <aries.blueprint.core.version>1.6.1</aries.blueprint.core.version>
-    <felix.framework.version>4.2.1</felix.framework.version>
-    <jline.version>2.13</jline.version>
-    <mina.version>2.0.7</mina.version>
-    <pax.logging.version>1.8.4</pax.logging.version>
-    <slf4j.version>1.7.12</slf4j.version>
-    <sshd.version>0.14.0</sshd.version>
-  </properties>
-  <build>
-    <resources>
-      <resource>
-        <directory>src/main/resources</directory>
-        <filtering>true</filtering>
-      </resource>
-    </resources>
-    <plugins>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-dependency-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>copy</id>
-            <goals>
-              <goal>copy</goal>
-            </goals>
-            <!-- here the phase you need -->
-            <phase>generate-resources</phase>
-            <configuration>
-              <artifactItems>
-                  <!-- Needs to be copied to lib/ext in order to start bouncy provider for mina sshd -->
-                <artifactItem>
-                    <groupId>org.bouncycastle</groupId>
-                    <artifactId>bcprov-jdk15on</artifactId>
-                    <version>${bouncycastle.version}</version>
-                    <outputDirectory>target/classes/lib/ext</outputDirectory>
-                    <destFileName>bcprov-jdk15on-${bouncycastle.version}.jar</destFileName>
-                </artifactItem>
-                <artifactItem>
-                    <groupId>org.bouncycastle</groupId>
-                    <artifactId>bcpkix-jdk15on</artifactId>
-                    <version>${bouncycastle.version}</version>
-                    <outputDirectory>target/classes/lib/ext</outputDirectory>
-                    <destFileName>bcpkix-jdk15on-${bouncycastle.version}.jar</destFileName>
-                </artifactItem>
-              </artifactItems>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <groupId>org.codehaus.mojo</groupId>
-        <artifactId>build-helper-maven-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>attach-artifacts</id>
-            <goals>
-              <goal>attach-artifact</goal>
-            </goals>
-            <phase>package</phase>
-            <configuration>
-              <artifacts>
-                <artifact>
-                  <file>src/main/assembly/etc/org.ops4j.pax.url.mvn.cfg</file>
-                  <type>properties</type>
-                  <classifier>config</classifier>
-                </artifact>
-              </artifacts>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-</project>
diff --git a/karaf/opendaylight-karaf-resources/src/main/assembly/etc/org.ops4j.pax.url.mvn.cfg b/karaf/opendaylight-karaf-resources/src/main/assembly/etc/org.ops4j.pax.url.mvn.cfg
deleted file mode 100644 (file)
index 0e3ba31..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-################################################################################
-#
-#    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.
-#
-################################################################################
-
-#
-# If set to true, the following property will not allow any certificate to be used
-# when accessing Maven repositories through SSL
-#
-#org.ops4j.pax.url.mvn.certificateCheck=
-
-#
-# Path to the local Maven settings file.
-# The repositories defined in this file will be automatically added to the list
-# of default repositories if the 'org.ops4j.pax.url.mvn.repositories' property
-# below is not set.
-# The following locations are checked for the existence of the settings.xml file
-#   * 1. looks for the specified url
-#   * 2. if not found looks for ${user.home}/.m2/settings.xml
-#   * 3. if not found looks for ${maven.home}/conf/settings.xml
-#   * 4. if not found looks for ${M2_HOME}/conf/settings.xml
-#
-#org.ops4j.pax.url.mvn.settings=
-
-#
-# Path to the local Maven repository which is used to avoid downloading
-# artifacts when they already exist locally.
-# The value of this property will be extracted from the settings.xml file
-# above, or defaulted to:
-#     System.getProperty( "user.home" ) + "/.m2/repository"
-#
-org.ops4j.pax.url.mvn.localRepository=${karaf.home}/${karaf.default.repository}
-
-#
-# Default this to false. It's just weird to use undocumented repos
-#
-org.ops4j.pax.url.mvn.useFallbackRepositories=false
-
-#
-# Uncomment if you don't wanna use the proxy settings
-# from the Maven conf/settings.xml file
-#
-# org.ops4j.pax.url.mvn.proxySupport=false
-
-#
-# Disable aether support by default.  This ensure that the defaultRepositories
-# below will be used
-#
-#org.ops4j.pax.url.mvn.disableAether=true
-
-#
-# Comma separated list of repositories scanned when resolving an artifact.
-# Those repositories will be checked before iterating through the
-#    below list of repositories and even before the local repository
-# A repository url can be appended with zero or more of the following flags:
-#    @snapshots  : the repository contains snaphots
-#    @noreleases : the repository does not contain any released artifacts
-#
-# The following property value will add the system folder as a repo.
-#
-#org.ops4j.pax.url.mvn.defaultRepositories=
-
-# Use the default local repo (e.g.~/.m2/repository) as a "remote" repo
-org.ops4j.pax.url.mvn.defaultLocalRepoAsRemote=false
-
-#
-# Comma separated list of repositories scanned when resolving an artifact.
-# The default list includes the following repositories containing releases:
-#    http://repo1.maven.org/maven2
-#    http://repository.apache.org/content/groups/snapshots-group
-#    http://svn.apache.org/repos/asf/servicemix/m2-repo
-#    http://repository.springsource.com/maven/bundles/release
-#    http://repository.springsource.com/maven/bundles/external
-# To add repositories to the default ones, prepend '+' to the list of repositories
-# to add.
-# A repository url can be appended with zero or more of the following flags:
-#    @snapshots  : the repository contains snaphots
-#    @noreleases : the repository does not contain any released artifacts
-#    @id=reponid : the id for the repository, just like in the settings.xml this is optional but recomendet
-#
-# The default list doesn't contain any repository containing snapshots as it can impact the artifacts resolution.
-# You may want to add the following repositories containing snapshots:
-#    http://repository.apache.org/content/groups/snapshots-group@id=apache@snapshots@noreleases
-#    http://oss.sonatype.org/content/repositories/snapshots@id=sonatype.snapshots.deploy@snapshots@norelease
-#    http://oss.sonatype.org/content/repositories/ops4j-snapshots@id=ops4j.sonatype.snapshots.deploy@snapshots@noreleases
-#
-org.ops4j.pax.url.mvn.repositories= \
-    file:${karaf.home}/${karaf.default.repository}@id=system.repository, \
-    file:${karaf.data}/kar@id=kar.repository@multi
diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/bin/instance b/karaf/opendaylight-karaf-resources/src/main/resources/bin/instance
deleted file mode 100755 (executable)
index 595c77f..0000000
+++ /dev/null
@@ -1,371 +0,0 @@
-#!/bin/bash
-#
-#    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.
-#
-
-realpath() {
-  OURPWD="$PWD"
-  cd "$(dirname "$1")"
-  LINK=$(readlink "$(basename "$1")")
-  while [ "$LINK" ]; do
-    cd "$(dirname "$LINK")"
-    LINK=$(readlink "$(basename "$1")")
-  done
-  REALPATH="$PWD/$(basename "$1")"
-  cd "$OURPWD"
-  echo "$REALPATH"
-}
-
-REALNAME=$(realpath "$0")
-DIRNAME=$(dirname "$REALNAME")
-PROGNAME=$(basename "$REALNAME")
-
-#
-# Sourcing environment settings for karaf similar to tomcats setenv
-#
-KARAF_SCRIPT="instance"
-export KARAF_SCRIPT
-if [ -f "$DIRNAME/setenv" ]; then
-  . "$DIRNAME/setenv"
-fi
-
-#
-# Check/Set up some easily accessible MIN/MAX params for JVM mem usage
-#
-if [ "x$JAVA_MIN_MEM" = "x" ]; then
-    JAVA_MIN_MEM=128M
-    export JAVA_MIN_MEM
-fi
-if [ "x$JAVA_MAX_MEM" = "x" ]; then
-    JAVA_MAX_MEM=512M
-    export JAVA_MAX_MEM
-fi
-
-warn() {
-    echo "${PROGNAME}: $*"
-}
-
-die() {
-    warn "$*"
-    exit 1
-}
-
-detectOS() {
-    # OS specific support (must be 'true' or 'false').
-    cygwin=false;
-    darwin=false;
-    aix=false;
-    os400=false;
-    case "`uname`" in
-        CYGWIN*)
-            cygwin=true
-            ;;
-        Darwin*)
-            darwin=true
-            ;;
-        AIX*)
-            aix=true
-            ;;
-        OS400*)
-            os400=true
-            ;;
-    esac
-    # For AIX, set an environment variable
-    if $aix; then
-         export LDR_CNTRL=MAXDATA=0xB0000000@DSA
-         echo $LDR_CNTRL
-    fi
-}
-
-unlimitFD() {
-    # Use the maximum available, or set MAX_FD != -1 to use that
-    if [ "x$MAX_FD" = "x" ]; then
-        MAX_FD="maximum"
-    fi
-
-    # Increase the maximum file descriptors if we can
-    if [ "$os400" = "false" ] && [ "$cygwin" = "false" ]; then
-        MAX_FD_LIMIT=`ulimit -H -n`
-        if [ "$MAX_FD_LIMIT" != 'unlimited' ]; then
-            if [ $? -eq 0 ]; then
-                if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ]; then
-                    # use the system max
-                    MAX_FD="$MAX_FD_LIMIT"
-                fi
-
-                ulimit -n $MAX_FD > /dev/null
-                # echo "ulimit -n" `ulimit -n`
-                if [ $? -ne 0 ]; then
-                    warn "Could not set maximum file descriptor limit: $MAX_FD"
-                fi
-            else
-                warn "Could not query system maximum file descriptor limit: $MAX_FD_LIMIT"
-            fi
-        fi
-    fi
-}
-
-locateHome() {
-    if [ "x$KARAF_HOME" != "x" ]; then
-        warn "Ignoring predefined value for KARAF_HOME"
-    fi
-
-    # In POSIX shells, CDPATH may cause cd to write to stdout
-    (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-
-    KARAF_HOME=`cd "$DIRNAME/.."; pwd`
-    if [ ! -d "$KARAF_HOME" ]; then
-        die "KARAF_HOME is not valid: $KARAF_HOME"
-    fi
-}
-
-locateBase() {
-    if [ "x$KARAF_BASE" != "x" ]; then
-        if [ ! -d "$KARAF_BASE" ]; then
-            die "KARAF_BASE is not valid: $KARAF_BASE"
-        fi
-    else
-        KARAF_BASE=$KARAF_HOME
-    fi
-}
-
-locateData() {
-    if [ "x$KARAF_DATA" != "x" ]; then
-        if [ ! -d "$KARAF_DATA" ]; then
-            die "KARAF_DATA is not valid: $KARAF_DATA"
-        fi
-    else
-        KARAF_DATA=$KARAF_BASE/data
-    fi
-}
-
-locateEtc() {
-    if [ "x$KARAF_ETC" != "x" ]; then
-        if [ ! -d "$KARAF_ETC" ]; then
-            die "KARAF_ETC is not valid: $KARAF_ETC"
-        fi
-    else
-        KARAF_ETC=$KARAF_BASE/etc
-    fi
-}
-
-setupNativePath() {
-    # Support for loading native libraries
-    LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:$KARAF_BASE/lib:$KARAF_HOME/lib"
-
-    # For Cygwin, set PATH from LD_LIBRARY_PATH
-    if $cygwin; then
-        LD_LIBRARY_PATH=`cygpath --path --windows "$LD_LIBRARY_PATH"`
-        PATH="$PATH;$LD_LIBRARY_PATH"
-        export PATH
-    fi
-    export LD_LIBRARY_PATH
-}
-
-pathCanonical() {
-    dst="${1}"
-    while [ -h "${dst}" ] ; do
-        ls=`ls -ld "${dst}"`
-        link=`expr "$ls" : '.*-> \(.*\)$'`
-        if expr "$link" : '/.*' > /dev/null; then
-            dst="$link"
-        else
-            dst="`dirname "${dst}"`/$link"
-        fi
-    done
-    bas=`basename "${dst}"`
-    dir=`dirname "${dst}"`
-    if [ "$bas" != "$dir" ]; then
-        dst="`pathCanonical "$dir"`/$bas"
-    fi
-    echo "${dst}" | sed -e 's#//#/#g' -e 's#/./#/#g' -e 's#/[^/]*/../#/#g'
-}
-
-locateJava() {
-    # Setup the Java Virtual Machine
-    if $cygwin ; then
-        [ -n "$JAVA" ] && JAVA=`cygpath --unix "$JAVA"`
-        [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
-    fi
-
-    if [ "x$JAVA_HOME" = "x" ] && [ "$darwin" = "true" ]; then
-        JAVA_HOME="$(/usr/libexec/java_home -v 1.7)"
-    fi
-    if [ "x$JAVA" = "x" ] && [ -r /etc/gentoo-release ] ; then
-        JAVA_HOME=`java-config --jre-home`
-    fi
-    if [ "x$JAVA" = "x" ]; then
-        if [ "x$JAVA_HOME" != "x" ]; then
-            if [ ! -d "$JAVA_HOME" ]; then
-                die "JAVA_HOME is not valid: $JAVA_HOME"
-            fi
-            JAVA="$JAVA_HOME/bin/java"
-        else
-            warn "JAVA_HOME not set; results may vary"
-            JAVA=`type java`
-            JAVA=`expr "$JAVA" : '.* \(/.*\)$'`
-            if [ "x$JAVA" = "x" ]; then
-                die "java command not found"
-            fi
-        fi
-    fi
-    if [ "x$JAVA_HOME" = "x" ]; then
-        JAVA_HOME="$(dirname $(dirname $(pathCanonical "$JAVA")))"
-    fi
-}
-
-detectJVM() {
-   #echo "`$JAVA -version`"
-   # This service should call `java -version`,
-   # read stdout, and look for hints
-   if $JAVA -version 2>&1 | grep "^IBM" ; then
-       JVM_VENDOR="IBM"
-   # on OS/400, java -version does not contain IBM explicitly
-   elif $os400; then
-       JVM_VENDOR="IBM"
-   else
-       JVM_VENDOR="SUN"
-   fi
-   # echo "JVM vendor is $JVM_VENDOR"
-}
-
-setupDebugOptions() {
-    if [ "x$JAVA_OPTS" = "x" ]; then
-        JAVA_OPTS="$DEFAULT_JAVA_OPTS"
-    fi
-    export JAVA_OPTS
-
-    if [ "x$EXTRA_JAVA_OPTS" != "x" ]; then
-        JAVA_OPTS="$JAVA_OPTS $EXTRA_JAVA_OPTS"
-    fi
-
-    # Set Debug options if enabled
-    if [ "x$KARAF_DEBUG" != "x" ]; then
-        # Use the defaults if JAVA_DEBUG_OPTS was not set
-        if [ "x$JAVA_DEBUG_OPTS" = "x" ]; then
-            JAVA_DEBUG_OPTS="$DEFAULT_JAVA_DEBUG_OPTS"
-        fi
-
-        JAVA_OPTS="$JAVA_DEBUG_OPTS $JAVA_OPTS"
-        warn "Enabling Java debug options: $JAVA_DEBUG_OPTS"
-    fi
-}
-
-setupDefaults() {
-    DEFAULT_JAVA_OPTS="-Xms$JAVA_MIN_MEM -Xmx$JAVA_MAX_MEM "
-
-    #Set the JVM_VENDOR specific JVM flags
-    if [ "$JVM_VENDOR" = "SUN" ]; then
-        DEFAULT_JAVA_OPTS="-server $DEFAULT_JAVA_OPTS -Dcom.sun.management.jmxremote"
-    elif [ "$JVM_VENDOR" = "IBM" ]; then
-        if $os400; then
-            DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS"
-        elif $aix; then
-            DEFAULT_JAVA_OPTS="-Xverify:none -Xdump:heap -Xlp $DEFAULT_JAVA_OPTS"
-        else
-            DEFAULT_JAVA_OPTS="-Xverify:none $DEFAULT_JAVA_OPTS"
-        fi
-    fi
-
-    # Add default security file option
-    if [ "x$ODL_JAVA_SECURITY_PROPERTIES" != "x" ]; then
-        DEFAULT_JAVA_OPTS="-Djava.security.properties="${ODL_JAVA_SECURITY_PROPERTIES}" $DEFAULT_JAVA_OPTS"
-    else
-        DEFAULT_JAVA_OPTS="-Djava.security.properties="${KARAF_ETC}/odl.java.security" $DEFAULT_JAVA_OPTS"
-    fi
-
-    # Add the jars in the lib dir
-    for file in "$KARAF_HOME"/lib/*.jar
-    do
-        if [ -z "$CLASSPATH" ]; then
-            CLASSPATH="$file"
-        else
-            CLASSPATH="$CLASSPATH:$file"
-        fi
-    done
-
-    DEFAULT_JAVA_DEBUG_PORT="5005"
-    if [ "x$JAVA_DEBUG_PORT" = "x" ]; then
-        JAVA_DEBUG_PORT="$DEFAULT_JAVA_DEBUG_PORT"
-    fi
-    DEFAULT_JAVA_DEBUG_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=$JAVA_DEBUG_PORT"
-
-    ##
-    ## TODO: Move to conf/profiler/yourkit.{sh|cmd}
-    ##
-    # Uncomment to enable YourKit profiling
-    #DEFAULT_JAVA_DEBUG_OPTS="-Xrunyjpagent"
-}
-
-init() {
-    # Determine if there is special OS handling we must perform
-    detectOS
-
-    # Unlimit the number of file descriptors if possible
-    unlimitFD
-
-    # Locate the Karaf home directory
-    locateHome
-
-    # Locate the Karaf base directory
-    locateBase
-
-    # Locate the Karaf data directory
-    locateData
-
-    # Locate the Karaf etc directory
-    locateEtc
-
-    # Setup the native library path
-    setupNativePath
-
-    # Locate the Java VM to execute
-    locateJava
-
-    # Determine the JVM vendor
-    detectJVM
-
-    # Setup default options
-    setupDefaults
-
-    # Install debug options
-    setupDebugOptions
-
-}
-
-run() {
-
-    CLASSPATH="${KARAF_HOME}/system/org/apache/karaf/instance/org.apache.karaf.instance.command/${karaf.version}/org.apache.karaf.instance.command-${karaf.version}.jar:${KARAF_HOME}/system/org/apache/karaf/instance/org.apache.karaf.instance.core/${karaf.version}/org.apache.karaf.instance.core-${karaf.version}.jar:${KARAF_HOME}/system/org/apache/karaf/shell/org.apache.karaf.shell.console/${karaf.version}/org.apache.karaf.shell.console-${karaf.version}.jar:${KARAF_HOME}/system/org/apache/karaf/shell/org.apache.karaf.shell.table/${karaf.version}/org.apache.karaf.shell.table-${karaf.version}.jar:${KARAF_HOME}/system/org/apache/aries/blueprint/org.apache.aries.blueprint.api/${aries.blueprint.api.version}/org.apache.aries.blueprint.api-${aries.blueprint.api.version}.jar:${KARAF_HOME}/system/org/apache/aries/blueprint/org.apache.aries.blueprint.core/${aries.blueprint.core.version}/org.apache.aries.blueprint.core-${aries.blueprint.core.version}.jar:${KARAF_HOME}/system/org/apache/aries/blueprint/org.apache.aries.blueprint.cm/${aries.blueprint.cm.version}/org.apache.aries.blueprint.cm-${aries.blueprint.cm.version}.jar:${KARAF_HOME}/system/org/ops4j/pax/logging/pax-logging-api/${pax.logging.version}/pax-logging-api-${pax.logging.version}.jar:${KARAF_HOME}/system/org/apache/felix/org.apache.felix.framework/${felix.framework.version}/org.apache.felix.framework-${felix.framework.version}.jar:${KARAF_HOME}/system/jline/jline/${jline.version}/jline-${jline.version}.jar:$CLASSPATH"
-
-    if $cygwin; then
-        KARAF_HOME=`cygpath --path --windows "$KARAF_HOME"`
-        KARAF_BASE=`cygpath --path --windows "$KARAF_BASE"`
-        KARAF_DATA=`cygpath --path --windows "$KARAF_DATA"`
-        KARAF_ETC=`cygpath --path --windows "$KARAF_ETC"`
-        if [ ! -z "$CLASSPATH" ]; then
-            CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
-        fi
-    fi
-
-    exec "$JAVA" $JAVA_OPTS -Dkaraf.instances="${KARAF_HOME}/instances" -Dkaraf.home="$KARAF_HOME" -Dkaraf.base="$KARAF_BASE" -Dkaraf.etc="$KARAF_ETC" -Djava.io.tmpdir="$KARAF_DATA/tmp" -Djava.util.logging.config.file="$KARAF_BASE/etc/java.util.logging.properties" $KARAF_OPTS $OPTS -classpath "$CLASSPATH" org.apache.karaf.instance.main.Execute "$@"
-}
-
-main() {
-    init
-    run "$@"
-}
-
-main "$@"
diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/bin/instance.bat b/karaf/opendaylight-karaf-resources/src/main/resources/bin/instance.bat
deleted file mode 100644 (file)
index ced8724..0000000
+++ /dev/null
@@ -1,160 +0,0 @@
-@echo off\r
-rem\r
-rem\r
-rem    Licensed to the Apache Software Foundation (ASF) under one or more\r
-rem    contributor license agreements.  See the NOTICE file distributed with\r
-rem    this work for additional information regarding copyright ownership.\r
-rem    The ASF licenses this file to You under the Apache License, Version 2.0\r
-rem    (the "License"); you may not use this file except in compliance with\r
-rem    the License.  You may obtain a copy of the License at\r
-rem\r
-rem       http://www.apache.org/licenses/LICENSE-2.0\r
-rem\r
-rem    Unless required by applicable law or agreed to in writing, software\r
-rem    distributed under the License is distributed on an "AS IS" BASIS,\r
-rem    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
-rem    See the License for the specific language governing permissions and\r
-rem    limitations under the License.\r
-rem\r
-\r
-if not "%ECHO%" == "" echo %ECHO%\r
-\r
-setlocal\r
-set DIRNAME=%~dp0%\r
-set PROGNAME=%~nx0%\r
-set ARGS=%*\r
-\r
-rem Sourcing environment settings for karaf similar to tomcats setenv\r
-SET KARAF_SCRIPT="instance.bat"\r
-if exist "%DIRNAME%setenv.bat" (\r
-  call "%DIRNAME%setenv.bat"\r
-)\r
-\r
-rem Check console window title. Set to Karaf by default\r
-if not "%KARAF_TITLE%" == "" (\r
-    title %KARAF_TITLE%\r
-) else (\r
-    title Karaf\r
-)\r
-\r
-rem Check/Set up some easily accessible MIN/MAX params for JVM mem usage\r
-if "%JAVA_MIN_MEM%" == "" (\r
-    set JAVA_MIN_MEM=128M\r
-)\r
-if "%JAVA_MAX_MEM%" == "" (\r
-    set JAVA_MAX_MEM=512M\r
-)\r
-\r
-goto BEGIN\r
-\r
-:warn\r
-    echo %PROGNAME%: %*\r
-goto :EOF\r
-\r
-:BEGIN\r
-\r
-rem # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #\r
-\r
-if not "%KARAF_HOME%" == "" (\r
-    call :warn Ignoring predefined value for KARAF_HOME\r
-)\r
-set KARAF_HOME=%DIRNAME%..\r
-if not exist "%KARAF_HOME%" (\r
-    call :warn KARAF_HOME is not valid: "%KARAF_HOME%"\r
-    goto END\r
-)\r
-\r
-if not "%KARAF_BASE%" == "" (\r
-    if not exist "%KARAF_BASE%" (\r
-       call :warn KARAF_BASE is not valid: "%KARAF_BASE%"\r
-       goto END\r
-    )\r
-)\r
-if "%KARAF_BASE%" == "" (\r
-  set "KARAF_BASE=%KARAF_HOME%"\r
-)\r
-\r
-if not "%KARAF_DATA%" == "" (\r
-    if not exist "%KARAF_DATA%" (\r
-        call :warn KARAF_DATA is not valid: "%KARAF_DATA%"\r
-        goto END\r
-    )\r
-)\r
-if "%KARAF_DATA%" == "" (\r
-    set "KARAF_DATA=%KARAF_BASE%\data"\r
-)\r
-\r
-if not "%KARAF_ETC%" == "" (\r
-    if not exist "%KARAF_ETC%" (\r
-        call :warn KARAF_ETC is not valid: "%KARAF_ETC%"\r
-        goto END\r
-    )\r
-)\r
-if "%KARAF_ETC%" == "" (\r
-    set "KARAF_ETC=%KARAF_BASE%\etc"\r
-)\r
-\r
-set DEFAULT_JAVA_OPTS=\r
-if not "%ODL_JAVA_SECURITY_PROPERTIES%" == "" (\r
-    set DEFAULT_JAVA_OPTS=-Djava.security.properties="%ODL_JAVA_SECURITY_PROPERTIES%" %DEFAULT_JAVA_OPTS%\r
-) else (\r
-    set DEFAULT_JAVA_OPTS=-Djava.security.properties="%KARAF_ETC%\odl.java.security" %DEFAULT_JAVA_OPTS%\r
-)\r
-\r
-set DEFAULT_JAVA_DEBUG_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005\r
-\r
-rem Support for loading native libraries\r
-set PATH=%PATH%;%KARAF_BASE%\lib;%KARAF_HOME%\lib\r
-\r
-rem Setup the Java Virtual Machine\r
-if not "%JAVA%" == "" goto :Check_JAVA_END\r
-    set JAVA=java\r
-    if "%JAVA_HOME%" == "" call :warn JAVA_HOME not set; results may vary\r
-    if not "%JAVA_HOME%" == "" set JAVA=%JAVA_HOME%\bin\java\r
-    if not exist "%JAVA_HOME%" (\r
-        call :warn JAVA_HOME is not valid: "%JAVA_HOME%"\r
-        goto END\r
-    )\r
-:Check_JAVA_END\r
-\r
-if "%JAVA_OPTS%" == "" set JAVA_OPTS=%DEFAULT_JAVA_OPTS%\r
-\r
-if "%EXTRA_JAVA_OPTS%" == "" goto :KARAF_EXTRA_JAVA_OPTS_END\r
-    set JAVA_OPTS="%JAVA_OPTS% %EXTRA_JAVA_OPTS%"\r
-:KARAF_EXTRA_JAVA_OPTS_END\r
-\r
-if "%KARAF_DEBUG%" == "" goto :KARAF_DEBUG_END\r
-    rem Use the defaults if JAVA_DEBUG_OPTS was not set\r
-    if "%JAVA_DEBUG_OPTS%" == "" set JAVA_DEBUG_OPTS=%DEFAULT_JAVA_DEBUG_OPTS%\r
-\r
-    set JAVA_OPTS="%JAVA_DEBUG_OPTS% %JAVA_OPTS%"\r
-    call :warn Enabling Java debug options: %JAVA_DEBUG_OPTS%\r
-:KARAF_DEBUG_END\r
-\r
-rem Setup the classpath\r
-pushd "%KARAF_HOME%\lib"\r
-for %%G in (karaf*.jar) do call:APPEND_TO_CLASSPATH %%G\r
-popd\r
-goto CLASSPATH_END\r
-\r
-: APPEND_TO_CLASSPATH\r
-set filename=%~1\r
-set suffix=%filename:~-4%\r
-if %suffix% equ .jar set CLASSPATH=%CLASSPATH%;%KARAF_HOME%\lib\%filename%\r
-goto :EOF\r
-\r
-:CLASSPATH_END\r
-\r
-set CLASSPATH=%KARAF_HOME%\system\org\apache\karaf\instance\org.apache.karaf.instance.command\${karaf.version}\org.apache.karaf.instance.command-${karaf.version}.jar;%KARAF_HOME%\system\org\apache\karaf\instance\org.apache.karaf.instance.core\${karaf.version}\org.apache.karaf.instance.core-${karaf.version}.jar;%KARAF_HOME%\system\org\apache\karaf\shell\org.apache.karaf.shell.console\${karaf.version}\org.apache.karaf.shell.console-${karaf.version}.jar;%KARAF_HOME%\system\org\apache\karaf\shell\org.apache.karaf.shell.table\${karaf.version}\org.apache.karaf.shell.table-${karaf.version}.jar;%KARAF_HOME%\system\org\apache\aries\blueprint\org.apache.aries.blueprint.api\${aries.blueprint.api.version}\org.apache.aries.blueprint.api-${aries.blueprint.api.version}.jar;%KARAF_HOME%\system\org\apache\aries\blueprint\org.apache.aries.blueprint.core\${aries.blueprint.core.version}\org.apache.aries.blueprint.core-${aries.blueprint.core.version}.jar;%KARAF_HOME%\system\org\apache\aries\blueprint\org.apache.aries.blueprint.cm\${aries.blueprint.cm.version}\org.apache.aries.blueprint.cm-${aries.blueprint.cm.version}.jar;%KARAF_HOME%\system\org\ops4j\pax\logging\pax-logging-api\${pax.logging.version}\pax-logging-api-${pax.logging.version}.jar;%KARAF_HOME%\system\org\apache\felix\org.apache.felix.framework\${felix.framework.version}\org.apache.felix.framework-${felix.framework.version}.jar;%KARAF_HOME%\system\jline\jline\${jline.version}\jline-${jline.version}.jar;%CLASSPATH%\r
-\r
-:EXECUTE\r
-    if "%SHIFT%" == "true" SET ARGS=%2 %3 %4 %5 %6 %7 %8\r
-    if not "%SHIFT%" == "true" SET ARGS=%1 %2 %3 %4 %5 %6 %7 %8\r
-    rem Execute the Java Virtual Machine\r
-    "%JAVA%" %JAVA_OPTS% %OPTS% -classpath "%CLASSPATH%" -Dkaraf.instances="%KARAF_HOME%\instances" -Dkaraf.home="%KARAF_HOME%" -Dkaraf.base="%KARAF_BASE%" -Dkaraf.etc="%KARAF_ETC%" -Djava.io.tmpdir="%KARAF_DATA%\tmp" -Djava.util.logging.config.file="%KARAF_BASE%\etc\java.util.logging.properties" %KARAF_OPTS% org.apache.karaf.instance.main.Execute %ARGS%\r
-\r
-rem # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #\r
-\r
-:END\r
-\r
-endlocal\r
diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/bin/karaf b/karaf/opendaylight-karaf-resources/src/main/resources/bin/karaf
deleted file mode 100755 (executable)
index d4c54cb..0000000
+++ /dev/null
@@ -1,448 +0,0 @@
-#!/bin/bash
-#
-#    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.
-#
-
-realpath() {
-  OURPWD="$PWD"
-  cd "$(dirname "$1")"
-  LINK=$(readlink "$(basename "$1")")
-  while [ "$LINK" ]; do
-    cd "$(dirname "$LINK")"
-    LINK=$(readlink "$(basename "$1")")
-  done
-  REALPATH="$PWD/$(basename "$1")"
-  cd "$OURPWD"
-  echo "$REALPATH"
-}
-
-REALNAME=$(realpath "$0")
-DIRNAME=$(dirname "$REALNAME")
-PROGNAME=$(basename "$REALNAME")
-
-#
-# Sourcing environment settings for karaf similar to tomcats setenv
-#
-KARAF_SCRIPT="karaf"
-export KARAF_SCRIPT
-if [ -f "$DIRNAME/setenv" ]; then
-  . "$DIRNAME/setenv"
-fi
-
-#
-# Set up some easily accessible MIN/MAX params for JVM mem usage
-#
-if [ "x$JAVA_MIN_MEM" = "x" ]; then
-    JAVA_MIN_MEM=128M
-    export JAVA_MIN_MEM
-fi
-if [ "x$JAVA_MAX_MEM" = "x" ]; then
-    JAVA_MAX_MEM=512M
-    export JAVA_MAX_MEM
-fi
-
-#
-# Check the mode that initiated the script
-#
-if [ "x$1" != "x" ]; then
-    MODE=$1
-fi
-
-warn() {
-    echo "${PROGNAME}: $*"
-}
-
-die() {
-    warn "$*"
-    exit 1
-}
-
-detectOS() {
-    # OS specific support (must be 'true' or 'false').
-    cygwin=false;
-    darwin=false;
-    aix=false;
-    os400=false;
-    case "`uname`" in
-        CYGWIN*)
-            cygwin=true
-            ;;
-        Darwin*)
-            darwin=true
-            ;;
-        AIX*)
-            aix=true
-            ;;
-        OS400*)
-            os400=true
-            ;;
-    esac
-    # For AIX, set an environment variable
-    if $aix; then
-         export LDR_CNTRL=MAXDATA=0xB0000000@DSA
-         echo $LDR_CNTRL
-    fi
-}
-
-unlimitFD() {
-    # Use the maximum available, or set MAX_FD != -1 to use that
-    if [ "x$MAX_FD" = "x" ]; then
-        MAX_FD="maximum"
-    fi
-
-    # Increase the maximum file descriptors if we can
-    if [ "$os400" = "false" ] && [ "$cygwin" = "false" ]; then
-        if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ]; then
-            MAX_FD_LIMIT=`ulimit -H -n`
-            if [ $? -eq 0 ]; then
-                # use the system max
-                MAX_FD="$MAX_FD_LIMIT"
-            else
-                warn "Could not query system maximum file descriptor limit: $MAX_FD_LIMIT"
-            fi
-        fi
-        if [ "$MAX_FD" != 'unlimited' ]; then
-            ulimit -n $MAX_FD > /dev/null
-            if [ $? -ne 0 ]; then
-                warn "Could not set maximum file descriptor limit: $MAX_FD"
-            fi
-        fi
-     fi
-}
-
-locateHome() {
-    if [ "x$KARAF_HOME" = "x" ]; then
-      # In POSIX shells, CDPATH may cause cd to write to stdout
-      (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
-      KARAF_HOME=`cd "$DIRNAME/.."; pwd`
-    fi
-
-    if [ ! -d "$KARAF_HOME" ]; then
-        die "KARAF_HOME is not valid: $KARAF_HOME"
-    fi
-}
-
-locateBase() {
-    if [ "x$KARAF_BASE" != "x" ]; then
-        if [ ! -d "$KARAF_BASE" ]; then
-            die "KARAF_BASE is not valid: $KARAF_BASE"
-        fi
-    else
-        KARAF_BASE=$KARAF_HOME
-    fi
-}
-
-locateData() {
-    if [ "x$KARAF_DATA" != "x" ]; then
-        if [ ! -d "$KARAF_DATA" ]; then
-            die "KARAF_DATA is not valid: $KARAF_DATA"
-        fi
-    else
-        KARAF_DATA=$KARAF_BASE/data
-    fi
-}
-
-locateEtc() {
-    if [ "x$KARAF_ETC" != "x" ]; then
-        if [ ! -d "$KARAF_ETC" ]; then
-            die "KARAF_ETC is not valid: $KARAF_ETC"
-        fi
-    else
-        KARAF_ETC=$KARAF_BASE/etc
-    fi
-}
-
-setupNativePath() {
-    # Support for loading native libraries
-    LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:$KARAF_BASE/lib:$KARAF_HOME/lib"
-
-    # For Cygwin, set PATH from LD_LIBRARY_PATH
-    if $cygwin; then
-        LD_LIBRARY_PATH=`cygpath --path --windows "$LD_LIBRARY_PATH"`
-        PATH="$PATH;$LD_LIBRARY_PATH"
-        export PATH
-    fi
-    export LD_LIBRARY_PATH
-}
-
-pathCanonical() {
-    dst="${1}"
-    while [ -h "${dst}" ] ; do
-        ls=`ls -ld "${dst}"`
-        link=`expr "$ls" : '.*-> \(.*\)$'`
-        if expr "$link" : '/.*' > /dev/null; then
-            dst="$link"
-        else
-            dst="`dirname "${dst}"`/$link"
-        fi
-    done
-    bas=`basename "${dst}"`
-    dir=`dirname "${dst}"`
-    if [ "$bas" != "$dir" ]; then
-      dst="`pathCanonical "$dir"`/$bas"
-    fi
-    echo "${dst}" | sed -e 's#//#/#g' -e 's#/./#/#g' -e 's#/[^/]*/../#/#g'
-}
-
-locateJava() {
-    # Setup the Java Virtual Machine
-    if $cygwin ; then
-        [ -n "$JAVA" ] && JAVA=`cygpath --unix "$JAVA"`
-        [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
-    fi
-
-       if [ "x$JAVA_HOME" = "x" ] && [ "$darwin" = "true" ]; then
-               JAVA_HOME="$(/usr/libexec/java_home -v 1.8)"
-       fi
-    if [ "x$JAVA" = "x" ] && [ -r /etc/gentoo-release ] ; then
-        JAVA_HOME=`java-config --jre-home`
-    fi
-    if [ "x$JAVA" = "x" ]; then
-        if [ "x$JAVA_HOME" != "x" ]; then
-            if [ ! -d "$JAVA_HOME" ]; then
-                die "JAVA_HOME is not valid: $JAVA_HOME"
-            fi
-            JAVA="$JAVA_HOME/bin/java"
-        else
-            warn "JAVA_HOME not set; results may vary"
-            JAVA=`type java`
-            JAVA=`expr "$JAVA" : '.* \(/.*\)$'`
-            if [ "x$JAVA" = "x" ]; then
-                die "java command not found"
-            fi
-        fi
-    fi
-    if [ "x$JAVA_HOME" = "x" ]; then
-        JAVA_HOME="$(dirname $(dirname $(pathCanonical "$JAVA")))"
-    fi
-}
-
-detectJVM() {
-   #echo "`$JAVA -version`"
-   # This service should call `java -version`,
-   # read stdout, and look for hints
-   if $JAVA -version 2>&1 | grep "^IBM" ; then
-       JVM_VENDOR="IBM"
-   # on OS/400, java -version does not contain IBM explicitly
-   elif $os400; then
-       JVM_VENDOR="IBM"
-   else
-       JVM_VENDOR="SUN"
-   fi
-   # echo "JVM vendor is $JVM_VENDOR"
-}
-
-checkJvmVersion() {
-   # echo "`$JAVA -version`"
-   VERSION=`"$JAVA" -version 2>&1 | egrep '"([0-9]+\.[0-9]+\..*[0-9]).*"' | awk '{print substr($3,2,length($3)-2)}' | awk '{print substr($1, 3, 3)}' | sed -e 's;\.;;g'`
-   # echo $VERSION
-   if [ "$VERSION" -lt "80" ]; then
-       die "JVM must be 1.8.0 or greater"
-   fi
-}
-
-setupDebugOptions() {
-    if [ "x$JAVA_OPTS" = "x" ]; then
-        JAVA_OPTS="$DEFAULT_JAVA_OPTS"
-    fi
-    export JAVA_OPTS
-
-    if [ "x$EXTRA_JAVA_OPTS" != "x" ]; then
-        JAVA_OPTS="$JAVA_OPTS $EXTRA_JAVA_OPTS"
-    fi
-
-    # Set Debug options if enabled
-    if [ "x$KARAF_DEBUG" != "x" ]; then
-        # Ignore DEBUG in case of stop, client, or status mode
-        if [ "x$MODE" = "xstop" ]; then
-            return
-        fi
-        if [ "x$MODE" = "xclient" ]; then
-            return
-        fi
-        if [ "x$MODE" = "xstatus" ]; then
-            return
-        fi
-        # Use the defaults if JAVA_DEBUG_OPTS was not set
-        if [ "x$JAVA_DEBUG_OPTS" = "x" ]; then
-            JAVA_DEBUG_OPTS="$DEFAULT_JAVA_DEBUG_OPTS"
-        fi
-
-        JAVA_OPTS="$JAVA_DEBUG_OPTS $JAVA_OPTS"
-        warn "Enabling Java debug options: $JAVA_DEBUG_OPTS"
-    fi
-}
-
-setupDefaults() {
-    DEFAULT_JAVA_OPTS="-Xms$JAVA_MIN_MEM -Xmx$JAVA_MAX_MEM -XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -XX:+HeapDumpOnOutOfMemoryError"
-
-    #Set the JVM_VENDOR specific JVM flags
-    if [ "$JVM_VENDOR" = "SUN" ]; then
-        DEFAULT_JAVA_OPTS="-server $DEFAULT_JAVA_OPTS -Dcom.sun.management.jmxremote"
-    elif [ "$JVM_VENDOR" = "IBM" ]; then
-        if $os400; then
-            DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS"
-        elif $aix; then
-            DEFAULT_JAVA_OPTS="-Xverify:none -Xdump:heap -Xlp $DEFAULT_JAVA_OPTS"
-        else
-            DEFAULT_JAVA_OPTS="-Xverify:none $DEFAULT_JAVA_OPTS"
-        fi
-    fi
-
-    # Add default security file option
-    if [ "x$ODL_JAVA_SECURITY_PROPERTIES" != "x" ]; then
-        DEFAULT_JAVA_OPTS="-Djava.security.properties="${ODL_JAVA_SECURITY_PROPERTIES}" $DEFAULT_JAVA_OPTS"
-    else
-        DEFAULT_JAVA_OPTS="-Djava.security.properties="${KARAF_ETC}/odl.java.security" $DEFAULT_JAVA_OPTS"
-    fi
-
-    # Add the jars in the lib dir
-    for file in "$KARAF_HOME"/lib/karaf*.jar
-    do
-        if [ -z "$CLASSPATH" ]; then
-            CLASSPATH="$file"
-        else
-            CLASSPATH="$CLASSPATH:$file"
-        fi
-    done
-
-    DEFAULT_JAVA_DEBUG_PORT="5005"
-    if [ "x$JAVA_DEBUG_PORT" = "x" ]; then
-        JAVA_DEBUG_PORT="$DEFAULT_JAVA_DEBUG_PORT"
-    fi
-    DEFAULT_JAVA_DEBUG_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=$JAVA_DEBUG_PORT"
-
-    ##
-    ## TODO: Move to conf/profiler/yourkit.{sh|cmd}
-    ##
-    # Uncomment to enable YourKit profiling
-    #DEFAULT_JAVA_DEBUG_OPTS="-Xrunyjpagent"
-}
-
-init() {
-    # Determine if there is special OS handling we must perform
-    detectOS
-
-    # Unlimit the number of file descriptors if possible
-    unlimitFD
-
-    # Locate the Karaf home directory
-    locateHome
-
-    # Locate the Karaf base directory
-    locateBase
-
-    # Locate the Karaf data directory
-    locateData
-
-    # Locate the Karaf etc directory
-    locateEtc
-
-    # Setup the native library path
-    setupNativePath
-
-    # Locate the Java VM to execute
-    locateJava
-
-    # Determine the JVM vendor
-    detectJVM
-
-    # Determine the JVM version >= 1.8
-    checkJvmVersion
-
-    # Setup default options
-    setupDefaults
-
-    # Install debug options
-    setupDebugOptions
-
-}
-
-run() {
-    OPTS="-Dkaraf.startLocalConsole=true -Dkaraf.startRemoteShell=true"
-    MAIN=org.apache.karaf.main.Main
-    while [ "$1" != "" ]; do
-        case $1 in
-            'clean')
-                rm -Rf "$KARAF_DATA"
-                shift
-                ;;
-            'debug')
-                if [ "x$JAVA_DEBUG_OPTS" = "x" ]; then
-                    JAVA_DEBUG_OPTS="$DEFAULT_JAVA_DEBUG_OPTS"
-                fi
-                JAVA_OPTS="$JAVA_DEBUG_OPTS $JAVA_OPTS"
-                shift
-                ;;
-            'status')
-                MAIN=org.apache.karaf.main.Status
-                shift
-                ;;
-            'stop')
-                MAIN=org.apache.karaf.main.Stop
-                shift
-                ;;
-            'console')
-                shift
-                ;;
-            'server')
-                OPTS="-Dkaraf.startLocalConsole=false -Dkaraf.startRemoteShell=true"
-                shift
-                ;;
-            'client')
-                OPTS="-Dkaraf.startLocalConsole=true -Dkaraf.startRemoteShell=false"
-                shift
-                ;;
-            *)
-                break
-                ;;
-        esac
-    done
-
-    JAVA_ENDORSED_DIRS="$JAVA_HOME/jre/lib/endorsed:$JAVA_HOME/lib/endorsed:${KARAF_HOME}/lib/endorsed"
-    JAVA_EXT_DIRS="$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/ext:${KARAF_HOME}/lib/ext"
-    if $cygwin; then
-        KARAF_HOME=`cygpath --path --windows "$KARAF_HOME"`
-        KARAF_BASE=`cygpath --path --windows "$KARAF_BASE"`
-        KARAF_DATA=`cygpath --path --windows "$KARAF_DATA"`
-        KARAF_ETC=`cygpath --path --windows "$KARAF_ETC"`
-        if [ ! -z "$CLASSPATH" ]; then
-            CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
-        fi
-        JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
-        JAVA_ENDORSED_DIRS=`cygpath --path --windows "$JAVA_ENDORSED_DIRS"`
-        JAVA_EXT_DIRS=`cygpath --path --windows "$JAVA_EXT_DIRS"`
-    fi
-    cd "$KARAF_BASE"
-
-    # Use /dev/urandom to avoid blocking on /dev/random
-    # See http://www.2uo.de/myths-about-urandom/ to understand why this is safe (as long as your VM provisioning seeds
-    # the PRNG)
-    # The /dev/./urandom workaround is necessary because of https://bugs.openjdk.java.net/browse/JDK-6202721
-    NON_BLOCKING_PRNG=
-    [ -c /dev/urandom -a -r /dev/urandom ] && NON_BLOCKING_PRNG=-Djava.security.egd=file:/dev/./urandom
-
-    # Using command line arguments as java arguments (as opposed to arguments for $MAIN).
-    # FIXME: Document this in User Guide.
-    exec "$JAVA" $JAVA_OPTS "${NON_BLOCKING_PRNG}" -Djava.endorsed.dirs="${JAVA_ENDORSED_DIRS}" -Djava.ext.dirs="${JAVA_EXT_DIRS}" -Dkaraf.instances="${KARAF_HOME}/instances" -Dkaraf.home="$KARAF_HOME" -Dkaraf.base="$KARAF_BASE" -Dkaraf.data="$KARAF_DATA" -Dkaraf.etc="$KARAF_ETC" -Djava.io.tmpdir="$KARAF_DATA/tmp" -Djava.util.logging.config.file="$KARAF_BASE/etc/java.util.logging.properties" $KARAF_OPTS $OPTS "$@" -classpath "$CLASSPATH" $MAIN
-}
-
-main() {
-    init
-    run "$@"
-}
-
-main "$@"
diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/bin/karaf.bat b/karaf/opendaylight-karaf-resources/src/main/resources/bin/karaf.bat
deleted file mode 100644 (file)
index 2c004a2..0000000
+++ /dev/null
@@ -1,346 +0,0 @@
-@echo off\r
-rem\r
-rem\r
-rem    Licensed to the Apache Software Foundation (ASF) under one or more\r
-rem    contributor license agreements.  See the NOTICE file distributed with\r
-rem    this work for additional information regarding copyright ownership.\r
-rem    The ASF licenses this file to You under the Apache License, Version 2.0\r
-rem    (the "License"); you may not use this file except in compliance with\r
-rem    the License.  You may obtain a copy of the License at\r
-rem\r
-rem       http://www.apache.org/licenses/LICENSE-2.0\r
-rem\r
-rem    Unless required by applicable law or agreed to in writing, software\r
-rem    distributed under the License is distributed on an "AS IS" BASIS,\r
-rem    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
-rem    See the License for the specific language governing permissions and\r
-rem    limitations under the License.\r
-rem\r
-\r
-if not "%ECHO%" == "" echo %ECHO%\r
-\r
-setlocal\r
-set DIRNAME=%~dp0%\r
-set PROGNAME=%~nx0%\r
-set ARGS=%*\r
-\r
-rem Sourcing environment settings for karaf similar to tomcats setenv\r
-SET KARAF_SCRIPT="karaf.bat"\r
-if exist "%DIRNAME%setenv.bat" (\r
-  call "%DIRNAME%setenv.bat"\r
-)\r
-\r
-rem Check console window title. Set to Karaf by default\r
-if not "%KARAF_TITLE%" == "" (\r
-    title %KARAF_TITLE%\r
-) else (\r
-    title Karaf\r
-)\r
-\r
-rem Check/Set up some easily accessible MIN/MAX params for JVM mem usage\r
-if "%JAVA_MIN_MEM%" == "" (\r
-    set JAVA_MIN_MEM=128M\r
-)\r
-if "%JAVA_MAX_MEM%" == "" (\r
-    set JAVA_MAX_MEM=512M\r
-)\r
-\r
-rem Check if Windows version == 10.0 to override\r
-rem Equinox property fixing karaf startup\r
-rem TODO: Remove this hack when we update Karaf to a compatible version\r
-for /f "tokens=4-5 delims=. " %%i in ('ver') do set WIN_VERSION=%%i.%%j\r
-if "%WIN_VERSION%" == "10.0" set KARAF_WIN10_FIX=-Dorg.osgi.framework.os.name=Win32\r
-\r
-goto BEGIN\r
-\r
-:warn\r
-    echo %PROGNAME%: %*\r
-goto :EOF\r
-\r
-:BEGIN\r
-\r
-rem # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #\r
-\r
-if not "%KARAF_HOME%" == "" (\r
-    call :warn Ignoring predefined value for KARAF_HOME\r
-)\r
-set KARAF_HOME=%DIRNAME%..\r
-if not exist "%KARAF_HOME%" (\r
-    call :warn KARAF_HOME is not valid: "%KARAF_HOME%"\r
-    goto END\r
-)\r
-\r
-if not "%KARAF_BASE%" == "" (\r
-    if not exist "%KARAF_BASE%" (\r
-       call :warn KARAF_BASE is not valid: "%KARAF_BASE%"\r
-       goto END\r
-    )\r
-)\r
-if "%KARAF_BASE%" == "" (\r
-  set "KARAF_BASE=%KARAF_HOME%"\r
-)\r
-\r
-if not "%KARAF_DATA%" == "" (\r
-    if not exist "%KARAF_DATA%" (\r
-        call :warn KARAF_DATA is not valid: "%KARAF_DATA%"\r
-        goto END\r
-    )\r
-)\r
-if "%KARAF_DATA%" == "" (\r
-    set "KARAF_DATA=%KARAF_BASE%\data"\r
-)\r
-\r
-if not "%KARAF_ETC%" == "" (\r
-    if not exist "%KARAF_ETC%" (\r
-        call :warn KARAF_ETC is not valid: "%KARAF_ETC%"\r
-        goto END\r
-    )\r
-)\r
-if "%KARAF_ETC%" == "" (\r
-    set "KARAF_ETC=%KARAF_BASE%\etc"\r
-)\r
-\r
-set LOCAL_CLASSPATH=%CLASSPATH%\r
-set JAVA_MODE=-server\r
-\r
-set CLASSPATH=%LOCAL_CLASSPATH%;%KARAF_BASE%\conf\r
-set DEFAULT_JAVA_DEBUG_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005\r
-\r
-if "%LOCAL_CLASSPATH%" == "" goto :KARAF_CLASSPATH_EMPTY\r
-    set CLASSPATH=%LOCAL_CLASSPATH%;%KARAF_BASE%\conf\r
-    goto :KARAF_CLASSPATH_END\r
-:KARAF_CLASSPATH_EMPTY\r
-    set CLASSPATH=%KARAF_BASE%\conf\r
-:KARAF_CLASSPATH_END\r
-\r
-rem Setup Karaf Home\r
-if exist "%KARAF_HOME%\conf\karaf-rc.cmd" call %KARAF_HOME%\conf\karaf-rc.cmd\r
-if exist "%HOME%\karaf-rc.cmd" call %HOME%\karaf-rc.cmd\r
-\r
-rem Support for loading native libraries\r
-set PATH=%PATH%;%KARAF_BASE%\lib;%KARAF_HOME%\lib\r
-\r
-rem Setup the Java Virtual Machine\r
-if not "%JAVA%" == "" goto :Check_JAVA_END\r
-    if not "%JAVA_HOME%" == "" goto :TryJDKEnd\r
-        call :warn JAVA_HOME not set; results may vary\r
-:TryJRE\r
-    start /w regedit /e __reg1.txt "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment"\r
-    if not exist __reg1.txt goto :TryJDK\r
-    type __reg1.txt | find "CurrentVersion" > __reg2.txt\r
-    if errorlevel 1 goto :TryJDK\r
-    for /f "tokens=2 delims==" %%x in (__reg2.txt) do set JavaTemp=%%~x\r
-    if errorlevel 1 goto :TryJDK\r
-    set JavaTemp=%JavaTemp%##\r
-    set JavaTemp=%JavaTemp:                ##=##%\r
-    set JavaTemp=%JavaTemp:        ##=##%\r
-    set JavaTemp=%JavaTemp:    ##=##%\r
-    set JavaTemp=%JavaTemp:  ##=##%\r
-    set JavaTemp=%JavaTemp: ##=##%\r
-    set JavaTemp=%JavaTemp:##=%\r
-    del __reg1.txt\r
-    del __reg2.txt\r
-    start /w regedit /e __reg1.txt "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\%JavaTemp%"\r
-    if not exist __reg1.txt goto :TryJDK\r
-    type __reg1.txt | find "JavaHome" > __reg2.txt\r
-    if errorlevel 1 goto :TryJDK\r
-    for /f "tokens=2 delims==" %%x in (__reg2.txt) do set JAVA_HOME=%%~x\r
-    if errorlevel 1 goto :TryJDK\r
-    del __reg1.txt\r
-    del __reg2.txt\r
-    goto TryJDKEnd\r
-:TryJDK\r
-    start /w regedit /e __reg1.txt "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit"\r
-    if not exist __reg1.txt (\r
-        goto TryRegJRE\r
-    )\r
-    type __reg1.txt | find "CurrentVersion" > __reg2.txt\r
-    if errorlevel 1 (\r
-        goto TryRegJRE\r
-    )\r
-    for /f "tokens=2 delims==" %%x in (__reg2.txt) do set JavaTemp=%%~x\r
-    if errorlevel 1 (\r
-        goto TryRegJRE\r
-    )\r
-    set JavaTemp=%JavaTemp%##\r
-    set JavaTemp=%JavaTemp:                ##=##%\r
-    set JavaTemp=%JavaTemp:        ##=##%\r
-    set JavaTemp=%JavaTemp:    ##=##%\r
-    set JavaTemp=%JavaTemp:  ##=##%\r
-    set JavaTemp=%JavaTemp: ##=##%\r
-    set JavaTemp=%JavaTemp:##=%\r
-    del __reg1.txt\r
-    del __reg2.txt\r
-    start /w regedit /e __reg1.txt "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\%JavaTemp%"\r
-    if not exist __reg1.txt (\r
-        goto TryRegJRE\r
-    )\r
-    type __reg1.txt | find "JavaHome" > __reg2.txt\r
-    if errorlevel 1 (\r
-        goto TryRegJRE\r
-    )\r
-    for /f "tokens=2 delims==" %%x in (__reg2.txt) do set JAVA_HOME=%%~x\r
-    if errorlevel 1 (\r
-        goto TryRegJRE\r
-    )\r
-    del __reg1.txt\r
-    del __reg2.txt\r
-:TryRegJRE\r
-    rem try getting the JAVA_HOME from registry\r
-    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\JavaSoft\Java Runtime Environment" /v CurrentVersion`) DO (\r
-       set JAVA_VERSION=%%A\r
-    )\r
-    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\JavaSoft\Java Runtime Environment\%JAVA_VERSION%" /v JavaHome`) DO (\r
-       set JAVA_HOME=%%A %%B\r
-    )\r
-    if not exist "%JAVA_HOME%" (\r
-       goto TryRegJDK\r
-       )\r
-       goto TryJDKEnd\r
-:TryRegJDK\r
-    rem try getting the JAVA_HOME from registry\r
-    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\JavaSoft\Java Development Kit" /v CurrentVersion`) DO (\r
-       set JAVA_VERSION=%%A\r
-    )\r
-    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\JavaSoft\Java Development Kit\%JAVA_VERSION%" /v JavaHome`) DO (\r
-       set JAVA_HOME=%%A %%B\r
-    )\r
-    if not exist "%JAVA_HOME%" (\r
-       call :warn Unable to retrieve JAVA_HOME from Registry\r
-    )\r
-       goto TryJDKEnd\r
-:TryJDKEnd\r
-    if not exist "%JAVA_HOME%" (\r
-        call :warn JAVA_HOME is not valid: "%JAVA_HOME%"\r
-        goto END\r
-    )\r
-    set JAVA=%JAVA_HOME%\bin\java\r
-:Check_JAVA_END\r
-\r
-if not exist "%JAVA_HOME%\bin\server\jvm.dll" (\r
-    if not exist "%JAVA_HOME%\jre\bin\server\jvm.dll" (\r
-        echo WARNING: Running Karaf on a Java HotSpot Client VM because server-mode is not available.\r
-        echo Install Java Developer Kit to fix this.\r
-        echo For more details see http://java.sun.com/products/hotspot/whitepaper.html#client\r
-        set JAVA_MODE=-client\r
-    )\r
-)\r
-\r
-set DEFAULT_JAVA_OPTS=%JAVA_MODE% -Xms%JAVA_MIN_MEM% -Xmx%JAVA_MAX_MEM% -Dcom.sun.management.jmxremote  -XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass\r
-\r
-if not "%ODL_JAVA_SECURITY_PROPERTIES%" == "" (\r
-    set DEFAULT_JAVA_OPTS=-Djava.security.properties="%ODL_JAVA_SECURITY_PROPERTIES%" %DEFAULT_JAVA_OPTS%\r
-) else (\r
-    set DEFAULT_JAVA_OPTS=-Djava.security.properties="%KARAF_ETC%\odl.java.security" %DEFAULT_JAVA_OPTS%\r
-)\r
-\r
-if "%JAVA_OPTS%" == "" set JAVA_OPTS=%DEFAULT_JAVA_OPTS%\r
-\r
-if "%EXTRA_JAVA_OPTS%" == "" goto :KARAF_EXTRA_JAVA_OPTS_END\r
-    set JAVA_OPTS=%JAVA_OPTS% %EXTRA_JAVA_OPTS%\r
-:KARAF_EXTRA_JAVA_OPTS_END\r
-\r
-if "%KARAF_DEBUG%" == "" goto :KARAF_DEBUG_END\r
-    if "%1" == "stop" goto :KARAF_DEBUG_END\r
-    if "%1" == "client" goto :KARAF_DEBUG_END\r
-    if "%1" == "status" goto :KARAF_DEBUG_END\r
-    rem Use the defaults if JAVA_DEBUG_OPTS was not set\r
-    if "%JAVA_DEBUG_OPTS%" == "" set JAVA_DEBUG_OPTS=%DEFAULT_JAVA_DEBUG_OPTS%\r
-\r
-    set JAVA_OPTS=%JAVA_DEBUG_OPTS% %JAVA_OPTS%\r
-    call :warn Enabling Java debug options: %JAVA_DEBUG_OPTS%\r
-:KARAF_DEBUG_END\r
-\r
-if "%KARAF_PROFILER%" == "" goto :KARAF_PROFILER_END\r
-    set KARAF_PROFILER_SCRIPT=%KARAF_HOME%\conf\profiler\%KARAF_PROFILER%.cmd\r
-\r
-    if exist "%KARAF_PROFILER_SCRIPT%" goto :KARAF_PROFILER_END\r
-    call :warn Missing configuration for profiler '%KARAF_PROFILER%': %KARAF_PROFILER_SCRIPT%\r
-    goto END\r
-:KARAF_PROFILER_END\r
-\r
-rem Setup the classpath\r
-pushd "%KARAF_HOME%\lib"\r
-for %%G in (karaf*.jar) do call:APPEND_TO_CLASSPATH %%G\r
-popd\r
-goto CLASSPATH_END\r
-\r
-: APPEND_TO_CLASSPATH\r
-set filename=%~1\r
-set suffix=%filename:~-4%\r
-if %suffix% equ .jar set CLASSPATH=%CLASSPATH%;%KARAF_HOME%\lib\%filename%\r
-goto :EOF\r
-\r
-:CLASSPATH_END\r
-\r
-rem Execute the JVM or the load the profiler\r
-if "%KARAF_PROFILER%" == "" goto :RUN\r
-    rem Execute the profiler if it has been configured\r
-    call :warn Loading profiler script: %KARAF_PROFILER_SCRIPT%\r
-    call %KARAF_PROFILER_SCRIPT%\r
-\r
-:RUN\r
-    SET OPTS=-Dkaraf.startLocalConsole=true -Dkaraf.startRemoteShell=true\r
-    SET MAIN=org.apache.karaf.main.Main\r
-    SET SHIFT=false\r
-\r
-:RUN_LOOP\r
-    if "%1" == "stop" goto :EXECUTE_STOP\r
-    if "%1" == "status" goto :EXECUTE_STATUS\r
-    if "%1" == "console" goto :EXECUTE_CONSOLE\r
-    if "%1" == "server" goto :EXECUTE_SERVER\r
-    if "%1" == "client" goto :EXECUTE_CLIENT\r
-    if "%1" == "clean" goto :EXECUTE_CLEAN\r
-    if "%1" == "debug" goto :EXECUTE_DEBUG\r
-    goto :EXECUTE\r
-\r
-:EXECUTE_STOP\r
-    SET MAIN=org.apache.karaf.main.Stop\r
-    shift\r
-    goto :RUN_LOOP\r
-\r
-:EXECUTE_STATUS\r
-    SET MAIN=org.apache.karaf.main.Status\r
-    shift\r
-    goto :RUN_LOOP\r
-\r
-:EXECUTE_CONSOLE\r
-    shift\r
-    goto :RUN_LOOP\r
-\r
-:EXECUTE_SERVER\r
-    SET OPTS=-Dkaraf.startLocalConsole=false -Dkaraf.startRemoteShell=true\r
-    shift\r
-    goto :RUN_LOOP\r
-\r
-:EXECUTE_CLIENT\r
-    SET OPTS=-Dkaraf.startLocalConsole=true -Dkaraf.startRemoteShell=false\r
-    shift\r
-    goto :RUN_LOOP\r
-\r
-:EXECUTE_CLEAN\r
-    rmdir /S /Q "%KARAF_DATA%"\r
-    shift\r
-    goto :RUN_LOOP\r
-\r
-:EXECUTE_DEBUG\r
-    if "%JAVA_DEBUG_OPTS%" == "" set JAVA_DEBUG_OPTS=%DEFAULT_JAVA_DEBUG_OPTS%\r
-    set JAVA_OPTS=%JAVA_DEBUG_OPTS% %JAVA_OPTS%\r
-    shift\r
-    goto :RUN_LOOP\r
-\r
-:EXECUTE\r
-    SET ARGS=%1 %2 %3 %4 %5 %6 %7 %8\r
-    rem Execute the Java Virtual Machine\r
-    cd "%KARAF_BASE%"\r
-    "%JAVA%" %JAVA_OPTS% %OPTS% -classpath "%CLASSPATH%" -Djava.endorsed.dirs="%JAVA_HOME%\jre\lib\endorsed;%JAVA_HOME%\lib\endorsed;%KARAF_HOME%\lib\endorsed" -Djava.ext.dirs="%JAVA_HOME%\jre\lib\ext;%JAVA_HOME%\lib\ext;%KARAF_HOME%\lib\ext" -Dkaraf.instances="%KARAF_HOME%\instances" -Dkaraf.home="%KARAF_HOME%" -Dkaraf.base="%KARAF_BASE%" -Dkaraf.etc="%KARAF_ETC%" -Djava.io.tmpdir="%KARAF_DATA%\tmp" -Dkaraf.data="%KARAF_DATA%" -Djava.util.logging.config.file="%KARAF_BASE%\etc\java.util.logging.properties" %KARAF_WIN10_FIX% %KARAF_OPTS% %MAIN% %ARGS%\r
-\r
-rem # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #\r
-\r
-:END\r
-\r
-endlocal\r
-\r
-if not "%PAUSE%" == "" pause\r
-\r
-:END_NO_PAUSE\r
diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/bin/setenv b/karaf/opendaylight-karaf-resources/src/main/resources/bin/setenv
deleted file mode 100644 (file)
index d81e6fd..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/bin/sh
-#
-#    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.
-#
-
-#
-# handle specific scripts; the SCRIPT_NAME is exactly the name of the Karaf
-# script: client, instance, shell, start, status, stop, karaf
-#
-# if [ "$KARAF_SCRIPT" == "SCRIPT_NAME" ]; then
-#   Actions go here...
-# fi
-
-#
-# general settings which should be applied for all scripts go here; please keep
-# in mind that it is possible that scripts might be executed more than once, e.g.
-# in example of the start script where the start script is executed first and the
-# karaf script afterwards.
-#
-
-#
-# The following section shows the possible configuration options for the default
-# karaf scripts
-#
-# export JAVA_HOME # Location of Java installation
-# export JAVA_MIN_MEM # Minimum memory for the JVM
-# export JAVA_MAX_MEM # Maximum memory for the JVM
-# export JAVA_PERM_MEM # Minimum perm memory for the JVM
-# export JAVA_MAX_PERM_MEM # Maximum perm memory for the JVM
-# export EXTRA_JAVA_OPTS # Additional JVM options
-# export KARAF_HOME # Karaf home folder
-# export KARAF_DATA # Karaf data folder
-# export KARAF_BASE # Karaf base folder
-# export KARAF_ETC  # Karaf etc  folder
-# export KARAF_OPTS # Additional available Karaf options
-# export KARAF_DEBUG # Enable debug mode
-# export KARAF_REDIRECT # Enable/set the std/err redirection when using bin/start
-if [ "x$JAVA_MAX_PERM_MEM" = "x" ]; then
-    export JAVA_MAX_PERM_MEM="512m"
-fi
-if [ "x$JAVA_MAX_MEM" = "x" ]; then
-    export JAVA_MAX_MEM="2048m"
-fi
diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/bin/setenv.bat b/karaf/opendaylight-karaf-resources/src/main/resources/bin/setenv.bat
deleted file mode 100644 (file)
index 66a25a3..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-@echo off
-rem
-rem
-rem    Licensed to the Apache Software Foundation (ASF) under one or more
-rem    contributor license agreements.  See the NOTICE file distributed with
-rem    this work for additional information regarding copyright ownership.
-rem    The ASF licenses this file to You under the Apache License, Version 2.0
-rem    (the "License"); you may not use this file except in compliance with
-rem    the License.  You may obtain a copy of the License at
-rem
-rem       http://www.apache.org/licenses/LICENSE-2.0
-rem
-rem    Unless required by applicable law or agreed to in writing, software
-rem    distributed under the License is distributed on an "AS IS" BASIS,
-rem    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-rem    See the License for the specific language governing permissions and
-rem    limitations under the License.
-rem
-
-rem
-rem handle specific scripts; the SCRIPT_NAME is exactly the name of the Karaf
-rem script; for example karaf.bat, start.bat, stop.bat, admin.bat, client.bat, ...
-rem
-rem if "%KARAF_SCRIPT%" == "SCRIPT_NAME" (
-rem   Actions go here...
-rem )
-
-rem
-rem general settings which should be applied for all scripts go here; please keep
-rem in mind that it is possible that scripts might be executed more than once, e.g.
-rem in example of the start script where the start script is executed first and the
-rem karaf script afterwards.
-rem
-
-rem
-rem The following section shows the possible configuration options for the default
-rem karaf scripts
-rem
-rem Window name of the windows console
-rem SET KARAF_TITLE
-rem Location of Java installation
-rem SET JAVA_HOME
-rem Minimum memory for the JVM
-rem SET JAVA_MIN_MEM
-rem Maximum memory for the JVM
-rem SET JAVA_MAX_MEM
-rem Minimum perm memory for the JVM
-rem SET JAVA_PERM_MEM
-rem Maximum perm memory for the JVM
-rem SET JAVA_MAX_PERM_MEM
-rem Additional JVM options
-rem SET EXTRA_JAVA_OPTS
-rem Karaf home folder
-rem SET KARAF_HOME
-rem Karaf data folder
-rem SET KARAF_DATA
-rem Karaf base folder
-rem SET KARAF_BASE
-rem Karaf etc folder
-rem SET KARAF_ETC
-rem Additional available Karaf options
-rem SET KARAF_OPTS
-rem Enable debug mode
-rem SET KARAF_DEBUG
-IF "%JAVA_MAX_PERM_MEM%"=="" SET JAVA_MAX_PERM_MEM=512m
-IF "%JAVA_MAX_MEM%"=="" SET JAVA_MAX_MEM=2048m
diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/configuration/context.xml b/karaf/opendaylight-karaf-resources/src/main/resources/configuration/context.xml
deleted file mode 100644 (file)
index 90b9ddf..0000000
+++ /dev/null
@@ -1 +0,0 @@
-<Context crossContext="true" sessionCookiePath="/" useHttpOnly="false"/>
diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/configuration/logback.xml b/karaf/opendaylight-karaf-resources/src/main/resources/configuration/logback.xml
deleted file mode 100644 (file)
index ed659bf..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
- <configuration scan="true">
-
-  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
-    <encoder>
-      <pattern>%date{"yyyy-MM-dd HH:mm:ss.SSS z"} [%thread] %-5level %logger{36} %X{akkaSource} - %msg%n</pattern>
-    </encoder>
-  </appender>
-  <appender name="opendaylight.log" class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>logs/opendaylight.log</file>
-
-    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-      <fileNamePattern>logs/opendaylight.%d.log.zip</fileNamePattern>
-      <maxHistory>1</maxHistory>
-    </rollingPolicy>
-
-    <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
-      <maxFileSize>10MB</maxFileSize>
-    </triggeringPolicy>
-
-    <encoder>
-      <pattern>%date{"yyyy-MM-dd HH:mm:ss.SSS z"} [%thread] %-5level %logger{35} - %msg%n</pattern>
-    </encoder>
-  </appender>
-  <appender name="audit-file" class="ch.qos.logback.core.FileAppender">
-        <file>logs/audit.log</file>
-        <append>true</append>
-        <encoder>
-            <pattern>%date{"yyyy-MM-dd HH:mm:ss.SSS z"} %msg %n</pattern>
-        </encoder>
-  </appender>
-  <root level="error">
-    <appender-ref ref="STDOUT" />
-    <appender-ref ref="opendaylight.log" />
-  </root>
-
-  <!--  Base log level  -->
-  <logger name="org.opendaylight" level="INFO"/>
-
-
-  <!-- Controller log level -->
-  <logger name="org.opendaylight.controller" level="INFO"/>
-
-  <!-- OSGi logging bridge -->
-  <logger name="org.opendaylight.controller.logging.bridge" level="WARN"/>
-  <logger name="org.opendaylight.controller.logging.bridge.internal" level="WARN"/>
-
-  <!-- Netty -->
-  <logger name="io.netty" level="WARN"/>
-
-  <!-- Openflow Protocol Plugin -->
-  <logger name="org.opendaylight.controller.protocol_plugin.openflow" level="INFO"/>
-  <logger name="org.opendaylight.controller.protocol_plugin.openflow.internal.DiscoveryService" level="INFO"/>
-  <logger name="org.opendaylight.controller.protocol_plugin.openflow.internal.InventoryService" level="INFO"/>
-  <logger name="org.opendaylight.controller.protocol_plugin.openflow.internal.InventoryServiceShim" level="INFO"/>
-  <logger name="org.opendaylight.controller.protocol_plugin.openflow.internal.TopologyServices" level="INFO"/>
-  <logger name="org.opendaylight.controller.protocol_plugin.openflow.internal.TopologyServiceShim" level="INFO"/>
-  <logger name="org.opendaylight.controller.protocol_plugin.openflow.core.internal.Controller" level="INFO"/>
-  <logger name="org.opendaylight.controller.protocol_plugin.openflow.core.internal.SwitchHandler" level="INFO"/>
-  <logger name="org.opendaylight.controller.protocol_plugin.openflow.core.internal.SwitchIOSecureService" level="INFO"/>
-  <!-- SAL  -->
-  <logger name="org.opendaylight.controller.sal" level="INFO"/>
-  <logger name="org.opendaylight.controller.sal.implementation" level="INFO"/>
-  <logger name="org.opendaylight.controller.sal.implementation.internal.Inventory" level="INFO"/>
-  <logger name="org.opendaylight.controller.sal.implementation.internal.Topology" level="INFO"/>
-     <!-- remoterpc router and remoterpc routing table -->
-  <logger name="org.opendaylight.controller.sal.connector.remoterpc" level="INFO" />
-  <!-- Functional Modules -->
-  <logger name="org.opendaylight.controller.arphandler" level="INFO"/>
-  <logger name="org.opendaylight.controller.hosttracker" level="INFO"/>
-  <logger name="org.opendaylight.controller.routing" level="INFO"/>
-  <logger name="org.opendaylight.controller.forwardingrulesmanager" level="INFO"/>
-  <logger name="org.opendaylight.controller.forwarding.ipswitch" level="INFO"/>
-  <logger name="org.opendaylight.controller.switchmanager" level="INFO"/>
-  <logger name="org.opendaylight.controller.topologymanager" level="INFO"/>
-  <logger name="org.opendaylight.controller.usermanager" level="INFO"/>
-  <!-- Web modules -->
-  <logger name="org.opendaylight.controller.web" level="INFO"/>
-
-  <!-- Clustering -->
-  <logger name="org.opendaylight.controller.cluster" level="INFO"/>
-  <logger name="org.opendaylight.controller.cluster.datastore.node" level="INFO"/>
-
-  <!--
-       Unsynchronized controller startup causes models to crop up in random
-       order, which results in temporary inability to fully resolve a model,
-       which is usually resolved. Do not flood console, but keep the messages,
-       as they may be indicating and error.
-  -->
-  <logger name="org.opendaylight.yangtools.yang.parser.util.ModuleDependencySort" level="INFO" additivity="false">
-    <appender-ref ref="opendaylight.log"/>
-  </logger>
-
-  <!-- To debug MD-SAL schema loading issues, uncomment this -->
-  <!--logger name="org.opendaylight.yangtools.yang.parser.impl.util.URLSchemaContextResolver" level="DEBUG"/>
-  <logger name="org.opendaylight.yangtools.sal.binding.generator.impl.RuntimeGeneratedMappingServiceImpl" level="TRACE"/-->
-
-  <!-- additivity=false ensures analytics data only goes to the analytics log -->
-  <logger name="audit" level="INFO" additivity="false">
-       <appender-ref ref="audit-file"/>
-  </logger>
-</configuration>
diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/configuration/tomcat-logging.properties b/karaf/opendaylight-karaf-resources/src/main/resources/configuration/tomcat-logging.properties
deleted file mode 100644 (file)
index 3dbd992..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-############################################################
-# Configuration file for tomcat logging
-############################################################
-# Handlers:
-# "handlers" specifies a comma separated list of log Handler
-# classes.  These handlers will be installed during VM startup.
-# Note that these classes must be on the system classpath.
-# Following line configures a ConsoleHandler and a FileHandler
-
-handlers= java.util.logging.FileHandler,java.util.logging.ConsoleHandler
-
-############################################################
-# Handler specific properties
-# Describes specific configuration info for Handlers
-# JUL does not support rolling file handler based on date
-# For now we will keep count of files to 5 with rolling size of 10MB
-############################################################
-
-java.util.logging.FileHandler.pattern = logs/tomcat%g.log
-java.util.logging.FileHandler.limit = 104857600
-java.util.logging.FileHandler.count = 5
-java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter
-java.util.logging.FileHandler.append = true
-java.util.logging.FileHandler.level = INFO
-
-# Limit the message that are printed on the console to SEVERE and above.
-java.util.logging.ConsoleHandler.level = WARNING
-java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
-
-# SimpleFormatter output format to print one-line log message like this:
-# <YYYY>-<MM>-<DD> <HH>:<MM>:<SS> <TimeZone> [<SOURCE>] ><LOG_LEVEL> <LOGGER> <MESSAGE> <THROWABLE>
-#
-java.util.logging.SimpleFormatter.format=%1$tF %1$tT %1$tZ [%3$s] %4$s %2$s %5$s%6$s%n
-
-############################################################
-# Facility specific properties.
-# Provides extra control for each logger.
-############################################################
-
-# For example, set the com.xyz.foo logger to only log SEVERE
-# messages
-#org.apache.catalina = SEVERE
diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/configuration/tomcat-server.xml b/karaf/opendaylight-karaf-resources/src/main/resources/configuration/tomcat-server.xml
deleted file mode 100644 (file)
index 5092a5e..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-<?xml version='1.0' encoding='utf-8'?>
-<!--
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You under the Apache License, Version 2.0
-  (the "License"); you may not use this file except in compliance with
-  the License.  You may obtain a copy of the License at
-
-      http://www.apache.org/licenses/LICENSE-2.0
-
-  Unless required by applicable law or agreed to in writing, software
-  distributed under the License is distributed on an "AS IS" BASIS,
-  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  See the License for the specific language governing permissions and
-  limitations under the License.
--->
-<Server>
-  <!--APR library loader. Documentation at /docs/apr.html -->
-  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
-  <!--Initialize Jasper prior to webapps are loaded. Documentation at /docs/jasper-howto.html -->
-  <Listener className="org.apache.catalina.core.JasperListener" />
-  <!-- Prevent memory leaks due to use of particular java/javax APIs-->
-  <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
-  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
-  <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
-
-  <Service name="Catalina">
-    <Connector port="8282" protocol="HTTP/1.1"
-               connectionTimeout="20000"
-               redirectPort="8663" />
-
-<!--
-        Please remove the comments around the following Connector tag to enable HTTPS Authentication support.
-        Remember to add a valid keystore in the configuration folder.
-        More info : http://tomcat.apache.org/tomcat-7.0-doc/ssl-howto.html#Configuration
--->
-
- <!--
-    <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
-               maxThreads="150" scheme="https" secure="true"
-               clientAuth="false" sslProtocol="TLS"
-               keystoreFile="configuration/keystore"
-               keystorePass="changeit"/>
- -->
-
-    <Engine name="Catalina" defaultHost="localhost">
-      <Host name="localhost" appBase=""
-            unpackWARs="false" autoDeploy="false"
-            deployOnStartup="false" createDirs="false">
-            <Realm className="org.opendaylight.controller.karafsecurity.ControllerCustomRealm" />
-            <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-            <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
-                        prefix="web_access_log_" suffix=".txt" resolveHosts="false"
-                        rotatable="true" fileDateFormat="yyyy-MM"
-                        pattern="%{yyyy-MM-dd HH:mm:ss.SSS z}t - [%a] - %r"/>
-      </Host>
-    </Engine>
-  </Service>
-</Server>
diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/etc/custom.properties b/karaf/opendaylight-karaf-resources/src/main/resources/etc/custom.properties
deleted file mode 100644 (file)
index de0e8f3..0000000
+++ /dev/null
@@ -1,105 +0,0 @@
-# Extra packages to import from the boot class loader
-org.osgi.framework.system.packages.extra=org.apache.karaf.branding,sun.reflect,sun.reflect.misc,sun.misc,sun.nio.ch,com.sun.media.sound
-
-# https://bugs.eclipse.org/bugs/show_bug.cgi?id=325578
-# Extend the framework to avoid the resources to be presented with
-# a URL of type bundleresource: but to be presented as file:
-osgi.hook.configurators.include=org.eclipse.virgo.kernel.equinox.extensions.hooks.ExtensionsHookConfigurator
-
-# Embedded Tomcat configuration File
-org.eclipse.gemini.web.tomcat.config.path=configuration/tomcat-server.xml
-org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASH=true
-
-# Use Equinox as default OSGi Framework Implementation
-karaf.framework=equinox
-
-# Show a progress bar on startup and start the console when all bundles are up and running.
-# (If you are in a hurry you can still type enter to start the shell faster.)
-karaf.delay.console=true
-
-# Set security provider to BouncyCastle
-org.apache.karaf.security.providers = org.bouncycastle.jce.provider.BouncyCastleProvider
-
-# We set this to false to disable the Aries BlueprintExtender from doing its orderly container
-# shutdown so we can do it after the CSS has shut down all its modules. Otherwise Aries will
-# shutdown blueprint containers when the karaf framework starts shutdown (ie when bundle 0 is
-# stopped) which can cause failures on CSS module shutdown due to the core blueprint containers
-# and services already being shut down. This setting can be removed when/if CSS is removed
-# completely from ODL.
-org.apache.aries.blueprint.preemptiveShutdown=false
-
-netconf.config.persister.active=1
-
-netconf.config.persister.1.storageAdapterClass=org.opendaylight.controller.config.persist.storage.file.xml.XmlFileStorageAdapter
-netconf.config.persister.1.properties.fileStorage=etc/opendaylight/current/controller.currentconfig.xml
-netconf.config.persister.1.properties.numberOfBackups=1
-
-# logback configuration
-logback.configurationFile=configuration/logback.xml
-
-# Container configuration
-container.profile = Container
-
-# Connection manager configuration
-connection.scheme = ANY_CONTROLLER_ONE_MASTER
-
-# OVSDB configuration
-# ovsdb plugin supports both active and passive connections. It listens on port 6640 by default for Active connections.
-ovsdb.listenPort=6640
-
-# ovsdb creates Openflow nodes/bridges. This configuration configures the bridge's Openflow version.
-# default Openflow version = 1.0, we also support 1.3.
-# ovsdb.of.version=1.3
-
-# ovsdb can be configured with ml2 to perform l3 forwarding. The config below enables that functionality, which is
-# disabled by default.
-# ovsdb.l3.fwd.enabled=yes
-
-# ovsdb can be configured with ml2 to perform arp responder, enabled by default.
-ovsdb.l3.arp.responder.disabled=no
-
-# ovsdb can be configured with ml2 to perform l3 forwarding. When used in that scenario, the mac address of the default
-# gateway --on the external subnet-- is expected to be resolved from its inet address. The config below overrides that
-# specific arp/neighDiscovery lookup.
-# ovsdb.l3gateway.mac=00:00:5E:00:02:01
-
-# TLS configuration
-# To enable TLS, set secureChannelEnabled=true and specify the location of controller Java KeyStore and TrustStore files.
-# The Java KeyStore contains controller's private key and certificate. The Java TrustStore contains the trusted certificate
-# entries, including switches' Certification Authority (CA) certificates. For example,
-# secureChannelEnabled=true
-# controllerKeyStore=./configuration/ctlKeyStore
-# controllerKeyStorePassword=xxxxxxxx (this password should match the password used for KeyStore generation and at least 6 characters)
-# controllerTrustStore=./configuration/ctlTrustStore
-# controllerTrustStorePassword=xxxxxxxx (this password should match the password used for TrustStore generation and at least 6 characters)
-
-secureChannelEnabled=false
-controllerKeyStore=
-controllerKeyStorePassword=
-controllerTrustStore=
-controllerTrustStorePassword=
-
-# User Manager configurations
-enableStrongPasswordCheck = false
-
-#Jolokia configurations
-#org.jolokia.listenForHttpService=false
-
-# Logging configuration for Tomcat-JUL logging
-java.util.logging.config.file=configuration/tomcat-logging.properties
-
-#Hosttracker hostsdb key scheme setting
-hosttracker.keyscheme=IP
-
-# LISP Flow Mapping configuration
-# Enable merging RLOC sets received from different xTR-IDs for the same EID (default: false)
-lisp.mappingMerge = false
-# Enable the Solicit-Map-Request (SMR) mechanism (default: true)
-lisp.smr = true
-# Choose policy for Explicit Locator Path (ELP) handling
-# There are three options:
-#   default: don't add or remove locator records, return mapping as-is
-#   both: keep the ELP, but add the next hop as a standalone non-LCAF locator with a lower priority
-#   replace: remove the ELP, add the next hop as a standalone non-LCAF locator
-lisp.elpPolicy = default
-
diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/etc/jetty.xml b/karaf/opendaylight-karaf-resources/src/main/resources/etc/jetty.xml
deleted file mode 100644 (file)
index 064e8a8..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-<?xml version="1.0"?>
-<!--
- 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.
--->
-<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//
-DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
-
-<Configure class="org.eclipse.jetty.server.Server">
-
-    <!-- =========================================================== -->
-    <!-- Set connectors -->
-    <!-- =========================================================== -->
-    <!-- One of each type! -->
-    <!-- =========================================================== -->
-
-    <!-- Use this connector for many frequently idle connections and for
-        threadless continuations. -->
-    <Call name="addConnector">
-        <Arg>
-            <New class="org.eclipse.jetty.server.nio.SelectChannelConnector">
-                <Set name="host">
-                    <Property name="jetty.host" />
-                </Set>
-                <Set name="port">
-                    <Property name="jetty.port" default="8181" />
-                </Set>
-                <Set name="maxIdleTime">300000</Set>
-                <Set name="Acceptors">2</Set>
-                <Set name="statsOn">false</Set>
-                <Set name="confidentialPort">8543</Set>
-                <Set name="lowResourcesConnections">20000</Set>
-                <Set name="lowResourcesMaxIdleTime">5000</Set>
-            </New>
-        </Arg>
-    </Call>
-    <Call name="addConnector">
-      <Arg>
-        <New class="org.eclipse.jetty.server.nio.SelectChannelConnector">
-          <Set name="host">
-            <Property name="jetty.host" />
-          </Set>
-          <Set name="port">
-            <Property name="jetty.port" default="8080" />
-          </Set>
-          <Set name="maxIdleTime">300000</Set>
-          <Set name="Acceptors">2</Set>
-          <Set name="statsOn">false</Set>
-          <Set name="confidentialPort">8443</Set>
-          <Set name="lowResourcesConnections">20000</Set>
-          <Set name="lowResourcesMaxIdleTime">5000</Set>
-        </New>
-      </Arg>
-    </Call>
-
-    <!-- =========================================================== -->
-    <!-- Configure Authentication Realms -->
-    <!-- Realms may be configured for the entire server here, or -->
-    <!-- they can be configured for a specific web app in a context -->
-    <!-- configuration (see $(jetty.home)/contexts/test.xml for an -->
-    <!-- example). -->
-    <!-- =========================================================== -->
-    <Call name="addBean">
-        <Arg>
-            <New class="org.eclipse.jetty.plus.jaas.JAASLoginService">
-                <Set name="name">karaf</Set>
-                <Set name="loginModuleName">karaf</Set>
-                <Set name="roleClassNames">
-                    <Array type="java.lang.String">
-                        <Item>org.apache.karaf.jaas.boot.principal.RolePrincipal
-                        </Item>
-                    </Array>
-                </Set>
-            </New>
-        </Arg>
-    </Call>
-    <Call name="addBean">
-        <Arg>
-            <New class="org.eclipse.jetty.plus.jaas.JAASLoginService">
-                <Set name="name">default</Set>
-                <Set name="loginModuleName">karaf</Set>
-                <Set name="roleClassNames">
-                    <Array type="java.lang.String">
-                        <Item>org.apache.karaf.jaas.boot.principal.RolePrincipal
-                        </Item>
-                    </Array>
-                </Set>
-            </New>
-        </Arg>
-    </Call>
-
-</Configure>
diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/etc/jre.properties b/karaf/opendaylight-karaf-resources/src/main/resources/etc/jre.properties
deleted file mode 100644 (file)
index f6e78ce..0000000
+++ /dev/null
@@ -1,548 +0,0 @@
-################################################################################
-#
-#    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.
-#
-################################################################################
-
-#
-# Java platform package export properties.
-#
-
-# Standard package set.  Note that:
-#   - javax.transaction* is exported with a mandatory attribute
-jre-1.6= \
- javax.accessibility, \
- javax.activation;version="1.1", \
- javax.activity, \
- javax.annotation;version="1.0", \
- javax.annotation.processing;version="1.6", \
- javax.crypto, \
- javax.crypto.interfaces, \
- javax.crypto.spec, \
- javax.imageio, \
- javax.imageio.event, \
- javax.imageio.metadata, \
- javax.imageio.plugins.bmp, \
- javax.imageio.plugins.jpeg, \
- javax.imageio.spi, \
- javax.imageio.stream, \
- javax.jws, \
- javax.jws.soap, \
- javax.lang.model, \
- javax.lang.model.element, \
- javax.lang.model.type, \
- javax.lang.model.util, \
- javax.management, \
- javax.management.loading, \
- javax.management.modelmbean, \
- javax.management.monitor, \
- javax.management.openmbean, \
- javax.management.relation, \
- javax.management.remote, \
- javax.management.remote.rmi, \
- javax.management.timer, \
- javax.naming, \
- javax.naming.directory, \
- javax.naming.event, \
- javax.naming.ldap, \
- javax.naming.spi, \
- javax.net, \
- javax.net.ssl, \
- javax.print, \
- javax.print.attribute, \
- javax.print.attribute.standard, \
- javax.print.event, \
- javax.rmi, \
- javax.rmi.CORBA, \
- javax.rmi.ssl, \
- javax.script, \
- javax.security.auth, \
- javax.security.auth.callback, \
- javax.security.auth.kerberos, \
- javax.security.auth.login, \
- javax.security.auth.spi, \
- javax.security.auth.x500, \
- javax.security.cert, \
- javax.security.sasl, \
- javax.sound.midi, \
- javax.sound.midi.spi, \
- javax.sound.sampled, \
- javax.sound.sampled.spi, \
- javax.sql, \
- javax.sql.rowset, \
- javax.sql.rowset.serial, \
- javax.sql.rowset.spi, \
- javax.swing, \
- javax.swing.border, \
- javax.swing.colorchooser, \
- javax.swing.event, \
- javax.swing.filechooser, \
- javax.swing.plaf, \
- javax.swing.plaf.basic, \
- javax.swing.plaf.metal, \
- javax.swing.plaf.multi, \
- javax.swing.plaf.synth, \
- javax.swing.table, \
- javax.swing.text, \
- javax.swing.text.html, \
- javax.swing.text.html.parser, \
- javax.swing.text.rtf, \
- javax.swing.tree, \
- javax.swing.undo, \
- javax.tools, \
- javax.transaction; javax.transaction.xa; partial=true; mandatory:=partial, \
- javax.xml, \
- javax.xml.bind;version="2.2.1", \
- javax.xml.bind.annotation;version="2.2.1", \
- javax.xml.bind.annotation.adapters;version="2.2.1", \
- javax.xml.bind.attachment;version="2.2.1", \
- javax.xml.bind.helpers;version="2.2.1", \
- javax.xml.bind.util;version="2.2.1", \
- javax.xml.crypto, \
- javax.xml.crypto.dom, \
- javax.xml.crypto.dsig, \
- javax.xml.crypto.dsig.dom, \
- javax.xml.crypto.dsig.keyinfo, \
- javax.xml.crypto.dsig.spec, \
- javax.xml.datatype, \
- javax.xml.namespace, \
- javax.xml.parsers, \
- javax.xml.soap;version="1.3", \
- javax.xml.stream;version="1.2", \
- javax.xml.stream.events;version="1.2", \
- javax.xml.stream.util;version="1.2", \
- javax.xml.transform, \
- javax.xml.transform.dom, \
- javax.xml.transform.sax, \
- javax.xml.transform.stax, \
- javax.xml.transform.stream, \
- javax.xml.validation, \
- javax.xml.ws;version="2.2", \
- javax.xml.ws.handler;version="2.2", \
- javax.xml.ws.handler.soap;version="2.2", \
- javax.xml.ws.http;version="2.2", \
- javax.xml.ws.soap;version="2.2", \
- javax.xml.ws.spi;version="2.2", \
- javax.xml.ws.wsaddressing;version="2.2", \
- javax.xml.ws.spi.http;version="2.2", \
- javax.xml.xpath, \
- org.ietf.jgss, \
- org.omg.CORBA, \
- org.omg.CORBA_2_3, \
- org.omg.CORBA_2_3.portable, \
- org.omg.CORBA.DynAnyPackage, \
- org.omg.CORBA.ORBPackage, \
- org.omg.CORBA.portable, \
- org.omg.CORBA.TypeCodePackage, \
- org.omg.CosNaming, \
- org.omg.CosNaming.NamingContextExtPackage, \
- org.omg.CosNaming.NamingContextPackage, \
- org.omg.Dynamic, \
- org.omg.DynamicAny, \
- org.omg.DynamicAny.DynAnyFactoryPackage, \
- org.omg.DynamicAny.DynAnyPackage, \
- org.omg.IOP, \
- org.omg.IOP.CodecFactoryPackage, \
- org.omg.IOP.CodecPackage, \
- org.omg.Messaging, \
- org.omg.PortableInterceptor, \
- org.omg.PortableInterceptor.ORBInitInfoPackage, \
- org.omg.PortableServer, \
- org.omg.PortableServer.CurrentPackage, \
- org.omg.PortableServer.POAManagerPackage, \
- org.omg.PortableServer.POAPackage, \
- org.omg.PortableServer.portable, \
- org.omg.PortableServer.ServantLocatorPackage, \
- org.omg.SendingContext, \
- org.omg.stub.java.rmi, \
- org.omg.stub.javax.management.remote.rmi, \
- org.w3c.dom, \
- org.w3c.dom.bootstrap, \
- org.w3c.dom.css, \
- org.w3c.dom.events, \
- org.w3c.dom.html, \
- org.w3c.dom.ls, \
- org.w3c.dom.ranges, \
- org.w3c.dom.stylesheets, \
- org.w3c.dom.traversal, \
- org.w3c.dom.views, \
- org.w3c.dom.xpath, \
- org.xml.sax, \
- org.xml.sax.ext, \
- org.xml.sax.helpers, \
- sun.misc, \
- sun.reflect
-
-# Standard package set.  Note that:
-#   - javax.transaction* is exported with a mandatory attribute
-jre-1.7= \
- javax.accessibility, \
- javax.activation;version="1.1", \
- javax.activity, \
- javax.annotation;version="1.0", \
- javax.annotation.processing;version="1.6", \
- javax.crypto, \
- javax.crypto.interfaces, \
- javax.crypto.spec, \
- javax.imageio, \
- javax.imageio.event, \
- javax.imageio.metadata, \
- javax.imageio.plugins.bmp, \
- javax.imageio.plugins.jpeg, \
- javax.imageio.spi, \
- javax.imageio.stream, \
- javax.jws, \
- javax.jws.soap, \
- javax.lang.model, \
- javax.lang.model.element, \
- javax.lang.model.type, \
- javax.lang.model.util, \
- javax.management, \
- javax.management.loading, \
- javax.management.modelmbean, \
- javax.management.monitor, \
- javax.management.openmbean, \
- javax.management.relation, \
- javax.management.remote, \
- javax.management.remote.rmi, \
- javax.management.timer, \
- javax.naming, \
- javax.naming.directory, \
- javax.naming.event, \
- javax.naming.ldap, \
- javax.naming.spi, \
- javax.net, \
- javax.net.ssl, \
- javax.print, \
- javax.print.attribute, \
- javax.print.attribute.standard, \
- javax.print.event, \
- javax.rmi, \
- javax.rmi.CORBA, \
- javax.rmi.ssl, \
- javax.script, \
- javax.security.auth, \
- javax.security.auth.callback, \
- javax.security.auth.kerberos, \
- javax.security.auth.login, \
- javax.security.auth.spi, \
- javax.security.auth.x500, \
- javax.security.cert, \
- javax.security.sasl, \
- javax.sound.midi, \
- javax.sound.midi.spi, \
- javax.sound.sampled, \
- javax.sound.sampled.spi, \
- javax.sql, \
- javax.sql.rowset, \
- javax.sql.rowset.serial, \
- javax.sql.rowset.spi, \
- javax.swing, \
- javax.swing.border, \
- javax.swing.colorchooser, \
- javax.swing.event, \
- javax.swing.filechooser, \
- javax.swing.plaf, \
- javax.swing.plaf.basic, \
- javax.swing.plaf.metal, \
- javax.swing.plaf.multi, \
- javax.swing.plaf.synth, \
- javax.swing.table, \
- javax.swing.text, \
- javax.swing.text.html, \
- javax.swing.text.html.parser, \
- javax.swing.text.rtf, \
- javax.swing.tree, \
- javax.swing.undo, \
- javax.tools, \
- javax.transaction; javax.transaction.xa; partial=true; mandatory:=partial, \
- javax.xml, \
- javax.xml.bind;version="2.2.1", \
- javax.xml.bind.annotation;version="2.2.1", \
- javax.xml.bind.annotation.adapters;version="2.2.1", \
- javax.xml.bind.attachment;version="2.2.1", \
- javax.xml.bind.helpers;version="2.2.1", \
- javax.xml.bind.util;version="2.2.1", \
- javax.xml.crypto, \
- javax.xml.crypto.dom, \
- javax.xml.crypto.dsig, \
- javax.xml.crypto.dsig.dom, \
- javax.xml.crypto.dsig.keyinfo, \
- javax.xml.crypto.dsig.spec, \
- javax.xml.datatype, \
- javax.xml.namespace, \
- javax.xml.parsers, \
- javax.xml.soap;version="1.3", \
- javax.xml.stream;version="1.2", \
- javax.xml.stream.events;version="1.2", \
- javax.xml.stream.util;version="1.2", \
- javax.xml.transform, \
- javax.xml.transform.dom, \
- javax.xml.transform.sax, \
- javax.xml.transform.stax, \
- javax.xml.transform.stream, \
- javax.xml.validation, \
- javax.xml.ws;version="2.2", \
- javax.xml.ws.handler;version="2.2", \
- javax.xml.ws.handler.soap;version="2.2", \
- javax.xml.ws.http;version="2.2", \
- javax.xml.ws.soap;version="2.2", \
- javax.xml.ws.spi;version="2.2", \
- javax.xml.ws.wsaddressing;version="2.2", \
- javax.xml.ws.spi.http;version="2.2", \
- javax.xml.xpath, \
- org.ietf.jgss, \
- org.omg.CORBA, \
- org.omg.CORBA_2_3, \
- org.omg.CORBA_2_3.portable, \
- org.omg.CORBA.DynAnyPackage, \
- org.omg.CORBA.ORBPackage, \
- org.omg.CORBA.portable, \
- org.omg.CORBA.TypeCodePackage, \
- org.omg.CosNaming, \
- org.omg.CosNaming.NamingContextExtPackage, \
- org.omg.CosNaming.NamingContextPackage, \
- org.omg.Dynamic, \
- org.omg.DynamicAny, \
- org.omg.DynamicAny.DynAnyFactoryPackage, \
- org.omg.DynamicAny.DynAnyPackage, \
- org.omg.IOP, \
- org.omg.IOP.CodecFactoryPackage, \
- org.omg.IOP.CodecPackage, \
- org.omg.Messaging, \
- org.omg.PortableInterceptor, \
- org.omg.PortableInterceptor.ORBInitInfoPackage, \
- org.omg.PortableServer, \
- org.omg.PortableServer.CurrentPackage, \
- org.omg.PortableServer.POAManagerPackage, \
- org.omg.PortableServer.POAPackage, \
- org.omg.PortableServer.portable, \
- org.omg.PortableServer.ServantLocatorPackage, \
- org.omg.SendingContext, \
- org.omg.stub.java.rmi, \
- org.omg.stub.javax.management.remote.rmi, \
- org.w3c.dom, \
- org.w3c.dom.bootstrap, \
- org.w3c.dom.css, \
- org.w3c.dom.events, \
- org.w3c.dom.html, \
- org.w3c.dom.ls, \
- org.w3c.dom.ranges, \
- org.w3c.dom.stylesheets, \
- org.w3c.dom.traversal, \
- org.w3c.dom.views, \
- org.w3c.dom.xpath, \
- org.xml.sax, \
- org.xml.sax.ext, \
- org.xml.sax.helpers, \
- sun.misc, \
- sun.reflect
-
-jre-1.8= \
- javax.accessibility, \
- javax.activation;version="1.1", \
- javax.activity, \
- javax.annotation;version="1.0", \
- javax.annotation.processing;version="1.6", \
- javax.crypto, \
- javax.crypto.interfaces, \
- javax.crypto.spec, \
- javax.imageio, \
- javax.imageio.event, \
- javax.imageio.metadata, \
- javax.imageio.plugins.bmp, \
- javax.imageio.plugins.jpeg, \
- javax.imageio.spi, \
- javax.imageio.stream, \
- javax.jws, \
- javax.jws.soap, \
- javax.lang.model, \
- javax.lang.model.element, \
- javax.lang.model.type, \
- javax.lang.model.util, \
- javax.management, \
- javax.management.loading, \
- javax.management.modelmbean, \
- javax.management.monitor, \
- javax.management.openmbean, \
- javax.management.relation, \
- javax.management.remote, \
- javax.management.remote.rmi, \
- javax.management.timer, \
- javax.naming, \
- javax.naming.directory, \
- javax.naming.event, \
- javax.naming.ldap, \
- javax.naming.spi, \
- javax.net, \
- javax.net.ssl, \
- javax.print, \
- javax.print.attribute, \
- javax.print.attribute.standard, \
- javax.print.event, \
- javax.rmi, \
- javax.rmi.CORBA, \
- javax.rmi.ssl, \
- javax.script, \
- javax.security.auth, \
- javax.security.auth.callback, \
- javax.security.auth.kerberos, \
- javax.security.auth.login, \
- javax.security.auth.spi, \
- javax.security.auth.x500, \
- javax.security.cert, \
- javax.security.sasl, \
- javax.sound.midi, \
- javax.sound.midi.spi, \
- javax.sound.sampled, \
- javax.sound.sampled.spi, \
- javax.sql, \
- javax.sql.rowset, \
- javax.sql.rowset.serial, \
- javax.sql.rowset.spi, \
- javax.swing, \
- javax.swing.border, \
- javax.swing.colorchooser, \
- javax.swing.event, \
- javax.swing.filechooser, \
- javax.swing.plaf, \
- javax.swing.plaf.basic, \
- javax.swing.plaf.metal, \
- javax.swing.plaf.multi, \
- javax.swing.plaf.synth, \
- javax.swing.table, \
- javax.swing.text, \
- javax.swing.text.html, \
- javax.swing.text.html.parser, \
- javax.swing.text.rtf, \
- javax.swing.tree, \
- javax.swing.undo, \
- javax.tools, \
- javax.transaction; javax.transaction.xa; partial=true; mandatory:=partial, \
- javax.xml, \
- javax.xml.bind;version="2.2.1", \
- javax.xml.bind.annotation;version="2.2.1", \
- javax.xml.bind.annotation.adapters;version="2.2.1", \
- javax.xml.bind.attachment;version="2.2.1", \
- javax.xml.bind.helpers;version="2.2.1", \
- javax.xml.bind.util;version="2.2.1", \
- javax.xml.crypto, \
- javax.xml.crypto.dom, \
- javax.xml.crypto.dsig, \
- javax.xml.crypto.dsig.dom, \
- javax.xml.crypto.dsig.keyinfo, \
- javax.xml.crypto.dsig.spec, \
- javax.xml.datatype, \
- javax.xml.namespace, \
- javax.xml.parsers, \
- javax.xml.soap;version="1.3", \
- javax.xml.stream;version="1.2", \
- javax.xml.stream.events;version="1.2", \
- javax.xml.stream.util;version="1.2", \
- javax.xml.transform, \
- javax.xml.transform.dom, \
- javax.xml.transform.sax, \
- javax.xml.transform.stax, \
- javax.xml.transform.stream, \
- javax.xml.validation, \
- javax.xml.ws;version="2.2", \
- javax.xml.ws.handler;version="2.2", \
- javax.xml.ws.handler.soap;version="2.2", \
- javax.xml.ws.http;version="2.2", \
- javax.xml.ws.soap;version="2.2", \
- javax.xml.ws.spi;version="2.2", \
- javax.xml.ws.wsaddressing;version="2.2", \
- javax.xml.ws.spi.http;version="2.2", \
- javax.xml.xpath, \
- javafx.animation, \
- javafx.application, \
- javafx.beans, \
- javafx.beans.binding, \
- javafx.beans.property, \
- javafx.beans.property.adapter, \
- javafx.beans.value, \
- javafx.collections, \
- javafx.concurrent, \
- javafx.css, \
- javafx.embed.swing, \
- javafx.embed.swt, \
- javafx.event, \
- javafx.fxml, \
- javafx.geometry, \
- javafx.scene, \
- javafx.scene.canvas, \
- javafx.scene.chart, \
- javafx.scene.control, \
- javafx.scene.control.cell, \
- javafx.scene.effect, \
- javafx.scene.image, \
- javafx.scene.input, \
- javafx.scene.layout, \
- javafx.scene.media, \
- javafx.scene.paint, \
- javafx.scene.shape, \
- javafx.scene.text, \
- javafx.scene.transform, \
- javafx.scene.web, \
- javafx.stage, \
- javafx.util, \
- javafx.util.converter, \
- org.ietf.jgss, \
- org.omg.CORBA, \
- org.omg.CORBA_2_3, \
- org.omg.CORBA_2_3.portable, \
- org.omg.CORBA.DynAnyPackage, \
- org.omg.CORBA.ORBPackage, \
- org.omg.CORBA.portable, \
- org.omg.CORBA.TypeCodePackage, \
- org.omg.CosNaming, \
- org.omg.CosNaming.NamingContextExtPackage, \
- org.omg.CosNaming.NamingContextPackage, \
- org.omg.Dynamic, \
- org.omg.DynamicAny, \
- org.omg.DynamicAny.DynAnyFactoryPackage, \
- org.omg.DynamicAny.DynAnyPackage, \
- org.omg.IOP, \
- org.omg.IOP.CodecFactoryPackage, \
- org.omg.IOP.CodecPackage, \
- org.omg.Messaging, \
- org.omg.PortableInterceptor, \
- org.omg.PortableInterceptor.ORBInitInfoPackage, \
- org.omg.PortableServer, \
- org.omg.PortableServer.CurrentPackage, \
- org.omg.PortableServer.POAManagerPackage, \
- org.omg.PortableServer.POAPackage, \
- org.omg.PortableServer.portable, \
- org.omg.PortableServer.ServantLocatorPackage, \
- org.omg.SendingContext, \
- org.omg.stub.java.rmi, \
- org.omg.stub.javax.management.remote.rmi, \
- org.w3c.dom, \
- org.w3c.dom.bootstrap, \
- org.w3c.dom.css, \
- org.w3c.dom.events, \
- org.w3c.dom.html, \
- org.w3c.dom.ls, \
- org.w3c.dom.ranges, \
- org.w3c.dom.stylesheets, \
- org.w3c.dom.traversal, \
- org.w3c.dom.views, \
- org.w3c.dom.xpath, \
- org.xml.sax, \
- org.xml.sax.ext, \
- org.xml.sax.helpers, \
- sun.misc, \
- sun.reflect
diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/etc/odl.java.security b/karaf/opendaylight-karaf-resources/src/main/resources/etc/odl.java.security
deleted file mode 100644 (file)
index ee6e030..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-# Custom java.security config file for odl. This file augmnets the defult java.security config file provided by the JRE itself
-# Documentation: https://docs.oracle.com/javase/7/docs/technotes/guides/security/jsse/JSSERefGuide.html#DisabledAlgorithms
-# Additional information can also be found in the default java.security file: JAVA_HOME/jre/lib/security/java.security
-
-# Disable weak ciphers and ciphers vulnerable to the Logjam exploit, more information can be found here https://bugs.opendaylight.org/show_bug.cgi?id=3552
-jdk.tls.disabledAlgorithms=EXPORT, RC4, SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA, SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA, SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA, SSL_RSA_EXPORT_WITH_DES40_CBC_SHA, TLS_KRB5_EXPORT_WITH_DES_CBC_40_MD5, TLS_KRB5_EXPORT_WITH_DES_CBC_40_SHA, DESede, anon
diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/etc/org.ops4j.pax.logging.cfg b/karaf/opendaylight-karaf-resources/src/main/resources/etc/org.ops4j.pax.logging.cfg
deleted file mode 100644 (file)
index 80c1df9..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-################################################################################
-#
-#    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.
-#
-################################################################################
-
-# Root logger
-log4j.rootLogger=INFO, async, osgi:*
-log4j.throwableRenderer=org.apache.log4j.OsgiThrowableRenderer
-
-# CONSOLE appender not used by default
-log4j.appender.stdout=org.apache.log4j.ConsoleAppender
-log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
-log4j.appender.stdout.layout.ConversionPattern=%d{ISO8601} | %-5.5p | %-16.16t | %-32.32c{1} | %X{bundle.id} - %X{bundle.name} - %X{bundle.version} | %m%n
-
-# Async appender forwarding to file appender
-log4j.appender.async=org.apache.log4j.AsyncAppender
-log4j.appender.async.appenders=out
-
-# File appender
-log4j.appender.out=org.apache.log4j.RollingFileAppender
-log4j.appender.out.layout=org.apache.log4j.PatternLayout
-log4j.appender.out.layout.ConversionPattern=%d{ISO8601} | %-5.5p | %-16.16t | %-32.32c{1} | %X{bundle.id} - %X{bundle.name} - %X{bundle.version} | %m%n
-log4j.appender.out.file=${karaf.data}/log/karaf.log
-log4j.appender.out.append=true
-log4j.appender.out.maxFileSize=1MB
-log4j.appender.out.maxBackupIndex=10
-
-# Sift appender
-log4j.appender.sift=org.apache.log4j.sift.MDCSiftingAppender
-log4j.appender.sift.key=bundle.name
-log4j.appender.sift.default=karaf
-log4j.appender.sift.appender=org.apache.log4j.FileAppender
-log4j.appender.sift.appender.layout=org.apache.log4j.PatternLayout
-log4j.appender.sift.appender.layout.ConversionPattern=%d{ISO8601} | %-5.5p | %-16.16t | %-32.32c{1} | %m%n
-log4j.appender.sift.appender.file=${karaf.data}/log/$\\{bundle.name\\}.log
-log4j.appender.sift.appender.append=true
-
-# syslog appender for exporting karaf messages to a syslog server
-# To enable the syslog appender, add it to the log4j.rootLogger list above.
-#
-# Make sure to set log4j.appender.syslog.syslogHost in the format:
-# <syslogHost>:<syslogPort>
-# If no port is specified, the default, 514, is assumed.
-log4j.appender.syslog=org.apache.log4j.net.SyslogAppender
-log4j.appender.syslog.layout=org.apache.log4j.PatternLayout
-log4j.appender.syslog.layout.ConversionPattern=%d{ISO8601} | %-5.5p | %-16.16t | %-32.32c{1} | %X{bundle.id} - %X{bundle.name} - %X{bundle.version} | %m%n
-log4j.appender.syslog.syslogHost=127.0.0.1
-log4J.appender.syslog.facility=KARAF
-log4j.appender.syslog.facilityPrinting=false
index 7c51e41550245ae4af16ea582c72291ef35190fb..83fb16b3a2809726ff87a79123b8fd4f147cfe27 100644 (file)
@@ -20,9 +20,6 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
   <name>ODL :: odlparent :: ${project.artifactId}</name>
   <modules>
     <module>karaf-branding</module>
-    <module>opendaylight-karaf-resources</module>
-    <module>opendaylight-karaf-empty</module>
-    <module>karaf-parent</module>
     <module>karaf4-parent</module>
     <module>opendaylight-karaf4-resources</module>
     <module>opendaylight-karaf4-empty</module>
index 9a4c8ca4747edab55d4b01b7937faab68cecfff6..cb8a9358170331f776f87d0e7f11598f145c89dd 100644 (file)
@@ -57,7 +57,7 @@
     </dependency>
     <dependency>
       <groupId>org.opendaylight.odlparent</groupId>
-      <artifactId>features-test</artifactId>
+      <artifactId>features4-test</artifactId>
       <version>${project.version}</version>
     </dependency>
     <dependency>
index 33a7ab452c3182072e6b9d63bf252619de254246..1b78e31030ed14afad87f10a63cdd34d2db24d5b 100644 (file)
@@ -88,7 +88,8 @@
     <jacoco.version>0.7.7.201606060606</jacoco.version>
     <!-- Used in aaa, controller, coretutorials, integration/distribution, l2switch, lacp, lispflowmapping, netide,
          nic, openflowplugin, ovsdb, persistence, sfc, snbi, snmp4sdn?, sxp, topoprocessing, unimgr, vtn -->
-    <karaf.version>3.0.8</karaf.version>
+    <karaf.version>4.0.9</karaf.version>
+    <!-- TODO As part of a future drop of the *4 suffix everywhere, this property should eventually be removed -->
     <karaf4.version>4.0.9</karaf4.version>
     <karaf4.plugin.version>4.0.9</karaf4.plugin.version>
     <!-- Used in lispflowmapping, snmp4sdn, vtn -->
diff --git a/pom.xml b/pom.xml
index 6bd6fe7c210bfefe579a7ddcf20bffd3376170d1..76f206b976b0e2e8c6dbb76ce6b71a00f48bef6f 100644 (file)
--- a/pom.xml
+++ b/pom.xml
         <module>license</module>
 
         <module>bundles-test-lib</module>
-        <module>bundles-test</module>
         <module>bundles4-test</module>
-        <module>features-test</module>
         <module>features4-test</module>
 
         <!-- Karaf integration -->
         <module>karaf</module>
-        <module>karaf-plugin</module>
         <module>karaf4-plugin</module>
 
         <!-- Parent POMs -->
         <module>aggregator-parent</module>
         <module>bundle-parent</module>
-        <module>features-parent</module>
-        <module>single-feature3-parent</module>
         <module>untested-single-feature-parent</module>
         <module>single-feature-parent</module>
-        <module>feature3-repo-parent</module>
         <module>feature-repo-parent</module>
         <module>odlparent</module>
         <module>odlparent-lite</module>
 
         <!-- Features -->
-        <module>features</module>
         <module>features4</module>
 
         <!-- Artifacts -->
diff --git a/single-feature3-parent/pom.xml b/single-feature3-parent/pom.xml
deleted file mode 100644 (file)
index 00407dc..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright © 2016 Red Hat, Inc. and others.  All rights reserved.
-
- This program and the accompanying materials are made available under the
- terms of the Eclipse Public License v1.0 which accompanies this distribution,
- and is available at http://www.eclipse.org/legal/epl-v10.html
- -->
-<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>
-
-    <!--
-         Base parent POM for building and packaging single Karaf features.
-         Karaf features are generated based on the POM dependencies; they can be supplemented by a base
-         feature.xml file in src/main/feature.
-
-         By default, such single features aren't tested for loadability; they're supposed to be aggregated
-         in a feature repository (see feature-repo-parent), which is tested using SingleFeatureTest. The
-         sft profile can be used to enforce SingleFeatureTest on single features too.
-
-         Single features which aren't part of a repository can not be considered part of a project's API.
-         In any case, refer to each project's declared features to determine their API and future
-         availability.
-
-         Users should do the following:
-
-         - specify this as their parent
-         - make sure the packaging is set to feature
-         - setup projects <dependencies/> as needed for their features
-    -->
-
-    <parent>
-        <groupId>org.opendaylight.odlparent</groupId>
-        <artifactId>odlparent</artifactId>
-        <version>1.9.1-SNAPSHOT</version>
-        <relativePath>../odlparent</relativePath>
-    </parent>
-
-    <artifactId>single-feature3-parent</artifactId>
-    <packaging>pom</packaging>
-    <name>ODL :: odlparent :: ${project.artifactId}</name>
-
-    <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.karaf.tooling</groupId>
-                <artifactId>karaf-maven-plugin</artifactId>
-                <version>${karaf.version}</version>
-                <extensions>true</extensions>
-                <configuration>
-                    <excludedArtifactIds>
-                        <excludedArtifactId>slf4j-api</excludedArtifactId>
-                    </excludedArtifactIds>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-
-    <!--
-        Maven Site Configuration
-
-        The following configuration is necessary for maven-site-plugin to
-        correctly identify the correct deployment path for OpenDaylight Maven
-        sites.
-    -->
-    <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
-
-    <distributionManagement>
-        <site>
-            <id>opendaylight-site</id>
-            <url>${nexus.site.url}/${project.artifactId}/</url>
-        </site>
-    </distributionManagement>
-
-</project>