From a95193c5fade947c58c1efd239abec59d35e14ef Mon Sep 17 00:00:00 2001 From: Ray Milkey Date: Thu, 10 Aug 2017 15:35:36 -0700 Subject: [PATCH] ONOS-6903 Move EVPN from incubator to apps Change-Id: Id84c59e28f2591535b0726afbc1a2fa3caf07db5 --- apps/dhcprelay/pom.xml | 7 -- apps/evpn-route-service/BUCK | 11 ++++ apps/evpn-route-service/api/BUCK | 13 ++++ apps/evpn-route-service/api/pom.xml | 61 +++++++++++++++++ .../evpnrouteservice}/EvpnInstance.java | 2 +- .../evpnrouteservice}/EvpnInstanceName.java | 2 +- .../EvpnInstanceNextHop.java | 6 +- .../evpnrouteservice}/EvpnInstancePrefix.java | 6 +- .../evpnrouteservice}/EvpnInstanceRoute.java | 8 +-- .../EvpnInternalRouteEvent.java | 2 +- .../evpnrouteservice}/EvpnNextHop.java | 6 +- .../evpnrouteservice}/EvpnPrefix.java | 6 +- .../evpnrouteservice}/EvpnRoute.java | 8 +-- .../EvpnRouteAdminService.java | 2 +- .../evpnrouteservice}/EvpnRouteEvent.java | 8 +-- .../evpnrouteservice}/EvpnRouteListener.java | 2 +- .../evpnrouteservice}/EvpnRouteService.java | 6 +- .../evpnrouteservice}/EvpnRouteSet.java | 6 +- .../evpnrouteservice}/EvpnRouteStore.java | 8 +-- .../EvpnRouteStoreDelegate.java | 2 +- .../evpnrouteservice}/EvpnRouteTableId.java | 2 +- .../evpnrouteservice}/EvpnTable.java | 6 +- .../onosproject/evpnrouteservice}/Label.java | 2 +- .../evpnrouteservice}/RouteDistinguisher.java | 2 +- .../evpnrouteservice}/VpnRouteTarget.java | 2 +- .../evpnrouteservice}/package-info.java | 2 +- apps/evpn-route-service/app/BUCK | 16 +++++ apps/evpn-route-service/app/pom.xml | 66 +++++++++++++++++++ .../impl/EvpnListenerQueue.java | 4 +- .../impl/EvpnRouteManager.java | 44 +++++++------ .../evpnrouteservice}/impl/package-info.java | 2 +- .../store}/DistributedEvpnRouteStore.java | 16 ++--- .../store}/EmptyEvpnRouteTable.java | 12 ++-- .../store}/EvpnRouteTable.java | 22 +++---- .../evpnrouteservice/store}/package-info.java | 2 +- apps/evpn-route-service/pom.xml | 38 +++++++++++ apps/evpnopenflow/BUCK | 4 +- apps/evpnopenflow/pom.xml | 5 ++ .../evpnopenflow/manager/EvpnService.java | 2 +- .../manager/impl/EvpnManager.java | 33 +++++----- .../evpnopenflow/rsc/DefaultVpnAfConfig.java | 2 +- .../evpnopenflow/rsc/DefaultVpnInstance.java | 6 +- .../evpnopenflow/rsc/VpnAfConfig.java | 2 +- .../evpnopenflow/rsc/VpnInstance.java | 6 +- .../rsc/cli/EvpnPrivateRouteListCommand.java | 2 +- .../rsc/cli/EvpnPublicRouteListCommand.java | 8 +-- .../rsc/vpnafconfig/VpnAfConfigService.java | 2 +- .../vpnafconfig/impl/VpnAfConfigManager.java | 2 +- .../rsc/vpninstance/VpnInstanceService.java | 2 +- .../vpninstance/impl/VpnInstanceManager.java | 6 +- apps/pom.xml | 1 + .../incubator/store/impl/package-info.java | 20 ------ modules.defs | 1 + providers/bgp/BUCK | 1 + providers/bgp/route/BUCK | 17 ++--- providers/bgp/route/pom.xml | 5 ++ .../bgp/route/impl/BgpRouteProvider.java | 14 ++-- 57 files changed, 373 insertions(+), 178 deletions(-) create mode 100644 apps/evpn-route-service/BUCK create mode 100644 apps/evpn-route-service/api/BUCK create mode 100644 apps/evpn-route-service/api/pom.xml rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnInstance.java (98%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnInstanceName.java (97%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnInstanceNextHop.java (98%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnInstancePrefix.java (98%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnInstanceRoute.java (99%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnInternalRouteEvent.java (96%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnNextHop.java (98%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnPrefix.java (98%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnRoute.java (99%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnRouteAdminService.java (96%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnRouteEvent.java (99%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnRouteListener.java (94%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnRouteService.java (95%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnRouteSet.java (98%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnRouteStore.java (97%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnRouteStoreDelegate.java (94%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnRouteTableId.java (97%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/EvpnTable.java (97%) mode change 100644 => 100755 rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/Label.java (97%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/RouteDistinguisher.java (98%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/VpnRouteTarget.java (97%) rename {incubator/api/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice}/package-info.java (93%) create mode 100644 apps/evpn-route-service/app/BUCK create mode 100644 apps/evpn-route-service/app/pom.xml rename {incubator/net/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice}/impl/EvpnListenerQueue.java (90%) rename {incubator/net/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice}/impl/EvpnRouteManager.java (92%) rename {incubator/net/src/main/java/org/onosproject/incubator/net/routing => apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice}/impl/package-info.java (92%) rename {incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl => apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store}/DistributedEvpnRouteStore.java (93%) rename {incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl => apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store}/EmptyEvpnRouteTable.java (84%) rename {incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl => apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store}/EvpnRouteTable.java (92%) rename {incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl => apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store}/package-info.java (92%) create mode 100644 apps/evpn-route-service/pom.xml delete mode 100644 incubator/store/src/main/java/org/onosproject/incubator/store/impl/package-info.java diff --git a/apps/dhcprelay/pom.xml b/apps/dhcprelay/pom.xml index 782e1b0fac..5e9d68e3b1 100644 --- a/apps/dhcprelay/pom.xml +++ b/apps/dhcprelay/pom.xml @@ -80,13 +80,6 @@ tests - - org.onosproject - onos-incubator-api - ${project.version} - tests - - org.apache.felix org.apache.felix.scr.annotations diff --git a/apps/evpn-route-service/BUCK b/apps/evpn-route-service/BUCK new file mode 100644 index 0000000000..5c8b0374ab --- /dev/null +++ b/apps/evpn-route-service/BUCK @@ -0,0 +1,11 @@ +BUNDLES = [ + '//apps/evpn-route-service/api:onos-apps-evpn-route-service-api', + '//apps/evpn-route-service/app:onos-apps-evpn-route-service-app', +] + +onos_app ( + title = 'EVPN Routing App', + category = 'Utility', + url = 'http://onosproject.org', + included_bundles = BUNDLES, +) diff --git a/apps/evpn-route-service/api/BUCK b/apps/evpn-route-service/api/BUCK new file mode 100644 index 0000000000..68eeacf58f --- /dev/null +++ b/apps/evpn-route-service/api/BUCK @@ -0,0 +1,13 @@ +COMPILE_DEPS = [ + '//lib:CORE_DEPS', +] + +TEST_DEPS = [ + '//lib:TEST', + '//core/api:onos-api-tests', +] + +osgi_jar_with_tests ( + deps = COMPILE_DEPS, + test_deps = TEST_DEPS, +) diff --git a/apps/evpn-route-service/api/pom.xml b/apps/evpn-route-service/api/pom.xml new file mode 100644 index 0000000000..25113e7c41 --- /dev/null +++ b/apps/evpn-route-service/api/pom.xml @@ -0,0 +1,61 @@ + + + + 4.0.0 + + + onos-app-evpn-route-service + org.onosproject + 1.11.0-SNAPSHOT + + + onos-app-evpn-route-service-api + bundle + + http://onosproject.org + + EVPN Routing Application API + + + + org.onosproject + onlab-junit + test + + + org.onosproject + onos-core-serializers + ${project.version} + + + + org.onosproject + onos-incubator-api + + + org.onosproject + onos-api + tests + test + + + + + + diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInstance.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInstance.java similarity index 98% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInstance.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInstance.java index 4201909aa6..5288db7dad 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInstance.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInstance.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; +package org.onosproject.evpnrouteservice; import java.util.List; import java.util.Objects; diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInstanceName.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInstanceName.java similarity index 97% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInstanceName.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInstanceName.java index ee63cf4409..f1ea22ac16 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInstanceName.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInstanceName.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; +package org.onosproject.evpnrouteservice; import java.util.Objects; diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInstanceNextHop.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInstanceNextHop.java similarity index 98% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInstanceNextHop.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInstanceNextHop.java index 4acd2b3525..49ad2c5408 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInstanceNextHop.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInstanceNextHop.java @@ -14,12 +14,12 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; - -import org.onlab.packet.IpAddress; +package org.onosproject.evpnrouteservice; import java.util.Objects; +import org.onlab.packet.IpAddress; + import static com.google.common.base.MoreObjects.toStringHelper; /** diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInstancePrefix.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInstancePrefix.java similarity index 98% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInstancePrefix.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInstancePrefix.java index 45c4c04933..2f30538917 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInstancePrefix.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInstancePrefix.java @@ -14,13 +14,13 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; +package org.onosproject.evpnrouteservice; + +import java.util.Objects; import org.onlab.packet.IpPrefix; import org.onlab.packet.MacAddress; -import java.util.Objects; - import static com.google.common.base.MoreObjects.toStringHelper; import static com.google.common.base.Preconditions.checkNotNull; diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInstanceRoute.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInstanceRoute.java similarity index 99% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInstanceRoute.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInstanceRoute.java index b7c2b5cc6a..3e98531619 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInstanceRoute.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInstanceRoute.java @@ -14,14 +14,14 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; - -import org.onlab.packet.IpAddress; -import org.onlab.packet.IpPrefix; +package org.onosproject.evpnrouteservice; import java.util.List; import java.util.Objects; +import org.onlab.packet.IpAddress; +import org.onlab.packet.IpPrefix; + import static com.google.common.base.MoreObjects.toStringHelper; import static com.google.common.base.Preconditions.checkNotNull; diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInternalRouteEvent.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInternalRouteEvent.java similarity index 96% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInternalRouteEvent.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInternalRouteEvent.java index 046927b63d..7a71875ed3 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnInternalRouteEvent.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnInternalRouteEvent.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; +package org.onosproject.evpnrouteservice; import org.onosproject.event.AbstractEvent; diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnNextHop.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnNextHop.java similarity index 98% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnNextHop.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnNextHop.java index 6aacabb520..ac1e06bc99 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnNextHop.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnNextHop.java @@ -14,13 +14,13 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; - -import org.onlab.packet.IpAddress; +package org.onosproject.evpnrouteservice; import java.util.List; import java.util.Objects; +import org.onlab.packet.IpAddress; + import static com.google.common.base.MoreObjects.toStringHelper; /** diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnPrefix.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnPrefix.java similarity index 98% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnPrefix.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnPrefix.java index acea7d9fc9..3f70ef5722 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnPrefix.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnPrefix.java @@ -14,13 +14,13 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; +package org.onosproject.evpnrouteservice; + +import java.util.Objects; import org.onlab.packet.IpPrefix; import org.onlab.packet.MacAddress; -import java.util.Objects; - import static com.google.common.base.MoreObjects.toStringHelper; import static com.google.common.base.Preconditions.checkNotNull; diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRoute.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRoute.java similarity index 99% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRoute.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRoute.java index 555634ed60..9449093dfe 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRoute.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRoute.java @@ -14,15 +14,15 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; +package org.onosproject.evpnrouteservice; + +import java.util.List; +import java.util.Objects; import org.onlab.packet.IpAddress; import org.onlab.packet.IpPrefix; import org.onlab.packet.MacAddress; -import java.util.List; -import java.util.Objects; - import static com.google.common.base.MoreObjects.toStringHelper; import static com.google.common.base.Preconditions.checkNotNull; diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteAdminService.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteAdminService.java similarity index 96% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteAdminService.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteAdminService.java index 3a4ea8f30a..cc9e20010d 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteAdminService.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteAdminService.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; +package org.onosproject.evpnrouteservice; import java.util.Collection; diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteEvent.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteEvent.java similarity index 99% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteEvent.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteEvent.java index 2d2db40e5d..ae3d93ab83 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteEvent.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteEvent.java @@ -14,15 +14,15 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; - -import org.joda.time.LocalDateTime; -import org.onosproject.event.AbstractEvent; +package org.onosproject.evpnrouteservice; import java.util.Collection; import java.util.Collections; import java.util.Objects; +import org.joda.time.LocalDateTime; +import org.onosproject.event.AbstractEvent; + import static com.google.common.base.MoreObjects.toStringHelper; /** diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteListener.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteListener.java similarity index 94% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteListener.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteListener.java index 02779c0656..32a35c2fd4 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteListener.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteListener.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; +package org.onosproject.evpnrouteservice; import org.onosproject.event.EventListener; diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteService.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteService.java similarity index 95% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteService.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteService.java index 20e1fa7d86..ca9c031254 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteService.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteService.java @@ -14,12 +14,12 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; - -import org.onosproject.event.ListenerService; +package org.onosproject.evpnrouteservice; import java.util.Collection; +import org.onosproject.event.ListenerService; + /** * EVPN route service. */ diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteSet.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteSet.java similarity index 98% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteSet.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteSet.java index adc8c1c253..707df2254b 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteSet.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteSet.java @@ -14,13 +14,13 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; - -import com.google.common.collect.ImmutableSet; +package org.onosproject.evpnrouteservice; import java.util.Objects; import java.util.Set; +import com.google.common.collect.ImmutableSet; + import static com.google.common.base.Preconditions.checkNotNull; /** diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteStore.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteStore.java similarity index 97% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteStore.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteStore.java index 5c6e2ef83f..c06704f662 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteStore.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteStore.java @@ -14,14 +14,14 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; - -import org.onlab.packet.IpAddress; -import org.onosproject.store.Store; +package org.onosproject.evpnrouteservice; import java.util.Collection; import java.util.Set; +import org.onlab.packet.IpAddress; +import org.onosproject.store.Store; + /** * EVPN route store. */ diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteStoreDelegate.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteStoreDelegate.java similarity index 94% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteStoreDelegate.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteStoreDelegate.java index 55818e10a7..d714adcc37 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteStoreDelegate.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteStoreDelegate.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; +package org.onosproject.evpnrouteservice; import org.onosproject.store.StoreDelegate; diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteTableId.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteTableId.java similarity index 97% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteTableId.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteTableId.java index 44af3cbf14..846a8d1b8b 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnRouteTableId.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnRouteTableId.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; +package org.onosproject.evpnrouteservice; import java.util.Objects; diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnTable.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnTable.java old mode 100644 new mode 100755 similarity index 97% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnTable.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnTable.java index 1b8fe780e4..0b3379fce6 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/EvpnTable.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/EvpnTable.java @@ -14,12 +14,12 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; - -import org.onlab.packet.IpAddress; +package org.onosproject.evpnrouteservice; import java.util.Collection; +import org.onlab.packet.IpAddress; + /** * Represents a route table that stores routes. */ diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/Label.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/Label.java similarity index 97% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/Label.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/Label.java index 0ce19afa63..8d90611ff5 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/Label.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/Label.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; +package org.onosproject.evpnrouteservice; import java.util.Objects; diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/RouteDistinguisher.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/RouteDistinguisher.java similarity index 98% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/RouteDistinguisher.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/RouteDistinguisher.java index c0e5b1026f..ca217b6495 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/RouteDistinguisher.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/RouteDistinguisher.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; +package org.onosproject.evpnrouteservice; import java.util.Objects; diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/VpnRouteTarget.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/VpnRouteTarget.java similarity index 97% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/VpnRouteTarget.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/VpnRouteTarget.java index d7aee60ce2..51a9a59006 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/VpnRouteTarget.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/VpnRouteTarget.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing; +package org.onosproject.evpnrouteservice; import java.util.Objects; diff --git a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/package-info.java b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/package-info.java similarity index 93% rename from incubator/api/src/main/java/org/onosproject/incubator/net/routing/package-info.java rename to apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/package-info.java index 3d3f01cb74..3514c80097 100644 --- a/incubator/api/src/main/java/org/onosproject/incubator/net/routing/package-info.java +++ b/apps/evpn-route-service/api/src/main/java/org/onosproject/evpnrouteservice/package-info.java @@ -17,4 +17,4 @@ /** * Unicast routing service. */ -package org.onosproject.incubator.net.routing; +package org.onosproject.evpnrouteservice; diff --git a/apps/evpn-route-service/app/BUCK b/apps/evpn-route-service/app/BUCK new file mode 100644 index 0000000000..1231207080 --- /dev/null +++ b/apps/evpn-route-service/app/BUCK @@ -0,0 +1,16 @@ +COMPILE_DEPS = [ + '//lib:CORE_DEPS', + '//utils/misc:onlab-misc', + '//core/store/serializers:onos-core-serializers', + '//apps/evpn-route-service/api:onos-apps-evpn-route-service-api', +] + +TEST_DEPS = [ + '//lib:TEST', + '//core/api:onos-api-tests', +] + +osgi_jar_with_tests ( + deps = COMPILE_DEPS, + test_deps = TEST_DEPS, +) diff --git a/apps/evpn-route-service/app/pom.xml b/apps/evpn-route-service/app/pom.xml new file mode 100644 index 0000000000..780a9db7eb --- /dev/null +++ b/apps/evpn-route-service/app/pom.xml @@ -0,0 +1,66 @@ + + + + 4.0.0 + + + onos-app-evpn-route-service + org.onosproject + 1.11.0-SNAPSHOT + + + onos-app-evpn-route-service-app + bundle + + http://onosproject.org + + EVPN Routing Application Implementation + + + + org.onosproject + onlab-junit + test + + + org.onosproject + onos-core-serializers + ${project.version} + + + + org.onosproject + onos-incubator-api + + + org.onosproject + onos-api + tests + test + + + org.onosproject + onos-app-evpn-route-service-api + ${project.version} + + + + + + diff --git a/incubator/net/src/main/java/org/onosproject/incubator/net/routing/impl/EvpnListenerQueue.java b/apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/impl/EvpnListenerQueue.java similarity index 90% rename from incubator/net/src/main/java/org/onosproject/incubator/net/routing/impl/EvpnListenerQueue.java rename to apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/impl/EvpnListenerQueue.java index 77a57ca603..ce3d01286a 100644 --- a/incubator/net/src/main/java/org/onosproject/incubator/net/routing/impl/EvpnListenerQueue.java +++ b/apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/impl/EvpnListenerQueue.java @@ -14,9 +14,9 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing.impl; +package org.onosproject.evpnrouteservice.impl; -import org.onosproject.incubator.net.routing.EvpnRouteEvent; +import org.onosproject.evpnrouteservice.EvpnRouteEvent; /** * Queues updates for a route listener to ensure they are received in the diff --git a/incubator/net/src/main/java/org/onosproject/incubator/net/routing/impl/EvpnRouteManager.java b/apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/impl/EvpnRouteManager.java similarity index 92% rename from incubator/net/src/main/java/org/onosproject/incubator/net/routing/impl/EvpnRouteManager.java rename to apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/impl/EvpnRouteManager.java index 675735361e..19e63118d8 100644 --- a/incubator/net/src/main/java/org/onosproject/incubator/net/routing/impl/EvpnRouteManager.java +++ b/apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/impl/EvpnRouteManager.java @@ -14,28 +14,8 @@ * limitations under the License. */ -package org.onosproject.incubator.net.routing.impl; +package org.onosproject.evpnrouteservice.impl; -import org.apache.felix.scr.annotations.Activate; -import org.apache.felix.scr.annotations.Component; -import org.apache.felix.scr.annotations.Deactivate; -import org.apache.felix.scr.annotations.Reference; -import org.apache.felix.scr.annotations.ReferenceCardinality; -import org.apache.felix.scr.annotations.Service; -import org.onosproject.incubator.net.routing.EvpnInternalRouteEvent; -import org.onosproject.incubator.net.routing.EvpnRoute; -import org.onosproject.incubator.net.routing.EvpnRouteAdminService; -import org.onosproject.incubator.net.routing.EvpnRouteEvent; -import org.onosproject.incubator.net.routing.EvpnRouteListener; -import org.onosproject.incubator.net.routing.EvpnRouteService; -import org.onosproject.incubator.net.routing.EvpnRouteSet; -import org.onosproject.incubator.net.routing.EvpnRouteStore; -import org.onosproject.incubator.net.routing.EvpnRouteStoreDelegate; -import org.onosproject.incubator.net.routing.EvpnRouteTableId; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import javax.annotation.concurrent.GuardedBy; import java.util.Collection; import java.util.HashMap; import java.util.Map; @@ -44,6 +24,28 @@ import java.util.concurrent.ExecutorService; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.ThreadFactory; +import javax.annotation.concurrent.GuardedBy; + +import org.apache.felix.scr.annotations.Activate; +import org.apache.felix.scr.annotations.Component; +import org.apache.felix.scr.annotations.Deactivate; +import org.apache.felix.scr.annotations.Reference; +import org.apache.felix.scr.annotations.ReferenceCardinality; +import org.apache.felix.scr.annotations.Service; + +import org.onosproject.evpnrouteservice.EvpnInternalRouteEvent; +import org.onosproject.evpnrouteservice.EvpnRoute; +import org.onosproject.evpnrouteservice.EvpnRouteAdminService; +import org.onosproject.evpnrouteservice.EvpnRouteEvent; +import org.onosproject.evpnrouteservice.EvpnRouteListener; +import org.onosproject.evpnrouteservice.EvpnRouteService; +import org.onosproject.evpnrouteservice.EvpnRouteSet; +import org.onosproject.evpnrouteservice.EvpnRouteStore; +import org.onosproject.evpnrouteservice.EvpnRouteStoreDelegate; +import org.onosproject.evpnrouteservice.EvpnRouteTableId; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import static java.util.concurrent.Executors.newSingleThreadExecutor; import static org.onlab.util.Tools.groupedThreads; diff --git a/incubator/net/src/main/java/org/onosproject/incubator/net/routing/impl/package-info.java b/apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/impl/package-info.java similarity index 92% rename from incubator/net/src/main/java/org/onosproject/incubator/net/routing/impl/package-info.java rename to apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/impl/package-info.java index d352803fec..80892c930e 100644 --- a/incubator/net/src/main/java/org/onosproject/incubator/net/routing/impl/package-info.java +++ b/apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/impl/package-info.java @@ -17,4 +17,4 @@ /** * Implementation of route service. */ -package org.onosproject.incubator.net.routing.impl; +package org.onosproject.evpnrouteservice.impl; diff --git a/incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl/DistributedEvpnRouteStore.java b/apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store/DistributedEvpnRouteStore.java similarity index 93% rename from incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl/DistributedEvpnRouteStore.java rename to apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store/DistributedEvpnRouteStore.java index b4526e2bd3..de1dbd69da 100644 --- a/incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl/DistributedEvpnRouteStore.java +++ b/apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store/DistributedEvpnRouteStore.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.onosproject.incubator.store.routing.impl; +package org.onosproject.evpnrouteservice.store; import com.google.common.collect.ImmutableSet; import org.apache.felix.scr.annotations.Activate; @@ -25,13 +25,13 @@ import org.apache.felix.scr.annotations.ReferenceCardinality; import org.apache.felix.scr.annotations.Service; import org.onlab.packet.IpAddress; import org.onlab.util.KryoNamespace; -import org.onosproject.incubator.net.routing.EvpnInternalRouteEvent; -import org.onosproject.incubator.net.routing.EvpnRoute; -import org.onosproject.incubator.net.routing.EvpnRouteSet; -import org.onosproject.incubator.net.routing.EvpnRouteStore; -import org.onosproject.incubator.net.routing.EvpnRouteStoreDelegate; -import org.onosproject.incubator.net.routing.EvpnRouteTableId; -import org.onosproject.incubator.net.routing.EvpnTable; +import org.onosproject.evpnrouteservice.EvpnInternalRouteEvent; +import org.onosproject.evpnrouteservice.EvpnRoute; +import org.onosproject.evpnrouteservice.EvpnRouteSet; +import org.onosproject.evpnrouteservice.EvpnRouteStore; +import org.onosproject.evpnrouteservice.EvpnRouteStoreDelegate; +import org.onosproject.evpnrouteservice.EvpnRouteTableId; +import org.onosproject.evpnrouteservice.EvpnTable; import org.onosproject.store.AbstractStore; import org.onosproject.store.service.DistributedSet; import org.onosproject.store.service.Serializer; diff --git a/incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl/EmptyEvpnRouteTable.java b/apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store/EmptyEvpnRouteTable.java similarity index 84% rename from incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl/EmptyEvpnRouteTable.java rename to apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store/EmptyEvpnRouteTable.java index aa56d71b38..f49a1748ff 100644 --- a/incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl/EmptyEvpnRouteTable.java +++ b/apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store/EmptyEvpnRouteTable.java @@ -14,14 +14,14 @@ * limitations under the License. */ -package org.onosproject.incubator.store.routing.impl; +package org.onosproject.evpnrouteservice.store; import org.onlab.packet.IpAddress; -import org.onosproject.incubator.net.routing.EvpnPrefix; -import org.onosproject.incubator.net.routing.EvpnRoute; -import org.onosproject.incubator.net.routing.EvpnRouteSet; -import org.onosproject.incubator.net.routing.EvpnRouteTableId; -import org.onosproject.incubator.net.routing.EvpnTable; +import org.onosproject.evpnrouteservice.EvpnPrefix; +import org.onosproject.evpnrouteservice.EvpnRoute; +import org.onosproject.evpnrouteservice.EvpnRouteSet; +import org.onosproject.evpnrouteservice.EvpnRouteTableId; +import org.onosproject.evpnrouteservice.EvpnTable; import java.util.Collection; import java.util.Collections; diff --git a/incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl/EvpnRouteTable.java b/apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store/EvpnRouteTable.java similarity index 92% rename from incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl/EvpnRouteTable.java rename to apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store/EvpnRouteTable.java index 33c8f969b3..2c3e07be59 100644 --- a/incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl/EvpnRouteTable.java +++ b/apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store/EvpnRouteTable.java @@ -14,22 +14,22 @@ * limitations under the License. */ -package org.onosproject.incubator.store.routing.impl; +package org.onosproject.evpnrouteservice.store; import org.onlab.packet.IpAddress; import org.onlab.packet.IpPrefix; import org.onlab.packet.MacAddress; import org.onlab.util.KryoNamespace; -import org.onosproject.incubator.net.routing.EvpnInternalRouteEvent; -import org.onosproject.incubator.net.routing.EvpnPrefix; -import org.onosproject.incubator.net.routing.EvpnRoute; -import org.onosproject.incubator.net.routing.EvpnRouteSet; -import org.onosproject.incubator.net.routing.EvpnRouteStoreDelegate; -import org.onosproject.incubator.net.routing.EvpnRouteTableId; -import org.onosproject.incubator.net.routing.EvpnTable; -import org.onosproject.incubator.net.routing.Label; -import org.onosproject.incubator.net.routing.RouteDistinguisher; -import org.onosproject.incubator.net.routing.VpnRouteTarget; +import org.onosproject.evpnrouteservice.EvpnInternalRouteEvent; +import org.onosproject.evpnrouteservice.EvpnPrefix; +import org.onosproject.evpnrouteservice.EvpnRoute; +import org.onosproject.evpnrouteservice.EvpnRouteSet; +import org.onosproject.evpnrouteservice.EvpnRouteStoreDelegate; +import org.onosproject.evpnrouteservice.EvpnRouteTableId; +import org.onosproject.evpnrouteservice.EvpnTable; +import org.onosproject.evpnrouteservice.Label; +import org.onosproject.evpnrouteservice.RouteDistinguisher; +import org.onosproject.evpnrouteservice.VpnRouteTarget; import org.onosproject.store.serializers.KryoNamespaces; import org.onosproject.store.service.ConsistentMap; import org.onosproject.store.service.DistributedPrimitive; diff --git a/incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl/package-info.java b/apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store/package-info.java similarity index 92% rename from incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl/package-info.java rename to apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store/package-info.java index 38f82fb5a9..52e9d6ca7f 100644 --- a/incubator/store/src/main/java/org/onosproject/incubator/store/routing/impl/package-info.java +++ b/apps/evpn-route-service/app/src/main/java/org/onosproject/evpnrouteservice/store/package-info.java @@ -17,4 +17,4 @@ /** * Implementation of the unicast routing service. */ -package org.onosproject.incubator.store.routing.impl; +package org.onosproject.evpnrouteservice.store; diff --git a/apps/evpn-route-service/pom.xml b/apps/evpn-route-service/pom.xml new file mode 100644 index 0000000000..a008f5f3cb --- /dev/null +++ b/apps/evpn-route-service/pom.xml @@ -0,0 +1,38 @@ + + + + 4.0.0 + + + org.onosproject + onos-apps + 1.11.0-SNAPSHOT + + + onos-app-evpn-route-service + pom + + EVPN Routing Application + + + api + app + + + diff --git a/apps/evpnopenflow/BUCK b/apps/evpnopenflow/BUCK index a244b1f746..d3d92ee26f 100644 --- a/apps/evpnopenflow/BUCK +++ b/apps/evpnopenflow/BUCK @@ -7,6 +7,7 @@ COMPILE_DEPS = [ '//apps/gluon:onos-apps-gluon', '//apps/vtn/vtnrsc:onos-apps-vtn-vtnrsc', '//apps/route-service/api:onos-apps-route-service-api', + '//apps/evpn-route-service/api:onos-apps-evpn-route-service-api', ] TEST_DEPS = [ @@ -25,5 +26,6 @@ onos_app( url = 'http://onosproject.org', description = 'Ethernet VPN (EVPN) introduces a new model for Ethernet services delivery.' + 'It enables integrated Layer 2 service over Ethernet with multihoming.', - required_apps = [ 'org.onosproject.route-service' ], + required_apps = [ 'org.onosproject.route-service', 'org.onosproject.evpnrouteservice', + 'org.onosproject.gluon', 'org.onosproject.vtn' ], ) diff --git a/apps/evpnopenflow/pom.xml b/apps/evpnopenflow/pom.xml index 43cca85a0c..a1ec1b84e4 100644 --- a/apps/evpnopenflow/pom.xml +++ b/apps/evpnopenflow/pom.xml @@ -110,5 +110,10 @@ onos-apps-route-service-api ${project.version} + + org.onosproject + onos-app-evpn-route-service-api + ${project.version} + diff --git a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/manager/EvpnService.java b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/manager/EvpnService.java index 560b96e971..5a4145457a 100644 --- a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/manager/EvpnService.java +++ b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/manager/EvpnService.java @@ -17,7 +17,7 @@ package org.onosproject.evpnopenflow.manager; import org.onosproject.evpnopenflow.rsc.VpnPort; -import org.onosproject.incubator.net.routing.EvpnRoute; +import org.onosproject.evpnrouteservice.EvpnRoute; import org.onosproject.net.Host; /** diff --git a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/manager/impl/EvpnManager.java b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/manager/impl/EvpnManager.java index 7f7314b465..33d6924857 100644 --- a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/manager/impl/EvpnManager.java +++ b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/manager/impl/EvpnManager.java @@ -50,22 +50,22 @@ import org.onosproject.incubator.net.resource.label.LabelResource; import org.onosproject.incubator.net.resource.label.LabelResourceAdminService; import org.onosproject.incubator.net.resource.label.LabelResourceId; import org.onosproject.incubator.net.resource.label.LabelResourceService; -import org.onosproject.incubator.net.routing.EvpnInstanceName; -import org.onosproject.incubator.net.routing.EvpnInstanceNextHop; -import org.onosproject.incubator.net.routing.EvpnInstancePrefix; -import org.onosproject.incubator.net.routing.EvpnInstanceRoute; -import org.onosproject.incubator.net.routing.EvpnNextHop; -import org.onosproject.incubator.net.routing.EvpnRoute; -import org.onosproject.incubator.net.routing.EvpnRoute.Source; -import org.onosproject.incubator.net.routing.EvpnRouteAdminService; -import org.onosproject.incubator.net.routing.EvpnRouteEvent; -import org.onosproject.incubator.net.routing.EvpnRouteListener; -import org.onosproject.incubator.net.routing.EvpnRouteService; -import org.onosproject.incubator.net.routing.EvpnRouteSet; -import org.onosproject.incubator.net.routing.EvpnRouteStore; -import org.onosproject.incubator.net.routing.Label; -import org.onosproject.incubator.net.routing.RouteDistinguisher; -import org.onosproject.incubator.net.routing.VpnRouteTarget; +import org.onosproject.evpnrouteservice.EvpnInstanceName; +import org.onosproject.evpnrouteservice.EvpnInstanceNextHop; +import org.onosproject.evpnrouteservice.EvpnInstancePrefix; +import org.onosproject.evpnrouteservice.EvpnInstanceRoute; +import org.onosproject.evpnrouteservice.EvpnNextHop; +import org.onosproject.evpnrouteservice.EvpnRoute; +import org.onosproject.evpnrouteservice.EvpnRoute.Source; +import org.onosproject.evpnrouteservice.EvpnRouteAdminService; +import org.onosproject.evpnrouteservice.EvpnRouteEvent; +import org.onosproject.evpnrouteservice.EvpnRouteListener; +import org.onosproject.evpnrouteservice.EvpnRouteService; +import org.onosproject.evpnrouteservice.EvpnRouteSet; +import org.onosproject.evpnrouteservice.EvpnRouteStore; +import org.onosproject.evpnrouteservice.Label; +import org.onosproject.evpnrouteservice.RouteDistinguisher; +import org.onosproject.evpnrouteservice.VpnRouteTarget; import org.onosproject.mastership.MastershipService; import org.onosproject.net.AnnotationKeys; import org.onosproject.net.Device; @@ -103,7 +103,6 @@ import java.util.LinkedList; import java.util.List; import java.util.Set; -import static com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.Reference; import static org.onosproject.evpnopenflow.rsc.EvpnConstants.APP_ID; import static org.onosproject.evpnopenflow.rsc.EvpnConstants.ARP_PRIORITY; import static org.onosproject.evpnopenflow.rsc.EvpnConstants.ARP_RESPONSE; diff --git a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/DefaultVpnAfConfig.java b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/DefaultVpnAfConfig.java index 2481830d14..afa32a0cac 100644 --- a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/DefaultVpnAfConfig.java +++ b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/DefaultVpnAfConfig.java @@ -16,7 +16,7 @@ package org.onosproject.evpnopenflow.rsc; -import org.onosproject.incubator.net.routing.VpnRouteTarget; +import org.onosproject.evpnrouteservice.VpnRouteTarget; import static com.google.common.base.MoreObjects.toStringHelper; import static com.google.common.base.Preconditions.checkNotNull; diff --git a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/DefaultVpnInstance.java b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/DefaultVpnInstance.java index e7f9c5d52b..62b1a70bf2 100644 --- a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/DefaultVpnInstance.java +++ b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/DefaultVpnInstance.java @@ -16,9 +16,9 @@ package org.onosproject.evpnopenflow.rsc; -import org.onosproject.incubator.net.routing.EvpnInstanceName; -import org.onosproject.incubator.net.routing.RouteDistinguisher; -import org.onosproject.incubator.net.routing.VpnRouteTarget; +import org.onosproject.evpnrouteservice.EvpnInstanceName; +import org.onosproject.evpnrouteservice.RouteDistinguisher; +import org.onosproject.evpnrouteservice.VpnRouteTarget; import java.util.Objects; import java.util.Set; diff --git a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/VpnAfConfig.java b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/VpnAfConfig.java index e9bd0681c3..83d5686326 100644 --- a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/VpnAfConfig.java +++ b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/VpnAfConfig.java @@ -16,7 +16,7 @@ package org.onosproject.evpnopenflow.rsc; -import org.onosproject.incubator.net.routing.VpnRouteTarget; +import org.onosproject.evpnrouteservice.VpnRouteTarget; /** * Representation of a VPN af configuration. diff --git a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/VpnInstance.java b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/VpnInstance.java index d49027b2bc..3c2d062bcc 100644 --- a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/VpnInstance.java +++ b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/VpnInstance.java @@ -16,9 +16,9 @@ package org.onosproject.evpnopenflow.rsc; -import org.onosproject.incubator.net.routing.EvpnInstanceName; -import org.onosproject.incubator.net.routing.RouteDistinguisher; -import org.onosproject.incubator.net.routing.VpnRouteTarget; +import org.onosproject.evpnrouteservice.EvpnInstanceName; +import org.onosproject.evpnrouteservice.RouteDistinguisher; +import org.onosproject.evpnrouteservice.VpnRouteTarget; import java.util.Set; diff --git a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/cli/EvpnPrivateRouteListCommand.java b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/cli/EvpnPrivateRouteListCommand.java index 21223205dc..f4ddf1533f 100644 --- a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/cli/EvpnPrivateRouteListCommand.java +++ b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/cli/EvpnPrivateRouteListCommand.java @@ -20,7 +20,7 @@ import org.apache.karaf.shell.commands.Command; import org.onosproject.cli.AbstractShellCommand; import org.onosproject.evpnopenflow.manager.EvpnService; import org.onosproject.evpnopenflow.manager.impl.EvpnManager; -import org.onosproject.incubator.net.routing.EvpnInstanceRoute; +import org.onosproject.evpnrouteservice.EvpnInstanceRoute; import java.util.Collection; diff --git a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/cli/EvpnPublicRouteListCommand.java b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/cli/EvpnPublicRouteListCommand.java index 3067257960..2ce5fb85cb 100644 --- a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/cli/EvpnPublicRouteListCommand.java +++ b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/cli/EvpnPublicRouteListCommand.java @@ -18,9 +18,9 @@ package org.onosproject.evpnopenflow.rsc.cli; import org.apache.karaf.shell.commands.Command; import org.onosproject.cli.AbstractShellCommand; -import org.onosproject.incubator.net.routing.EvpnRoute; -import org.onosproject.incubator.net.routing.EvpnRouteSet; -import org.onosproject.incubator.net.routing.EvpnRouteStore; +import org.onosproject.evpnrouteservice.EvpnRoute; +import org.onosproject.evpnrouteservice.EvpnRouteSet; +import org.onosproject.evpnrouteservice.EvpnRouteStore; import java.util.Collection; @@ -55,4 +55,4 @@ public class EvpnPublicRouteListCommand extends AbstractShellCommand { } }); } -} \ No newline at end of file +} diff --git a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpnafconfig/VpnAfConfigService.java b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpnafconfig/VpnAfConfigService.java index 31714ad61f..ecde40d862 100644 --- a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpnafconfig/VpnAfConfigService.java +++ b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpnafconfig/VpnAfConfigService.java @@ -18,7 +18,7 @@ package org.onosproject.evpnopenflow.rsc.vpnafconfig; import com.fasterxml.jackson.databind.JsonNode; import org.onosproject.evpnopenflow.rsc.VpnAfConfig; -import org.onosproject.incubator.net.routing.VpnRouteTarget; +import org.onosproject.evpnrouteservice.VpnRouteTarget; import java.util.Collection; diff --git a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpnafconfig/impl/VpnAfConfigManager.java b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpnafconfig/impl/VpnAfConfigManager.java index fafd5d8598..7645c2e335 100644 --- a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpnafconfig/impl/VpnAfConfigManager.java +++ b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpnafconfig/impl/VpnAfConfigManager.java @@ -31,7 +31,7 @@ import org.onosproject.evpnopenflow.rsc.VpnAfConfig; import org.onosproject.evpnopenflow.rsc.vpnafconfig.VpnAfConfigEvent; import org.onosproject.evpnopenflow.rsc.vpnafconfig.VpnAfConfigListener; import org.onosproject.evpnopenflow.rsc.vpnafconfig.VpnAfConfigService; -import org.onosproject.incubator.net.routing.VpnRouteTarget; +import org.onosproject.evpnrouteservice.VpnRouteTarget; import org.onosproject.store.serializers.KryoNamespaces; import org.onosproject.store.service.EventuallyConsistentMap; import org.onosproject.store.service.StorageService; diff --git a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpninstance/VpnInstanceService.java b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpninstance/VpnInstanceService.java index f233f2938c..a61a811587 100644 --- a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpninstance/VpnInstanceService.java +++ b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpninstance/VpnInstanceService.java @@ -19,7 +19,7 @@ package org.onosproject.evpnopenflow.rsc.vpninstance; import com.fasterxml.jackson.databind.JsonNode; import org.onosproject.evpnopenflow.rsc.VpnInstance; import org.onosproject.evpnopenflow.rsc.VpnInstanceId; -import org.onosproject.incubator.net.routing.VpnRouteTarget; +import org.onosproject.evpnrouteservice.VpnRouteTarget; import java.util.Collection; import java.util.Set; diff --git a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpninstance/impl/VpnInstanceManager.java b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpninstance/impl/VpnInstanceManager.java index e0ec5a9281..20c6d151b6 100644 --- a/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpninstance/impl/VpnInstanceManager.java +++ b/apps/evpnopenflow/src/main/java/org/onosproject/evpnopenflow/rsc/vpninstance/impl/VpnInstanceManager.java @@ -33,10 +33,10 @@ import org.onosproject.evpnopenflow.rsc.VpnInstance; import org.onosproject.evpnopenflow.rsc.VpnInstanceId; import org.onosproject.evpnopenflow.rsc.vpnafconfig.VpnAfConfigService; import org.onosproject.evpnopenflow.rsc.vpninstance.VpnInstanceService; -import org.onosproject.incubator.net.routing.EvpnInstanceName; +import org.onosproject.evpnrouteservice.EvpnInstanceName; import org.onosproject.routeservice.RouteAdminService; -import org.onosproject.incubator.net.routing.RouteDistinguisher; -import org.onosproject.incubator.net.routing.VpnRouteTarget; +import org.onosproject.evpnrouteservice.RouteDistinguisher; +import org.onosproject.evpnrouteservice.VpnRouteTarget; import org.onosproject.store.serializers.KryoNamespaces; import org.onosproject.store.service.EventuallyConsistentMap; import org.onosproject.store.service.StorageService; diff --git a/apps/pom.xml b/apps/pom.xml index 0fd13fcdf7..617daa6614 100644 --- a/apps/pom.xml +++ b/apps/pom.xml @@ -92,6 +92,7 @@ gluon evpnopenflow route-service + evpn-route-service diff --git a/incubator/store/src/main/java/org/onosproject/incubator/store/impl/package-info.java b/incubator/store/src/main/java/org/onosproject/incubator/store/impl/package-info.java deleted file mode 100644 index 72a6bfc11f..0000000000 --- a/incubator/store/src/main/java/org/onosproject/incubator/store/impl/package-info.java +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright 2015-present Open Networking 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. - */ - -/** - * Incubating distributed store implementations. - */ -package org.onosproject.incubator.store.impl; \ No newline at end of file diff --git a/modules.defs b/modules.defs index fa8cba2a03..66204319ef 100644 --- a/modules.defs +++ b/modules.defs @@ -211,6 +211,7 @@ ONOS_APPS = [ '//apps/gluon:onos-apps-gluon-oar', '//apps/evpnopenflow:onos-apps-evpnopenflow-oar', '//apps/route-service:onos-apps-route-service-oar', + '//apps/evpn-route-service:onos-apps-evpn-route-service-oar', ] PROTOCOL_APPS = [ diff --git a/providers/bgp/BUCK b/providers/bgp/BUCK index c6560b9992..93ab3f7a20 100644 --- a/providers/bgp/BUCK +++ b/providers/bgp/BUCK @@ -14,5 +14,6 @@ onos_app ( url = 'http://onosproject.org', included_bundles = BUNDLES, description = 'BGP protocol southbound providers.', + required_apps = [ 'org.onosproject.evpnrouteservice' ], ) diff --git a/providers/bgp/route/BUCK b/providers/bgp/route/BUCK index bf384654b2..5e94e85b79 100644 --- a/providers/bgp/route/BUCK +++ b/providers/bgp/route/BUCK @@ -1,16 +1,17 @@ COMPILE_DEPS = [ - '//lib:CORE_DEPS', - '//protocols/bgp/api:onos-protocols-bgp-api', - '//protocols/bgp/bgpio:onos-protocols-bgp-bgpio', - '//incubator/store:onos-incubator-store', - '//incubator/api:onos-incubator-api', + '//lib:CORE_DEPS', + '//protocols/bgp/api:onos-protocols-bgp-api', + '//protocols/bgp/bgpio:onos-protocols-bgp-bgpio', + '//incubator/store:onos-incubator-store', + '//incubator/api:onos-incubator-api', + '//apps/evpn-route-service/api:onos-apps-evpn-route-service-api', ] TEST_DEPS = [ - '//lib:TEST_ADAPTERS', + '//lib:TEST_ADAPTERS', ] osgi_jar_with_tests( - deps = COMPILE_DEPS, - test_deps = TEST_DEPS, + deps = COMPILE_DEPS, + test_deps = TEST_DEPS, ) diff --git a/providers/bgp/route/pom.xml b/providers/bgp/route/pom.xml index e3bffcdb77..e7c26a8f62 100644 --- a/providers/bgp/route/pom.xml +++ b/providers/bgp/route/pom.xml @@ -46,5 +46,10 @@ org.onosproject onos-bgp-api + + org.onosproject + onos-app-evpn-route-service-api + ${project.version} + diff --git a/providers/bgp/route/src/main/java/org/onosproject/provider/bgp/route/impl/BgpRouteProvider.java b/providers/bgp/route/src/main/java/org/onosproject/provider/bgp/route/impl/BgpRouteProvider.java index 81bd1d5882..c7a9b104db 100644 --- a/providers/bgp/route/src/main/java/org/onosproject/provider/bgp/route/impl/BgpRouteProvider.java +++ b/providers/bgp/route/src/main/java/org/onosproject/provider/bgp/route/impl/BgpRouteProvider.java @@ -40,12 +40,12 @@ import org.onosproject.bgpio.types.MpReachNlri; import org.onosproject.bgpio.types.MpUnReachNlri; import org.onosproject.bgpio.types.RouteDistinguisher; import org.onosproject.bgpio.types.RouteTarget; -import org.onosproject.incubator.net.routing.EvpnRoute; -import org.onosproject.incubator.net.routing.EvpnRoute.Source; -import org.onosproject.incubator.net.routing.EvpnRouteAdminService; -import org.onosproject.incubator.net.routing.EvpnRouteEvent; -import org.onosproject.incubator.net.routing.EvpnRouteListener; -import org.onosproject.incubator.net.routing.VpnRouteTarget; +import org.onosproject.evpnrouteservice.EvpnRoute; +import org.onosproject.evpnrouteservice.EvpnRoute.Source; +import org.onosproject.evpnrouteservice.EvpnRouteAdminService; +import org.onosproject.evpnrouteservice.EvpnRouteEvent; +import org.onosproject.evpnrouteservice.EvpnRouteListener; +import org.onosproject.evpnrouteservice.VpnRouteTarget; import org.onosproject.net.provider.AbstractProvider; import org.onosproject.net.provider.ProviderId; import org.slf4j.Logger; @@ -391,4 +391,4 @@ public class BgpRouteProvider extends AbstractProvider { labelInt); } } -} \ No newline at end of file +}