Renamed routing packages to foo & foo.impl pattern.

Plus added some package-info.java files.

Change-Id: I0b68a7f4cea7a5f089b37b1a1c016d1c3b7a8702
diff --git a/apps/bgprouter/src/main/java/org/onosproject/bgprouter/BgpRouter.java b/apps/bgprouter/src/main/java/org/onosproject/bgprouter/BgpRouter.java
index 22389c3..317bf0d 100644
--- a/apps/bgprouter/src/main/java/org/onosproject/bgprouter/BgpRouter.java
+++ b/apps/bgprouter/src/main/java/org/onosproject/bgprouter/BgpRouter.java
@@ -42,11 +42,11 @@
 import org.onosproject.net.group.GroupKey;
 import org.onosproject.net.group.GroupService;
 import org.onosproject.net.packet.PacketService;
-import org.onosproject.routingapi.FibListener;
-import org.onosproject.routingapi.FibUpdate;
-import org.onosproject.routingapi.RoutingService;
-import org.onosproject.routingapi.config.Interface;
-import org.onosproject.routingapi.config.RoutingConfigurationService;
+import org.onosproject.routing.FibListener;
+import org.onosproject.routing.FibUpdate;
+import org.onosproject.routing.RoutingService;
+import org.onosproject.routing.config.Interface;
+import org.onosproject.routing.config.RoutingConfigurationService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/apps/bgprouter/src/main/java/org/onosproject/bgprouter/TunnellingConnectivityManager.java b/apps/bgprouter/src/main/java/org/onosproject/bgprouter/TunnellingConnectivityManager.java
index eac5ba9..774ede4 100644
--- a/apps/bgprouter/src/main/java/org/onosproject/bgprouter/TunnellingConnectivityManager.java
+++ b/apps/bgprouter/src/main/java/org/onosproject/bgprouter/TunnellingConnectivityManager.java
@@ -31,10 +31,10 @@
 import org.onosproject.net.packet.PacketPriority;
 import org.onosproject.net.packet.PacketProcessor;
 import org.onosproject.net.packet.PacketService;
-import org.onosproject.routingapi.config.BgpPeer;
-import org.onosproject.routingapi.config.BgpSpeaker;
-import org.onosproject.routingapi.config.InterfaceAddress;
-import org.onosproject.routingapi.config.RoutingConfigurationService;
+import org.onosproject.routing.config.BgpPeer;
+import org.onosproject.routing.config.BgpSpeaker;
+import org.onosproject.routing.config.InterfaceAddress;
+import org.onosproject.routing.config.RoutingConfigurationService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/BgpService.java b/apps/routing-api/src/main/java/org/onosproject/routing/BgpService.java
similarity index 96%
rename from apps/routing-api/src/main/java/org/onosproject/routingapi/BgpService.java
rename to apps/routing-api/src/main/java/org/onosproject/routing/BgpService.java
index 3901b22..f5d95f2 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/BgpService.java
+++ b/apps/routing-api/src/main/java/org/onosproject/routing/BgpService.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routingapi;
+package org.onosproject.routing;
 
 /**
  * Provides a way of interacting with the BGP protocol component.
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/FibEntry.java b/apps/routing-api/src/main/java/org/onosproject/routing/FibEntry.java
similarity index 98%
rename from apps/routing-api/src/main/java/org/onosproject/routingapi/FibEntry.java
rename to apps/routing-api/src/main/java/org/onosproject/routing/FibEntry.java
index 86b40f8..e2e2049 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/FibEntry.java
+++ b/apps/routing-api/src/main/java/org/onosproject/routing/FibEntry.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routingapi;
+package org.onosproject.routing;
 
 import com.google.common.base.MoreObjects;
 import org.onlab.packet.IpAddress;
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/FibListener.java b/apps/routing-api/src/main/java/org/onosproject/routing/FibListener.java
similarity index 96%
rename from apps/routing-api/src/main/java/org/onosproject/routingapi/FibListener.java
rename to apps/routing-api/src/main/java/org/onosproject/routing/FibListener.java
index 218139e..0c8e627 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/FibListener.java
+++ b/apps/routing-api/src/main/java/org/onosproject/routing/FibListener.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routingapi;
+package org.onosproject.routing;
 
 import java.util.Collection;
 
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/FibUpdate.java b/apps/routing-api/src/main/java/org/onosproject/routing/FibUpdate.java
similarity index 98%
rename from apps/routing-api/src/main/java/org/onosproject/routingapi/FibUpdate.java
rename to apps/routing-api/src/main/java/org/onosproject/routing/FibUpdate.java
index 2b0215c..dacb159 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/FibUpdate.java
+++ b/apps/routing-api/src/main/java/org/onosproject/routing/FibUpdate.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routingapi;
+package org.onosproject.routing;
 
 import com.google.common.base.MoreObjects;
 
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/RouteEntry.java b/apps/routing-api/src/main/java/org/onosproject/routing/RouteEntry.java
similarity index 98%
rename from apps/routing-api/src/main/java/org/onosproject/routingapi/RouteEntry.java
rename to apps/routing-api/src/main/java/org/onosproject/routing/RouteEntry.java
index 3e861e5..358f707 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/RouteEntry.java
+++ b/apps/routing-api/src/main/java/org/onosproject/routing/RouteEntry.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routingapi;
+package org.onosproject.routing;
 
 import com.google.common.base.MoreObjects;
 import org.onlab.packet.IpAddress;
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/RouteListener.java b/apps/routing-api/src/main/java/org/onosproject/routing/RouteListener.java
similarity index 96%
rename from apps/routing-api/src/main/java/org/onosproject/routingapi/RouteListener.java
rename to apps/routing-api/src/main/java/org/onosproject/routing/RouteListener.java
index 55fa70d..46ed545 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/RouteListener.java
+++ b/apps/routing-api/src/main/java/org/onosproject/routing/RouteListener.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routingapi;
+package org.onosproject.routing;
 
 import java.util.Collection;
 
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/RouteUpdate.java b/apps/routing-api/src/main/java/org/onosproject/routing/RouteUpdate.java
similarity index 98%
rename from apps/routing-api/src/main/java/org/onosproject/routingapi/RouteUpdate.java
rename to apps/routing-api/src/main/java/org/onosproject/routing/RouteUpdate.java
index 47aa3c2..a5a8e83 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/RouteUpdate.java
+++ b/apps/routing-api/src/main/java/org/onosproject/routing/RouteUpdate.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routingapi;
+package org.onosproject.routing;
 
 import com.google.common.base.MoreObjects;
 
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/RoutingService.java b/apps/routing-api/src/main/java/org/onosproject/routing/RoutingService.java
similarity index 97%
rename from apps/routing-api/src/main/java/org/onosproject/routingapi/RoutingService.java
rename to apps/routing-api/src/main/java/org/onosproject/routing/RoutingService.java
index e0f9383..fdd4f2c 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/RoutingService.java
+++ b/apps/routing-api/src/main/java/org/onosproject/routing/RoutingService.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routingapi;
+package org.onosproject.routing;
 
 import java.util.Collection;
 
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/BgpPeer.java b/apps/routing-api/src/main/java/org/onosproject/routing/config/BgpPeer.java
similarity index 98%
rename from apps/routing-api/src/main/java/org/onosproject/routingapi/config/BgpPeer.java
rename to apps/routing-api/src/main/java/org/onosproject/routing/config/BgpPeer.java
index 47a3520..3693ca2 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/BgpPeer.java
+++ b/apps/routing-api/src/main/java/org/onosproject/routing/config/BgpPeer.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routingapi.config;
+package org.onosproject.routing.config;
 
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.google.common.base.MoreObjects;
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/BgpSpeaker.java b/apps/routing-api/src/main/java/org/onosproject/routing/config/BgpSpeaker.java
similarity index 98%
rename from apps/routing-api/src/main/java/org/onosproject/routingapi/config/BgpSpeaker.java
rename to apps/routing-api/src/main/java/org/onosproject/routing/config/BgpSpeaker.java
index c19ceb6..b17c74a 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/BgpSpeaker.java
+++ b/apps/routing-api/src/main/java/org/onosproject/routing/config/BgpSpeaker.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routingapi.config;
+package org.onosproject.routing.config;
 
 import com.fasterxml.jackson.annotation.JsonCreator;
 import com.fasterxml.jackson.annotation.JsonProperty;
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/Interface.java b/apps/routing-api/src/main/java/org/onosproject/routing/config/Interface.java
similarity index 98%
rename from apps/routing-api/src/main/java/org/onosproject/routingapi/config/Interface.java
rename to apps/routing-api/src/main/java/org/onosproject/routing/config/Interface.java
index 7f7547d..ac9e34b 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/Interface.java
+++ b/apps/routing-api/src/main/java/org/onosproject/routing/config/Interface.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routingapi.config;
+package org.onosproject.routing.config;
 
 import com.google.common.base.MoreObjects;
 import com.google.common.collect.Sets;
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/InterfaceAddress.java b/apps/routing-api/src/main/java/org/onosproject/routing/config/InterfaceAddress.java
similarity index 98%
rename from apps/routing-api/src/main/java/org/onosproject/routingapi/config/InterfaceAddress.java
rename to apps/routing-api/src/main/java/org/onosproject/routing/config/InterfaceAddress.java
index 5fa4d64..4bf6e02 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/InterfaceAddress.java
+++ b/apps/routing-api/src/main/java/org/onosproject/routing/config/InterfaceAddress.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routingapi.config;
+package org.onosproject.routing.config;
 
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.google.common.base.MoreObjects;
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/RoutingConfigurationService.java b/apps/routing-api/src/main/java/org/onosproject/routing/config/RoutingConfigurationService.java
similarity index 97%
rename from apps/routing-api/src/main/java/org/onosproject/routingapi/config/RoutingConfigurationService.java
rename to apps/routing-api/src/main/java/org/onosproject/routing/config/RoutingConfigurationService.java
index 385e99d..113daa7 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/RoutingConfigurationService.java
+++ b/apps/routing-api/src/main/java/org/onosproject/routing/config/RoutingConfigurationService.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routingapi.config;
+package org.onosproject.routing.config;
 
 import org.onlab.packet.IpAddress;
 import org.onosproject.net.ConnectPoint;
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/package-info.java b/apps/routing-api/src/main/java/org/onosproject/routing/config/package-info.java
similarity index 88%
rename from apps/routing-api/src/main/java/org/onosproject/routingapi/config/package-info.java
rename to apps/routing-api/src/main/java/org/onosproject/routing/config/package-info.java
index 7e464da..d033daa 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/package-info.java
+++ b/apps/routing-api/src/main/java/org/onosproject/routing/config/package-info.java
@@ -15,6 +15,6 @@
  */
 
 /**
- * SDN-IP configuration services.
+ * Routing configuration interfaces.
  */
-package org.onosproject.routingapi.config;
+package org.onosproject.routing.config;
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/package-info.java b/apps/routing-api/src/main/java/org/onosproject/routing/package-info.java
similarity index 82%
copy from apps/routing-api/src/main/java/org/onosproject/routingapi/config/package-info.java
copy to apps/routing-api/src/main/java/org/onosproject/routing/package-info.java
index 7e464da..66e590b 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/package-info.java
+++ b/apps/routing-api/src/main/java/org/onosproject/routing/package-info.java
@@ -1,5 +1,5 @@
 /*
- * Copyright 2014 Open Networking Laboratory
+ * Copyright 2015 Open Networking Laboratory
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -15,6 +15,6 @@
  */
 
 /**
- * SDN-IP configuration services.
+ * API for routing libraries.
  */
-package org.onosproject.routingapi.config;
+package org.onosproject.routing;
diff --git a/apps/routing-api/src/test/java/org/onosproject/routingapi/RouteEntryTest.java b/apps/routing-api/src/test/java/org/onosproject/routing/RouteEntryTest.java
similarity index 99%
rename from apps/routing-api/src/test/java/org/onosproject/routingapi/RouteEntryTest.java
rename to apps/routing-api/src/test/java/org/onosproject/routing/RouteEntryTest.java
index acce45a..7ed10d2 100644
--- a/apps/routing-api/src/test/java/org/onosproject/routingapi/RouteEntryTest.java
+++ b/apps/routing-api/src/test/java/org/onosproject/routing/RouteEntryTest.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routingapi;
+package org.onosproject.routing;
 
 import org.hamcrest.Matchers;
 import org.junit.Test;
diff --git a/apps/routing/src/main/java/org/onosproject/routing/bgp/BgpRouteEntry.java b/apps/routing/src/main/java/org/onosproject/routing/bgp/BgpRouteEntry.java
index e7e7f3c..aee85b4 100644
--- a/apps/routing/src/main/java/org/onosproject/routing/bgp/BgpRouteEntry.java
+++ b/apps/routing/src/main/java/org/onosproject/routing/bgp/BgpRouteEntry.java
@@ -19,7 +19,7 @@
 import org.onlab.packet.Ip4Address;
 import org.onlab.packet.IpAddress;
 import org.onlab.packet.IpPrefix;
-import org.onosproject.routingapi.RouteEntry;
+import org.onosproject.routing.RouteEntry;
 
 import java.util.ArrayList;
 import java.util.Objects;
diff --git a/apps/routing/src/main/java/org/onosproject/routing/bgp/BgpRouteSelector.java b/apps/routing/src/main/java/org/onosproject/routing/bgp/BgpRouteSelector.java
index e95aaff..ec02023 100644
--- a/apps/routing/src/main/java/org/onosproject/routing/bgp/BgpRouteSelector.java
+++ b/apps/routing/src/main/java/org/onosproject/routing/bgp/BgpRouteSelector.java
@@ -16,7 +16,7 @@
 package org.onosproject.routing.bgp;
 
 import org.onlab.packet.IpPrefix;
-import org.onosproject.routingapi.RouteUpdate;
+import org.onosproject.routing.RouteUpdate;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/apps/routing/src/main/java/org/onosproject/routing/bgp/BgpSessionManager.java b/apps/routing/src/main/java/org/onosproject/routing/bgp/BgpSessionManager.java
index 5a16313..68aaefb 100644
--- a/apps/routing/src/main/java/org/onosproject/routing/bgp/BgpSessionManager.java
+++ b/apps/routing/src/main/java/org/onosproject/routing/bgp/BgpSessionManager.java
@@ -35,8 +35,8 @@
 import org.onlab.packet.Ip4Prefix;
 import org.onlab.packet.Ip6Prefix;
 import org.onlab.packet.IpPrefix;
-import org.onosproject.routingapi.BgpService;
-import org.onosproject.routingapi.RouteListener;
+import org.onosproject.routing.BgpService;
+import org.onosproject.routing.RouteListener;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/apps/routing/src/main/java/org/onosproject/routing/cli/BgpRoutesListCommand.java b/apps/routing/src/main/java/org/onosproject/routing/cli/BgpRoutesListCommand.java
index c3d3c52..3734bea 100644
--- a/apps/routing/src/main/java/org/onosproject/routing/cli/BgpRoutesListCommand.java
+++ b/apps/routing/src/main/java/org/onosproject/routing/cli/BgpRoutesListCommand.java
@@ -22,10 +22,10 @@
 import org.apache.karaf.shell.commands.Command;
 import org.apache.karaf.shell.commands.Option;
 import org.onosproject.cli.AbstractShellCommand;
-import org.onosproject.routing.bgp.BgpConstants.Update;
 import org.onosproject.routing.bgp.BgpInfoService;
 import org.onosproject.routing.bgp.BgpRouteEntry;
 import org.onosproject.routing.bgp.BgpSession;
+import org.onosproject.routing.bgp.BgpConstants;
 
 import java.util.ArrayList;
 import java.util.Collection;
@@ -150,7 +150,7 @@
     private void printRoute(BgpRouteEntry route) {
         if (route != null) {
             print(FORMAT_ROUTE_LINE1, route.prefix(), route.nextHop(),
-                  Update.Origin.typeToString(route.getOrigin()),
+                  BgpConstants.Update.Origin.typeToString(route.getOrigin()),
                   route.getLocalPref(), route.getMultiExitDisc(),
                   route.getBgpSession().remoteInfo().bgpId());
             print(FORMAT_ROUTE_LINE2, asPath4Cli(route.getAsPath()));
@@ -176,23 +176,23 @@
             String prefix = null;
             String suffix = null;
             switch (pathSegment.getType()) {
-            case Update.AsPath.AS_SET:
+            case BgpConstants.Update.AsPath.AS_SET:
                 prefix = "[AS-Set";
                 suffix = "]";
                 break;
-            case Update.AsPath.AS_SEQUENCE:
+            case BgpConstants.Update.AsPath.AS_SEQUENCE:
                 break;
-            case Update.AsPath.AS_CONFED_SEQUENCE:
+            case BgpConstants.Update.AsPath.AS_CONFED_SEQUENCE:
                 prefix = "[AS-Confed-Seq";
                 suffix = "]";
                 break;
-            case Update.AsPath.AS_CONFED_SET:
+            case BgpConstants.Update.AsPath.AS_CONFED_SET:
                 prefix = "[AS-Confed-Set";
                 suffix = "]";
                 break;
             default:
                 builder.append(String.format("(type = %s)",
-                        Update.AsPath.typeToString(pathSegment.getType())));
+                        BgpConstants.Update.AsPath.typeToString(pathSegment.getType())));
                 break;
             }
 
@@ -247,7 +247,7 @@
         result.put("nextHop", route.nextHop().toString());
         result.put("bgpId",
                    route.getBgpSession().remoteInfo().bgpId().toString());
-        result.put("origin", Update.Origin.typeToString(route.getOrigin()));
+        result.put("origin", BgpConstants.Update.Origin.typeToString(route.getOrigin()));
         result.set("asPath", json(mapper, route.getAsPath()));
         result.put("localPref", route.getLocalPref());
         result.put("multiExitDisc", route.getMultiExitDisc());
@@ -268,7 +268,7 @@
         for (BgpRouteEntry.PathSegment pathSegment : asPath.getPathSegments()) {
             ObjectNode pathSegmentJson = mapper.createObjectNode();
             pathSegmentJson.put("type",
-                                Update.AsPath.typeToString(pathSegment.getType()));
+                                BgpConstants.Update.AsPath.typeToString(pathSegment.getType()));
             ArrayNode segmentAsNumbersJson = mapper.createArrayNode();
             for (Long asNumber : pathSegment.getSegmentAsNumbers()) {
                 segmentAsNumbersJson.add(asNumber);
diff --git a/apps/routing/src/main/java/org/onosproject/routing/cli/RoutesListCommand.java b/apps/routing/src/main/java/org/onosproject/routing/cli/RoutesListCommand.java
index ab2b91e..698ebb7 100644
--- a/apps/routing/src/main/java/org/onosproject/routing/cli/RoutesListCommand.java
+++ b/apps/routing/src/main/java/org/onosproject/routing/cli/RoutesListCommand.java
@@ -22,8 +22,8 @@
 import org.apache.karaf.shell.commands.Command;
 import org.apache.karaf.shell.commands.Option;
 import org.onosproject.cli.AbstractShellCommand;
-import org.onosproject.routingapi.RouteEntry;
-import org.onosproject.routingapi.RoutingService;
+import org.onosproject.routing.RouteEntry;
+import org.onosproject.routing.RoutingService;
 
 import java.util.Collection;
 
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/package-info.java b/apps/routing/src/main/java/org/onosproject/routing/cli/package-info.java
similarity index 82%
copy from apps/routing-api/src/main/java/org/onosproject/routingapi/config/package-info.java
copy to apps/routing/src/main/java/org/onosproject/routing/cli/package-info.java
index 7e464da..cb6781e 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/package-info.java
+++ b/apps/routing/src/main/java/org/onosproject/routing/cli/package-info.java
@@ -1,5 +1,5 @@
 /*
- * Copyright 2014 Open Networking Laboratory
+ * Copyright 2015 Open Networking Laboratory
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -15,6 +15,6 @@
  */
 
 /**
- * SDN-IP configuration services.
+ * CLI handlers for routing commands.
  */
-package org.onosproject.routingapi.config;
+package org.onosproject.routing.cli;
diff --git a/apps/routing/src/main/java/org/onosproject/routing/config/Configuration.java b/apps/routing/src/main/java/org/onosproject/routing/config/impl/Configuration.java
similarity index 93%
rename from apps/routing/src/main/java/org/onosproject/routing/config/Configuration.java
rename to apps/routing/src/main/java/org/onosproject/routing/config/impl/Configuration.java
index 9ae69f8..bb57302 100644
--- a/apps/routing/src/main/java/org/onosproject/routing/config/Configuration.java
+++ b/apps/routing/src/main/java/org/onosproject/routing/config/impl/Configuration.java
@@ -13,11 +13,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routing.config;
+package org.onosproject.routing.config.impl;
 
 import com.fasterxml.jackson.annotation.JsonProperty;
-import org.onosproject.routingapi.config.BgpPeer;
-import org.onosproject.routingapi.config.BgpSpeaker;
+import org.onosproject.routing.config.BgpPeer;
+import org.onosproject.routing.config.BgpSpeaker;
 
 import java.util.Collections;
 import java.util.List;
diff --git a/apps/routing/src/main/java/org/onosproject/routing/config/HostToInterfaceAdaptor.java b/apps/routing/src/main/java/org/onosproject/routing/config/impl/HostToInterfaceAdaptor.java
similarity index 96%
rename from apps/routing/src/main/java/org/onosproject/routing/config/HostToInterfaceAdaptor.java
rename to apps/routing/src/main/java/org/onosproject/routing/config/impl/HostToInterfaceAdaptor.java
index 98b7914..ee026dc 100644
--- a/apps/routing/src/main/java/org/onosproject/routing/config/HostToInterfaceAdaptor.java
+++ b/apps/routing/src/main/java/org/onosproject/routing/config/impl/HostToInterfaceAdaptor.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routing.config;
+package org.onosproject.routing.config.impl;
 
 import com.google.common.collect.Sets;
 import org.onlab.packet.IpAddress;
@@ -21,7 +21,7 @@
 import org.onosproject.net.host.HostService;
 import org.onosproject.net.host.InterfaceIpAddress;
 import org.onosproject.net.host.PortAddresses;
-import org.onosproject.routingapi.config.Interface;
+import org.onosproject.routing.config.Interface;
 
 import java.util.Set;
 
diff --git a/apps/routing/src/main/java/org/onosproject/routing/config/RoutingConfigurationImpl.java b/apps/routing/src/main/java/org/onosproject/routing/config/impl/RoutingConfigurationImpl.java
similarity index 93%
rename from apps/routing/src/main/java/org/onosproject/routing/config/RoutingConfigurationImpl.java
rename to apps/routing/src/main/java/org/onosproject/routing/config/impl/RoutingConfigurationImpl.java
index 6ca0155..ac20475 100644
--- a/apps/routing/src/main/java/org/onosproject/routing/config/RoutingConfigurationImpl.java
+++ b/apps/routing/src/main/java/org/onosproject/routing/config/impl/RoutingConfigurationImpl.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routing.config;
+package org.onosproject.routing.config.impl;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
 import org.apache.felix.scr.annotations.Activate;
@@ -24,10 +24,10 @@
 import org.onlab.packet.IpAddress;
 import org.onosproject.net.ConnectPoint;
 import org.onosproject.net.host.HostService;
-import org.onosproject.routingapi.config.BgpPeer;
-import org.onosproject.routingapi.config.BgpSpeaker;
-import org.onosproject.routingapi.config.Interface;
-import org.onosproject.routingapi.config.RoutingConfigurationService;
+import org.onosproject.routing.config.BgpPeer;
+import org.onosproject.routing.config.BgpSpeaker;
+import org.onosproject.routing.config.Interface;
+import org.onosproject.routing.config.RoutingConfigurationService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/package-info.java b/apps/routing/src/main/java/org/onosproject/routing/config/impl/package-info.java
similarity index 80%
copy from apps/routing-api/src/main/java/org/onosproject/routingapi/config/package-info.java
copy to apps/routing/src/main/java/org/onosproject/routing/config/impl/package-info.java
index 7e464da..83c4a86 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/package-info.java
+++ b/apps/routing/src/main/java/org/onosproject/routing/config/impl/package-info.java
@@ -1,5 +1,5 @@
 /*
- * Copyright 2014 Open Networking Laboratory
+ * Copyright 2015 Open Networking Laboratory
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -15,6 +15,6 @@
  */
 
 /**
- * SDN-IP configuration services.
+ * Implementation of routing configuration APIs.
  */
-package org.onosproject.routingapi.config;
+package org.onosproject.routing.config.impl;
diff --git a/apps/routing/src/main/java/org/onosproject/routing/Router.java b/apps/routing/src/main/java/org/onosproject/routing/impl/Router.java
similarity index 97%
rename from apps/routing/src/main/java/org/onosproject/routing/Router.java
rename to apps/routing/src/main/java/org/onosproject/routing/impl/Router.java
index 1db8e0b..ddbc5ee 100644
--- a/apps/routing/src/main/java/org/onosproject/routing/Router.java
+++ b/apps/routing/src/main/java/org/onosproject/routing/impl/Router.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routing;
+package org.onosproject.routing.impl;
 
 import com.google.common.collect.HashMultimap;
 import com.google.common.collect.Multimaps;
@@ -37,14 +37,14 @@
 import org.onosproject.net.host.HostEvent;
 import org.onosproject.net.host.HostListener;
 import org.onosproject.net.host.HostService;
-import org.onosproject.routingapi.BgpService;
-import org.onosproject.routingapi.FibEntry;
-import org.onosproject.routingapi.FibListener;
-import org.onosproject.routingapi.FibUpdate;
-import org.onosproject.routingapi.RouteEntry;
-import org.onosproject.routingapi.RouteListener;
-import org.onosproject.routingapi.RouteUpdate;
-import org.onosproject.routingapi.RoutingService;
+import org.onosproject.routing.BgpService;
+import org.onosproject.routing.FibEntry;
+import org.onosproject.routing.FibListener;
+import org.onosproject.routing.FibUpdate;
+import org.onosproject.routing.RouteEntry;
+import org.onosproject.routing.RouteListener;
+import org.onosproject.routing.RouteUpdate;
+import org.onosproject.routing.RoutingService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/package-info.java b/apps/routing/src/main/java/org/onosproject/routing/impl/package-info.java
similarity index 81%
copy from apps/routing-api/src/main/java/org/onosproject/routingapi/config/package-info.java
copy to apps/routing/src/main/java/org/onosproject/routing/impl/package-info.java
index 7e464da..bb64bf6 100644
--- a/apps/routing-api/src/main/java/org/onosproject/routingapi/config/package-info.java
+++ b/apps/routing/src/main/java/org/onosproject/routing/impl/package-info.java
@@ -1,5 +1,5 @@
 /*
- * Copyright 2014 Open Networking Laboratory
+ * Copyright 2015 Open Networking Laboratory
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -15,6 +15,6 @@
  */
 
 /**
- * SDN-IP configuration services.
+ * Implementation of routing functionality.
  */
-package org.onosproject.routingapi.config;
+package org.onosproject.routing.impl;
diff --git a/apps/routing/src/test/java/org/onosproject/routing/bgp/BgpSessionManagerTest.java b/apps/routing/src/test/java/org/onosproject/routing/bgp/BgpSessionManagerTest.java
index c9c52b1..f85a89d 100644
--- a/apps/routing/src/test/java/org/onosproject/routing/bgp/BgpSessionManagerTest.java
+++ b/apps/routing/src/test/java/org/onosproject/routing/bgp/BgpSessionManagerTest.java
@@ -33,8 +33,8 @@
 import org.onlab.junit.TestUtils.TestUtilsException;
 import org.onlab.packet.Ip4Address;
 import org.onlab.packet.Ip4Prefix;
-import org.onosproject.routingapi.RouteListener;
-import org.onosproject.routingapi.RouteUpdate;
+import org.onosproject.routing.RouteListener;
+import org.onosproject.routing.RouteUpdate;
 import org.osgi.service.component.ComponentContext;
 
 import java.net.InetAddress;
diff --git a/apps/routing/src/test/java/org/onosproject/routing/config/HostToInterfaceAdaptorTest.java b/apps/routing/src/test/java/org/onosproject/routing/config/impl/HostToInterfaceAdaptorTest.java
similarity index 98%
rename from apps/routing/src/test/java/org/onosproject/routing/config/HostToInterfaceAdaptorTest.java
rename to apps/routing/src/test/java/org/onosproject/routing/config/impl/HostToInterfaceAdaptorTest.java
index 7dd6411..4e8e1de 100644
--- a/apps/routing/src/test/java/org/onosproject/routing/config/HostToInterfaceAdaptorTest.java
+++ b/apps/routing/src/test/java/org/onosproject/routing/config/impl/HostToInterfaceAdaptorTest.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routing.config;
+package org.onosproject.routing.config.impl;
 
 import com.google.common.collect.Maps;
 import com.google.common.collect.Sets;
@@ -29,7 +29,7 @@
 import org.onosproject.net.host.HostService;
 import org.onosproject.net.host.InterfaceIpAddress;
 import org.onosproject.net.host.PortAddresses;
-import org.onosproject.routingapi.config.Interface;
+import org.onosproject.routing.config.Interface;
 
 import java.util.Collections;
 import java.util.Map;
diff --git a/apps/routing/src/test/java/org/onosproject/routing/RouterAsyncArpTest.java b/apps/routing/src/test/java/org/onosproject/routing/impl/RouterAsyncArpTest.java
similarity index 94%
rename from apps/routing/src/test/java/org/onosproject/routing/RouterAsyncArpTest.java
rename to apps/routing/src/test/java/org/onosproject/routing/impl/RouterAsyncArpTest.java
index 54a21ee..8ef48b2 100644
--- a/apps/routing/src/test/java/org/onosproject/routing/RouterAsyncArpTest.java
+++ b/apps/routing/src/test/java/org/onosproject/routing/impl/RouterAsyncArpTest.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routing;
+package org.onosproject.routing.impl;
 
 import com.google.common.collect.Sets;
 import org.junit.After;
@@ -36,14 +36,14 @@
 import org.onosproject.net.host.HostListener;
 import org.onosproject.net.host.HostService;
 import org.onosproject.net.provider.ProviderId;
-import org.onosproject.routing.Router.InternalHostListener;
-import org.onosproject.routingapi.BgpService;
-import org.onosproject.routingapi.FibEntry;
-import org.onosproject.routingapi.FibListener;
-import org.onosproject.routingapi.FibUpdate;
-import org.onosproject.routingapi.RouteEntry;
-import org.onosproject.routingapi.RouteListener;
-import org.onosproject.routingapi.RouteUpdate;
+import org.onosproject.routing.impl.Router.InternalHostListener;
+import org.onosproject.routing.BgpService;
+import org.onosproject.routing.FibEntry;
+import org.onosproject.routing.FibListener;
+import org.onosproject.routing.FibUpdate;
+import org.onosproject.routing.RouteEntry;
+import org.onosproject.routing.RouteListener;
+import org.onosproject.routing.RouteUpdate;
 
 import java.util.Collections;
 
diff --git a/apps/routing/src/test/java/org/onosproject/routing/RouterTest.java b/apps/routing/src/test/java/org/onosproject/routing/impl/RouterTest.java
similarity index 95%
rename from apps/routing/src/test/java/org/onosproject/routing/RouterTest.java
rename to apps/routing/src/test/java/org/onosproject/routing/impl/RouterTest.java
index 26ed60a..d669a0b 100644
--- a/apps/routing/src/test/java/org/onosproject/routing/RouterTest.java
+++ b/apps/routing/src/test/java/org/onosproject/routing/impl/RouterTest.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.routing;
+package org.onosproject.routing.impl;
 
 import com.google.common.collect.Sets;
 import org.junit.After;
@@ -35,13 +35,13 @@
 import org.onosproject.net.host.HostListener;
 import org.onosproject.net.host.HostService;
 import org.onosproject.net.provider.ProviderId;
-import org.onosproject.routingapi.BgpService;
-import org.onosproject.routingapi.FibEntry;
-import org.onosproject.routingapi.FibListener;
-import org.onosproject.routingapi.FibUpdate;
-import org.onosproject.routingapi.RouteEntry;
-import org.onosproject.routingapi.RouteListener;
-import org.onosproject.routingapi.RouteUpdate;
+import org.onosproject.routing.BgpService;
+import org.onosproject.routing.FibEntry;
+import org.onosproject.routing.FibListener;
+import org.onosproject.routing.FibUpdate;
+import org.onosproject.routing.RouteEntry;
+import org.onosproject.routing.RouteListener;
+import org.onosproject.routing.RouteUpdate;
 
 import java.util.Collections;
 
diff --git a/apps/sdnip/src/main/java/org/onosproject/sdnip/IntentSynchronizer.java b/apps/sdnip/src/main/java/org/onosproject/sdnip/IntentSynchronizer.java
index b1c9961..7677b07 100644
--- a/apps/sdnip/src/main/java/org/onosproject/sdnip/IntentSynchronizer.java
+++ b/apps/sdnip/src/main/java/org/onosproject/sdnip/IntentSynchronizer.java
@@ -35,11 +35,11 @@
 import org.onosproject.net.intent.IntentState;
 import org.onosproject.net.intent.MultiPointToSinglePointIntent;
 import org.onosproject.net.intent.PointToPointIntent;
-import org.onosproject.routingapi.FibListener;
-import org.onosproject.routingapi.FibUpdate;
-import org.onosproject.routingapi.config.BgpPeer;
-import org.onosproject.routingapi.config.Interface;
-import org.onosproject.routingapi.config.RoutingConfigurationService;
+import org.onosproject.routing.FibListener;
+import org.onosproject.routing.FibUpdate;
+import org.onosproject.routing.config.BgpPeer;
+import org.onosproject.routing.config.Interface;
+import org.onosproject.routing.config.RoutingConfigurationService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/apps/sdnip/src/main/java/org/onosproject/sdnip/PeerConnectivityManager.java b/apps/sdnip/src/main/java/org/onosproject/sdnip/PeerConnectivityManager.java
index baad757..caca1cf 100644
--- a/apps/sdnip/src/main/java/org/onosproject/sdnip/PeerConnectivityManager.java
+++ b/apps/sdnip/src/main/java/org/onosproject/sdnip/PeerConnectivityManager.java
@@ -28,11 +28,11 @@
 import org.onosproject.net.flow.TrafficSelector;
 import org.onosproject.net.flow.TrafficTreatment;
 import org.onosproject.net.intent.PointToPointIntent;
-import org.onosproject.routingapi.config.BgpPeer;
-import org.onosproject.routingapi.config.BgpSpeaker;
-import org.onosproject.routingapi.config.Interface;
-import org.onosproject.routingapi.config.InterfaceAddress;
-import org.onosproject.routingapi.config.RoutingConfigurationService;
+import org.onosproject.routing.config.BgpPeer;
+import org.onosproject.routing.config.BgpSpeaker;
+import org.onosproject.routing.config.Interface;
+import org.onosproject.routing.config.InterfaceAddress;
+import org.onosproject.routing.config.RoutingConfigurationService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/apps/sdnip/src/main/java/org/onosproject/sdnip/SdnIp.java b/apps/sdnip/src/main/java/org/onosproject/sdnip/SdnIp.java
index cf6280d..641559d 100644
--- a/apps/sdnip/src/main/java/org/onosproject/sdnip/SdnIp.java
+++ b/apps/sdnip/src/main/java/org/onosproject/sdnip/SdnIp.java
@@ -30,8 +30,8 @@
 import org.onosproject.core.ApplicationId;
 import org.onosproject.core.CoreService;
 import org.onosproject.net.intent.IntentService;
-import org.onosproject.routingapi.RoutingService;
-import org.onosproject.routingapi.config.RoutingConfigurationService;
+import org.onosproject.routing.RoutingService;
+import org.onosproject.routing.config.RoutingConfigurationService;
 import org.slf4j.Logger;
 
 import static org.slf4j.LoggerFactory.getLogger;
diff --git a/apps/sdnip/src/test/java/org/onosproject/sdnip/IntentSyncTest.java b/apps/sdnip/src/test/java/org/onosproject/sdnip/IntentSyncTest.java
index ffe839f..91754c5 100644
--- a/apps/sdnip/src/test/java/org/onosproject/sdnip/IntentSyncTest.java
+++ b/apps/sdnip/src/test/java/org/onosproject/sdnip/IntentSyncTest.java
@@ -41,12 +41,12 @@
 import org.onosproject.net.intent.IntentService;
 import org.onosproject.net.intent.IntentState;
 import org.onosproject.net.intent.MultiPointToSinglePointIntent;
-import org.onosproject.routingapi.FibEntry;
-import org.onosproject.routingapi.FibUpdate;
-import org.onosproject.routingapi.RouteEntry;
-import org.onosproject.routingapi.config.BgpPeer;
-import org.onosproject.routingapi.config.Interface;
-import org.onosproject.routingapi.config.RoutingConfigurationService;
+import org.onosproject.routing.FibEntry;
+import org.onosproject.routing.FibUpdate;
+import org.onosproject.routing.RouteEntry;
+import org.onosproject.routing.config.BgpPeer;
+import org.onosproject.routing.config.Interface;
+import org.onosproject.routing.config.RoutingConfigurationService;
 import org.onosproject.sdnip.IntentSynchronizer.IntentKey;
 
 import java.util.Collections;
diff --git a/apps/sdnip/src/test/java/org/onosproject/sdnip/PeerConnectivityManagerTest.java b/apps/sdnip/src/test/java/org/onosproject/sdnip/PeerConnectivityManagerTest.java
index b3678c4..bc0972f 100644
--- a/apps/sdnip/src/test/java/org/onosproject/sdnip/PeerConnectivityManagerTest.java
+++ b/apps/sdnip/src/test/java/org/onosproject/sdnip/PeerConnectivityManagerTest.java
@@ -40,11 +40,11 @@
 import org.onosproject.net.intent.Intent;
 import org.onosproject.net.intent.IntentService;
 import org.onosproject.net.intent.PointToPointIntent;
-import org.onosproject.routingapi.config.BgpPeer;
-import org.onosproject.routingapi.config.BgpSpeaker;
-import org.onosproject.routingapi.config.Interface;
-import org.onosproject.routingapi.config.InterfaceAddress;
-import org.onosproject.routingapi.config.RoutingConfigurationService;
+import org.onosproject.routing.config.BgpPeer;
+import org.onosproject.routing.config.BgpSpeaker;
+import org.onosproject.routing.config.Interface;
+import org.onosproject.routing.config.InterfaceAddress;
+import org.onosproject.routing.config.RoutingConfigurationService;
 
 import java.util.ArrayList;
 import java.util.Collections;