Add the API for multicost/incremental update/rsade 17/53117/4
authorKai GAO <gaok12@mails.tsinghua.edu.cn>
Fri, 10 Mar 2017 05:55:53 +0000 (00:55 -0500)
committerKai Gao <gaok12@mails.tsinghua.edu.cn>
Fri, 10 Mar 2017 19:22:04 +0000 (14:22 -0500)
Patch set 2: Add missing dependencies in pom.xml
Patch set 3: Remove redundant <scm> tags and trigger the rebuild

Change-Id: I8fcaf194ca3c1b8ab3b4dfda35d8fffc12e9109b
Signed-off-by: Kai GAO <gaok12@mails.tsinghua.edu.cn>
26 files changed:
alto-basic/auto-maps/pom.xml
alto-basic/manual-maps/pom.xml
alto-basic/simple-ird/pom.xml
alto-extensions/incremental-update/api/pom.xml [new file with mode: 0644]
alto-extensions/incremental-update/api/src/main/yang/alto-incremental-update.yang [new file with mode: 0644]
alto-extensions/incremental-update/impl/pom.xml [new file with mode: 0644]
alto-extensions/incremental-update/impl/src/main/java/org/opendaylight/alto/incrementalupdate/impl/IncrementalUpdateProvider.java [new file with mode: 0644]
alto-extensions/incremental-update/impl/src/main/resources/org/opendaylight/blueprint/impl-blueprint.xml [new file with mode: 0644]
alto-extensions/incremental-update/pom.xml [new file with mode: 0644]
alto-extensions/multicost/api/pom.xml [new file with mode: 0644]
alto-extensions/multicost/api/src/main/yang/alto-costmap-multicost.yang [new file with mode: 0644]
alto-extensions/multicost/impl/pom.xml [new file with mode: 0644]
alto-extensions/multicost/impl/src/main/java/org/opendaylight/alto/multicost/impl/MulticostProvider.java [new file with mode: 0644]
alto-extensions/multicost/impl/src/main/resources/org/opendaylight/blueprint/impl-blueprint.xml [new file with mode: 0644]
alto-extensions/multicost/pom.xml [new file with mode: 0644]
alto-extensions/pom.xml
alto-extensions/rsade/api/pom.xml [new file with mode: 0644]
alto-extensions/rsade/api/src/main/yang/routingstate-abstraction.yang [new file with mode: 0644]
alto-extensions/rsade/impl/pom.xml [new file with mode: 0644]
alto-extensions/rsade/impl/src/main/java/org/opendaylight/alto/rsade/impl/RoutingStateAbstractionProvider.java [new file with mode: 0644]
alto-extensions/rsade/impl/src/main/resources/org/opendaylight/blueprint/impl-blueprint.xml [new file with mode: 0644]
alto-extensions/rsade/pom.xml [new file with mode: 0644]
alto-extensions/simple-pce/network-tracker/pom.xml
alto-extensions/simple-pce/pom.xml
alto-release-features/pom.xml
alto-release-features/src/main/features/features.xml

index ea0bec2563cc5f33f86d2558bb2986bab804c57d..41252e8e6fb97fd2f29a5b3a44f3030ca369d4ac 100644 (file)
@@ -25,13 +25,6 @@ and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
     <maven>3.1.1</maven>
   </prerequisites>
 
-  <scm>
-    <connection>scm:git:ssh://git.opendaylight.org:29418/alto-auto-maps.git</connection>
-    <developerConnection>scm:git:ssh://git.opendaylight.org:29418/alto-auto-maps.git</developerConnection>
-    <tag>HEAD</tag>
-    <url>https://wiki.opendaylight.org/view/alto-auto-maps:Main</url>
-  </scm>
-
   <!-- DO NOT install or deploy the repo root pom as it's only needed to initiate a build -->
   <build>
     <plugins>
index e81375de47ff4585fff4fa8db7c39235d8d21ed2..6babd8dc295ac5b923ee217ccf06fad844526c20 100644 (file)
@@ -77,11 +77,5 @@ and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
         </plugins>
     </build>
 
-    <scm>
-        <connection>scm:git:ssh://git.opendaylight.org:29418/alto-simple-ird.git</connection>
-        <developerConnection>scm:git:ssh://git.opendaylight.org:29418/alto-simple-ird.git</developerConnection>
-        <tag>HEAD</tag>
-        <url>https://wiki.opendaylight.org/view/alto-simple-ird:Main</url>
-    </scm>
 </project>
 
index 8df31eb0722e13b074600a911fa822203aa58ab6..e0cba427ce33ed81372fdf3cf6a628aea48aafe9 100644 (file)
@@ -77,10 +77,4 @@ and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
     </plugins>
   </build>
 
-  <scm>
-    <connection>scm:git:ssh://git.opendaylight.org:29418/alto-simple-ird.git</connection>
-    <developerConnection>scm:git:ssh://git.opendaylight.org:29418/alto-simple-ird.git</developerConnection>
-    <tag>HEAD</tag>
-    <url>https://wiki.opendaylight.org/view/alto-simple-ird:Main</url>
-  </scm>
 </project>
diff --git a/alto-extensions/incremental-update/api/pom.xml b/alto-extensions/incremental-update/api/pom.xml
new file mode 100644 (file)
index 0000000..613b8b1
--- /dev/null
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright © 2017 Yale University 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.mdsal</groupId>
+    <artifactId>binding-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath/>
+  </parent>
+
+  <groupId>org.opendaylight.alto</groupId>
+  <artifactId>incremental-update-api</artifactId>
+  <version>0.4.0-SNAPSHOT</version>
+  <!-- <name> formatting is used by autorelease to parse and notify projects on
+       build failure. Please do not modify this unless you have a good reason. -->
+  <name>ODL :: org.opendaylight.alto :: ${project.artifactId}</name>
+  <packaging>bundle</packaging>
+</project>
diff --git a/alto-extensions/incremental-update/api/src/main/yang/alto-incremental-update.yang b/alto-extensions/incremental-update/api/src/main/yang/alto-incremental-update.yang
new file mode 100644 (file)
index 0000000..d0ce8ab
--- /dev/null
@@ -0,0 +1,58 @@
+module alto-incremental-update {
+    yang-version 1;
+    namespace "urn:opendaylight:alto:incrementalupdate";
+    prefix "alto-incremental-update";
+
+    revision "2017-03-02" {
+        description "Initial revision of incremental-update model";
+    }
+
+    description
+        "This module provides the capability of updating ALTO maps incrementally \
+        as introduced in: \
+        https://datatracker.ietf.org/doc/draft-ietf-alto-incr-update-sse/ \
+        Only the support for network map and cost map are supported and the
+        implementation is incompatible with the standard service models.";
+
+    list incr-data {
+        key "request-id";
+
+        leaf request-id {
+            type string;
+        }
+
+        leaf map-name {
+            type string;
+            config false;
+            description "The name of the map to be incrementally updated.";
+        }
+
+        leaf map-type {
+            type string;
+            config false;
+            description "The type of the map to be incrementally updated.";
+        }
+
+        leaf request-body {
+            type string;
+            description "Content of the incremental update request.";
+        }
+
+        list update-history {
+            key "seq";
+
+            config false;
+
+            leaf seq {
+                type int64;
+                description "A sequence number that is self-incremented to reference the partial update.";
+            }
+
+            leaf update-body {
+                type string;
+
+                description "Content of a given inremental update.";
+            }
+        }
+    }
+}
diff --git a/alto-extensions/incremental-update/impl/pom.xml b/alto-extensions/incremental-update/impl/pom.xml
new file mode 100644 (file)
index 0000000..612077b
--- /dev/null
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- vi: set et smarttab sw=4 tabstop=4: -->
+<!--
+Copyright © 2017 Yale University 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.controller</groupId>
+    <artifactId>config-parent</artifactId>
+    <version>0.6.0-SNAPSHOT</version>
+    <relativePath/>
+  </parent>
+
+  <groupId>org.opendaylight.alto</groupId>
+  <artifactId>incremental-update-impl</artifactId>
+  <version>0.4.0-SNAPSHOT</version>
+  <!-- <name> formatting is used by autorelease to parse and notify projects on
+       build failure. Please do not modify this unless you have a good reason. -->
+  <name>ODL :: org.opendaylight.alto :: ${project.artifactId}</name>
+  <packaging>bundle</packaging>
+
+  <dependencies>
+    <dependency>
+      <groupId>${project.groupId}</groupId>
+      <artifactId>incremental-update-api</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+
+    <!-- Testing Dependencies -->
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <scope>test</scope>
+    </dependency>
+
+    <dependency>
+      <groupId>org.mockito</groupId>
+      <artifactId>mockito-core</artifactId>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+</project>
diff --git a/alto-extensions/incremental-update/impl/src/main/java/org/opendaylight/alto/incrementalupdate/impl/IncrementalUpdateProvider.java b/alto-extensions/incremental-update/impl/src/main/java/org/opendaylight/alto/incrementalupdate/impl/IncrementalUpdateProvider.java
new file mode 100644 (file)
index 0000000..639593b
--- /dev/null
@@ -0,0 +1,37 @@
+/*
+ * Copyright © 2017 Yale University 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.alto.incrementalupdate.impl;
+
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class IncrementalUpdateProvider {
+
+    private static final Logger LOG = LoggerFactory.getLogger(IncrementalUpdateProvider.class);
+
+    private final DataBroker dataBroker;
+
+    public IncrementalUpdateProvider(final DataBroker dataBroker) {
+        this.dataBroker = dataBroker;
+    }
+
+    /**
+     * Method called when the blueprint container is created.
+     */
+    public void init() {
+        LOG.info("IncrementalUpdateProvider Session Initiated");
+    }
+
+    /**
+     * Method called when the blueprint container is destroyed.
+     */
+    public void close() {
+        LOG.info("IncrementalUpdateProvider Closed");
+    }
+}
diff --git a/alto-extensions/incremental-update/impl/src/main/resources/org/opendaylight/blueprint/impl-blueprint.xml b/alto-extensions/incremental-update/impl/src/main/resources/org/opendaylight/blueprint/impl-blueprint.xml
new file mode 100644 (file)
index 0000000..621f294
--- /dev/null
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- vi: set et smarttab sw=4 tabstop=4: -->
+<!--
+Copyright © 2017 Yale University 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
+-->
+<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
+  xmlns:odl="http://opendaylight.org/xmlns/blueprint/v1.0.0"
+  odl:use-default-for-reference-types="true">
+
+  <reference id="dataBroker"
+    interface="org.opendaylight.controller.md.sal.binding.api.DataBroker"
+    odl:type="default" />
+
+  <bean id="provider"
+    class="org.opendaylight.alto.incrementalupdate.impl.IncrementalUpdateProvider"
+    init-method="init" destroy-method="close">
+    <argument ref="dataBroker" />
+  </bean>
+
+</blueprint>
diff --git a/alto-extensions/incremental-update/pom.xml b/alto-extensions/incremental-update/pom.xml
new file mode 100644 (file)
index 0000000..3a98bef
--- /dev/null
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright © 2017 Yale University 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 INTERNAL
+-->
+<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.8.0-SNAPSHOT</version>
+    <relativePath/>
+  </parent>
+
+  <groupId>org.opendaylight.alto</groupId>
+  <artifactId>incremental-update-aggregator</artifactId>
+  <version>0.1.0-SNAPSHOT</version>
+  <name>incremental-update</name> <!-- DO NOT CHANGE - Used by Sonar to set project name -->
+  <packaging>pom</packaging>
+
+  <modules>
+    <module>api</module>
+    <module>impl</module>
+  </modules>
+
+  <!-- DO NOT install or deploy the repo root pom as it's only needed to initiate a build -->
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-deploy-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-install-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+  <profiles>
+    <profile>
+      <!--
+          This profile is to ensure we only build javadocs reports
+          when we plan to deploy Maven site for our project.
+      -->
+      <id>maven-site</id>
+      <activation>
+        <file>
+          <exists>${user.dir}/deploy-site.xml</exists>
+        </file>
+      </activation>
+
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-javadoc-plugin</artifactId>
+            <inherited>false</inherited>
+            <executions>
+              <execution>
+                <id>aggregate</id>
+                <goals>
+                  <goal>aggregate</goal>
+                </goals>
+                <phase>package</phase>
+              </execution>
+            </executions>
+          </plugin>
+          <plugin>
+            <artifactId>maven-checkstyle-plugin</artifactId>
+            <configuration>
+              <failsOnError>true</failsOnError>
+            </configuration>
+          </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}/</url>
+
+  <distributionManagement>
+    <site>
+      <id>opendaylight-site</id>
+      <url>${nexus.site.url}/</url>
+    </site>
+  </distributionManagement>
+</project>
diff --git a/alto-extensions/multicost/api/pom.xml b/alto-extensions/multicost/api/pom.xml
new file mode 100644 (file)
index 0000000..023e57b
--- /dev/null
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright © 2017 Yale University 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.mdsal</groupId>
+    <artifactId>binding-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath/>
+  </parent>
+
+  <groupId>org.opendaylight.alto</groupId>
+  <artifactId>multicost-api</artifactId>
+  <version>0.4.0-SNAPSHOT</version>
+  <!-- <name> formatting is used by autorelease to parse and notify projects on
+       build failure. Please do not modify this unless you have a good reason. -->
+  <name>ODL :: org.opendaylight.alto :: ${project.artifactId}</name>
+  <packaging>bundle</packaging>
+</project>
diff --git a/alto-extensions/multicost/api/src/main/yang/alto-costmap-multicost.yang b/alto-extensions/multicost/api/src/main/yang/alto-costmap-multicost.yang
new file mode 100644 (file)
index 0000000..d30bc2a
--- /dev/null
@@ -0,0 +1,30 @@
+module alto-multicost {
+    yang-version 1;
+    namespace "urn:opendaylight:alto:multicost";
+    prefix "alto-multicost";
+
+    revision "2017-03-02" {
+        description "Initial revision of multicost model";
+    }
+
+    description
+      "The multicost is a draft to provide multicost support for ALTO cost map \
+      It is implemented in an incompatible way with previous ALTO service models.";
+
+    list multicost-data {
+        key "request-id";
+
+        leaf request-id {
+            type string;
+        }
+
+        leaf request-body {
+            type string;
+        }
+
+        leaf response-body {
+            config false;
+            type string;
+        }
+    }
+}
diff --git a/alto-extensions/multicost/impl/pom.xml b/alto-extensions/multicost/impl/pom.xml
new file mode 100644 (file)
index 0000000..6911347
--- /dev/null
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- vi: set et smarttab sw=4 tabstop=4: -->
+<!--
+Copyright © 2017 Yale University 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.controller</groupId>
+    <artifactId>config-parent</artifactId>
+    <version>0.6.0-SNAPSHOT</version>
+    <relativePath/>
+  </parent>
+
+  <groupId>org.opendaylight.alto</groupId>
+  <artifactId>multicost-impl</artifactId>
+  <version>0.4.0-SNAPSHOT</version>
+  <!-- <name> formatting is used by autorelease to parse and notify projects on
+       build failure. Please do not modify this unless you have a good reason. -->
+  <name>ODL :: org.opendaylight.alto :: ${project.artifactId}</name>
+  <packaging>bundle</packaging>
+
+  <dependencies>
+    <dependency>
+      <groupId>${project.groupId}</groupId>
+      <artifactId>multicost-api</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+
+    <!-- Testing Dependencies -->
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <scope>test</scope>
+    </dependency>
+
+    <dependency>
+      <groupId>org.mockito</groupId>
+      <artifactId>mockito-core</artifactId>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+</project>
diff --git a/alto-extensions/multicost/impl/src/main/java/org/opendaylight/alto/multicost/impl/MulticostProvider.java b/alto-extensions/multicost/impl/src/main/java/org/opendaylight/alto/multicost/impl/MulticostProvider.java
new file mode 100644 (file)
index 0000000..800f954
--- /dev/null
@@ -0,0 +1,37 @@
+/*
+ * Copyright © 2017 Yale University 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.alto.multicost.impl;
+
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class MulticostProvider {
+
+    private static final Logger LOG = LoggerFactory.getLogger(MulticostProvider.class);
+
+    private final DataBroker dataBroker;
+
+    public MulticostProvider(final DataBroker dataBroker) {
+        this.dataBroker = dataBroker;
+    }
+
+    /**
+     * Method called when the blueprint container is created.
+     */
+    public void init() {
+        LOG.info("MulticostProvider Session Initiated");
+    }
+
+    /**
+     * Method called when the blueprint container is destroyed.
+     */
+    public void close() {
+        LOG.info("MulticostProvider Closed");
+    }
+}
diff --git a/alto-extensions/multicost/impl/src/main/resources/org/opendaylight/blueprint/impl-blueprint.xml b/alto-extensions/multicost/impl/src/main/resources/org/opendaylight/blueprint/impl-blueprint.xml
new file mode 100644 (file)
index 0000000..8d3e0e9
--- /dev/null
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- vi: set et smarttab sw=4 tabstop=4: -->
+<!--
+Copyright © 2017 Yale University 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
+-->
+<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
+  xmlns:odl="http://opendaylight.org/xmlns/blueprint/v1.0.0"
+  odl:use-default-for-reference-types="true">
+
+  <reference id="dataBroker"
+    interface="org.opendaylight.controller.md.sal.binding.api.DataBroker"
+    odl:type="default" />
+
+  <bean id="provider"
+    class="org.opendaylight.alto.multicost.impl.MulticostProvider"
+    init-method="init" destroy-method="close">
+    <argument ref="dataBroker" />
+  </bean>
+
+</blueprint>
diff --git a/alto-extensions/multicost/pom.xml b/alto-extensions/multicost/pom.xml
new file mode 100644 (file)
index 0000000..3130895
--- /dev/null
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright © 2017 Yale University 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 INTERNAL
+-->
+<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.8.0-SNAPSHOT</version>
+    <relativePath/>
+  </parent>
+
+  <groupId>org.opendaylight.alto</groupId>
+  <artifactId>multicost-aggregator</artifactId>
+  <version>0.1.0-SNAPSHOT</version>
+  <name>alto-multicost</name> <!-- DO NOT CHANGE - Used by Sonar to set project name -->
+  <packaging>pom</packaging>
+
+  <modules>
+    <module>api</module>
+    <module>impl</module>
+  </modules>
+
+  <!-- DO NOT install or deploy the repo root pom as it's only needed to initiate a build -->
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-deploy-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-install-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+  <profiles>
+    <profile>
+      <!--
+          This profile is to ensure we only build javadocs reports
+          when we plan to deploy Maven site for our project.
+      -->
+      <id>maven-site</id>
+      <activation>
+        <file>
+          <exists>${user.dir}/deploy-site.xml</exists>
+        </file>
+      </activation>
+
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-javadoc-plugin</artifactId>
+            <inherited>false</inherited>
+            <executions>
+              <execution>
+                <id>aggregate</id>
+                <goals>
+                  <goal>aggregate</goal>
+                </goals>
+                <phase>package</phase>
+              </execution>
+            </executions>
+          </plugin>
+          <plugin>
+            <artifactId>maven-checkstyle-plugin</artifactId>
+            <configuration>
+              <failsOnError>true</failsOnError>
+            </configuration>
+          </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}/</url>
+
+  <distributionManagement>
+    <site>
+      <id>opendaylight-site</id>
+      <url>${nexus.site.url}/</url>
+    </site>
+  </distributionManagement>
+</project>
index 8e5460209eec20655712841e2471ed6421283e68..90e2064b90cfbfaab8decc8bca6396728d81f6c9 100644 (file)
@@ -26,6 +26,9 @@ and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
 
   <modules>
     <module>simple-pce</module>
+    <module>incremental-update</module>
+    <module>multicost</module>
+    <module>rsade</module>
   </modules>
 
   <!-- DO NOT install or deploy the repo root pom as it's only needed to initiate a build -->
diff --git a/alto-extensions/rsade/api/pom.xml b/alto-extensions/rsade/api/pom.xml
new file mode 100644 (file)
index 0000000..58c66b7
--- /dev/null
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright © 2017 Yale University 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.mdsal</groupId>
+    <artifactId>binding-parent</artifactId>
+    <version>0.10.0-SNAPSHOT</version>
+    <relativePath/>
+  </parent>
+
+  <groupId>org.opendaylight.alto</groupId>
+  <artifactId>rsade-api</artifactId>
+  <version>0.4.0-SNAPSHOT</version>
+  <!-- <name> formatting is used by autorelease to parse and notify projects on
+       build failure. Please do not modify this unless you have a good reason. -->
+  <name>ODL :: org.opendaylight.alto :: ${project.artifactId}</name>
+  <packaging>bundle</packaging>
+</project>
diff --git a/alto-extensions/rsade/api/src/main/yang/routingstate-abstraction.yang b/alto-extensions/rsade/api/src/main/yang/routingstate-abstraction.yang
new file mode 100644 (file)
index 0000000..07be256
--- /dev/null
@@ -0,0 +1,30 @@
+module alto-rsade {
+    yang-version 1;
+    namespace "urn:opendaylight:alto:rsade";
+    prefix "alto-rsade";
+
+    revision "2017-03-02" {
+        description "Initial revision of routingstate-abstraction model";
+    }
+
+    description
+        "RSADE is short for routing state abstraction based on declarative \
+        equivalence. It is a draft to provide virtual network information \
+        to ALTO clients.";
+
+    list rsade-data {
+        key request-id;
+
+        leaf request-id {
+            type string;
+        }
+
+        leaf request-body {
+            type string;
+        }
+
+        leaf response-body {
+            type string;
+        }
+    }
+}
diff --git a/alto-extensions/rsade/impl/pom.xml b/alto-extensions/rsade/impl/pom.xml
new file mode 100644 (file)
index 0000000..901e4d2
--- /dev/null
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- vi: set et smarttab sw=4 tabstop=4: -->
+<!--
+Copyright © 2017 Yale University 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.controller</groupId>
+    <artifactId>config-parent</artifactId>
+    <version>0.6.0-SNAPSHOT</version>
+    <relativePath/>
+  </parent>
+
+  <groupId>org.opendaylight.alto</groupId>
+  <artifactId>rsade-impl</artifactId>
+  <version>0.4.0-SNAPSHOT</version>
+  <!-- <name> formatting is used by autorelease to parse and notify projects on
+       build failure. Please do not modify this unless you have a good reason. -->
+  <name>ODL :: org.opendaylight.alto :: ${project.artifactId}</name>
+  <packaging>bundle</packaging>
+
+  <dependencies>
+    <dependency>
+      <groupId>${project.groupId}</groupId>
+      <artifactId>rsade-api</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+
+    <!-- Testing Dependencies -->
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <scope>test</scope>
+    </dependency>
+
+    <dependency>
+      <groupId>org.mockito</groupId>
+      <artifactId>mockito-core</artifactId>
+      <scope>test</scope>
+    </dependency>
+  </dependencies>
+</project>
diff --git a/alto-extensions/rsade/impl/src/main/java/org/opendaylight/alto/rsade/impl/RoutingStateAbstractionProvider.java b/alto-extensions/rsade/impl/src/main/java/org/opendaylight/alto/rsade/impl/RoutingStateAbstractionProvider.java
new file mode 100644 (file)
index 0000000..cee8ce8
--- /dev/null
@@ -0,0 +1,37 @@
+/*
+ * Copyright © 2017 Yale University 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.alto.rsade.impl;
+
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class RoutingStateAbstractionProvider {
+
+    private static final Logger LOG = LoggerFactory.getLogger(RoutingStateAbstractionProvider.class);
+
+    private final DataBroker dataBroker;
+
+    public RoutingStateAbstractionProvider(final DataBroker dataBroker) {
+        this.dataBroker = dataBroker;
+    }
+
+    /**
+     * Method called when the blueprint container is created.
+     */
+    public void init() {
+        LOG.info("RoutingStateAbstractionProvider Session Initiated");
+    }
+
+    /**
+     * Method called when the blueprint container is destroyed.
+     */
+    public void close() {
+        LOG.info("RoutingStateAbstractionProvider Closed");
+    }
+}
diff --git a/alto-extensions/rsade/impl/src/main/resources/org/opendaylight/blueprint/impl-blueprint.xml b/alto-extensions/rsade/impl/src/main/resources/org/opendaylight/blueprint/impl-blueprint.xml
new file mode 100644 (file)
index 0000000..42d2ebe
--- /dev/null
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- vi: set et smarttab sw=4 tabstop=4: -->
+<!--
+Copyright © 2017 Yale University 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
+-->
+<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
+  xmlns:odl="http://opendaylight.org/xmlns/blueprint/v1.0.0"
+  odl:use-default-for-reference-types="true">
+
+  <reference id="dataBroker"
+    interface="org.opendaylight.controller.md.sal.binding.api.DataBroker"
+    odl:type="default" />
+
+  <bean id="provider"
+    class="org.opendaylight.alto.rsade.impl.RoutingStateAbstractionProvider"
+    init-method="init" destroy-method="close">
+    <argument ref="dataBroker" />
+  </bean>
+
+</blueprint>
diff --git a/alto-extensions/rsade/pom.xml b/alto-extensions/rsade/pom.xml
new file mode 100644 (file)
index 0000000..491ce69
--- /dev/null
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright © 2017 Yale University 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 INTERNAL
+-->
+<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.8.0-SNAPSHOT</version>
+    <relativePath/>
+  </parent>
+
+  <groupId>org.opendaylight.alto</groupId>
+  <artifactId>routingstate-abstraction-aggregator</artifactId>
+  <version>0.4.0-SNAPSHOT</version>
+  <name>routingstate-abstraction</name> <!-- DO NOT CHANGE - Used by Sonar to set project name -->
+  <packaging>pom</packaging>
+
+  <modules>
+    <module>api</module>
+    <module>impl</module>
+  </modules>
+
+  <!-- DO NOT install or deploy the repo root pom as it's only needed to initiate a build -->
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-deploy-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-install-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+  <profiles>
+    <profile>
+      <!--
+          This profile is to ensure we only build javadocs reports
+          when we plan to deploy Maven site for our project.
+      -->
+      <id>maven-site</id>
+      <activation>
+        <file>
+          <exists>${user.dir}/deploy-site.xml</exists>
+        </file>
+      </activation>
+
+      <build>
+        <plugins>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-javadoc-plugin</artifactId>
+            <inherited>false</inherited>
+            <executions>
+              <execution>
+                <id>aggregate</id>
+                <goals>
+                  <goal>aggregate</goal>
+                </goals>
+                <phase>package</phase>
+              </execution>
+            </executions>
+          </plugin>
+          <plugin>
+            <artifactId>maven-checkstyle-plugin</artifactId>
+            <configuration>
+              <failsOnError>true</failsOnError>
+            </configuration>
+          </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}/</url>
+
+  <distributionManagement>
+    <site>
+      <id>opendaylight-site</id>
+      <url>${nexus.site.url}/</url>
+    </site>
+  </distributionManagement>
+</project>
index d000baa274f389d1fe4d18dfa5e5acc885a70e85..e72b9c64ab545ea930a21bbd372846cf817c1152 100644 (file)
@@ -50,10 +50,4 @@ and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
     </plugins>
   </build>
 
-  <scm>
-    <connection>scm:git:ssh://git.opendaylight.org:29418/network-tracker.git</connection>
-    <developerConnection>scm:git:ssh://git.opendaylight.org:29418/network-tracker.git</developerConnection>
-    <tag>HEAD</tag>
-    <url>https://wiki.opendaylight.org/view/network-tracker:Main</url>
-  </scm>
 </project>
index fcdfe6df868c778b6ed794d720ac6ccdf7321fea..87cafb8ad142b0c1d9357b5f061a4a0b0e294087 100644 (file)
@@ -80,10 +80,4 @@ and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
     </plugins>
   </build>
 
-  <scm>
-    <connection>scm:git:ssh://git.opendaylight.org:29418/alto-spce.git</connection>
-    <developerConnection>scm:git:ssh://git.opendaylight.org:29418/alto-spce.git</developerConnection>
-    <tag>HEAD</tag>
-    <url>https://wiki.opendaylight.org/view/alto-spce:Main</url>
-  </scm>
 </project>
index b2147ac0f659e5d04a7269af971768858bfbabab..ef0c8acb4855d799028f9a29cccb06c3eaa55ea1 100644 (file)
@@ -351,5 +351,41 @@ and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
       <artifactId>alto-auto-maps-api</artifactId>
       <version>${project.version}</version>
     </dependency>
+
+    <dependency>
+      <groupId>org.opendaylight.alto</groupId>
+      <artifactId>multicost-api</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.opendaylight.alto</groupId>
+      <artifactId>multicost-impl</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.opendaylight.alto</groupId>
+      <artifactId>incremental-update-api</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.opendaylight.alto</groupId>
+      <artifactId>incremental-update-impl</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.opendaylight.alto</groupId>
+      <artifactId>rsade-api</artifactId>
+      <version>${project.version}</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.opendaylight.alto</groupId>
+      <artifactId>rsade-impl</artifactId>
+      <version>${project.version}</version>
+    </dependency>
   </dependencies>
 </project>
index b53e7face6f6581210611389819ec4f85c87a02f..a5bd60aaab21139173a6f4422870b0706cd6e8d3 100644 (file)
@@ -49,6 +49,13 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
     <feature version='${project.version}'>odl-alto-nonstandard-service-models</feature>
     <feature version='${project.version}'>odl-alto-nonstandard-northbound-route</feature>
     <feature version='${project.version}'>odl-alto-spce</feature>
+
+    <bundle>mvn:org.opendaylight.alto/multicost-api/${project.version}</bundle>
+    <bundle>mvn:org.opendaylight.alto/multicost-impl/${project.version}</bundle>
+    <bundle>mvn:org.opendaylight.alto/incremental-update-api/${project.version}</bundle>
+    <bundle>mvn:org.opendaylight.alto/incremental-update-impl/${project.version}</bundle>
+    <bundle>mvn:org.opendaylight.alto/rsade-api/${project.version}</bundle>
+    <bundle>mvn:org.opendaylight.alto/rsade-impl/${project.version}</bundle>
   </feature>
 
   <feature name='odl-alto-spce' version='${project.version}'