Renamed registry and packet packages

net.onrc.onos.registry.controller.* => net.onrc.onos.core.registry.*
net.onrc.onos.packet => net.onrc.onos.core.packet

Change-Id: I595e325a2c0bab709f248dde5d84ff7b6185cf8b
diff --git a/conf/onos.properties b/conf/onos.properties
index 416b25a..0f7256e 100644
--- a/conf/onos.properties
+++ b/conf/onos.properties
@@ -5,7 +5,7 @@
 net.onrc.onos.core.flowprogrammer.FlowProgrammer,\
 net.onrc.onos.core.intent.runtime.PathCalcRuntimeModule,\
 net.onrc.onos.core.intent.runtime.PlanInstallModule,\
-net.onrc.onos.registry.controller.ZookeeperRegistry
+net.onrc.onos.core.registry.ZookeeperRegistry
 net.floodlightcontroller.restserver.RestApiServer.port = 8080
 net.floodlightcontroller.core.FloodlightProvider.openflowport = 6633
 net.floodlightcontroller.core.FloodlightProvider.workerthreads = 16
diff --git a/src/main/java/net/floodlightcontroller/core/FloodlightProvider.java b/src/main/java/net/floodlightcontroller/core/FloodlightProvider.java
index b6b9796..0790c17 100644
--- a/src/main/java/net/floodlightcontroller/core/FloodlightProvider.java
+++ b/src/main/java/net/floodlightcontroller/core/FloodlightProvider.java
@@ -13,7 +13,7 @@
 import net.floodlightcontroller.restserver.IRestApiService;
 import net.floodlightcontroller.threadpool.IThreadPoolService;
 import net.onrc.onos.core.linkdiscovery.ILinkDiscoveryService;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
+import net.onrc.onos.core.registry.IControllerRegistryService;
 
 public class FloodlightProvider implements IFloodlightModule {
     Controller controller;
diff --git a/src/main/java/net/floodlightcontroller/core/IFloodlightProviderService.java b/src/main/java/net/floodlightcontroller/core/IFloodlightProviderService.java
index 4a49488..08e06d9 100644
--- a/src/main/java/net/floodlightcontroller/core/IFloodlightProviderService.java
+++ b/src/main/java/net/floodlightcontroller/core/IFloodlightProviderService.java
@@ -21,7 +21,7 @@
 import java.util.Map;
 
 import net.floodlightcontroller.core.module.IFloodlightService;
-import net.onrc.onos.packet.Ethernet;
+import net.onrc.onos.core.packet.Ethernet;
 
 import org.openflow.protocol.OFMessage;
 import org.openflow.protocol.OFType;
diff --git a/src/main/java/net/floodlightcontroller/core/internal/Controller.java b/src/main/java/net/floodlightcontroller/core/internal/Controller.java
index 512cbe0..c5ebbc5 100644
--- a/src/main/java/net/floodlightcontroller/core/internal/Controller.java
+++ b/src/main/java/net/floodlightcontroller/core/internal/Controller.java
@@ -61,10 +61,10 @@
 import net.floodlightcontroller.threadpool.IThreadPoolService;
 import net.onrc.onos.core.linkdiscovery.ILinkDiscoveryService;
 import net.onrc.onos.core.main.IOFSwitchPortListener;
-import net.onrc.onos.packet.Ethernet;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
-import net.onrc.onos.registry.controller.IControllerRegistryService.ControlChangeCallback;
-import net.onrc.onos.registry.controller.RegistryException;
+import net.onrc.onos.core.packet.Ethernet;
+import net.onrc.onos.core.registry.IControllerRegistryService;
+import net.onrc.onos.core.registry.RegistryException;
+import net.onrc.onos.core.registry.IControllerRegistryService.ControlChangeCallback;
 
 import org.jboss.netty.bootstrap.ServerBootstrap;
 import org.jboss.netty.buffer.ChannelBuffer;
diff --git a/src/main/java/net/floodlightcontroller/core/web/serializers/IPv4Serializer.java b/src/main/java/net/floodlightcontroller/core/web/serializers/IPv4Serializer.java
index 09fa347..1bd7caf 100644
--- a/src/main/java/net/floodlightcontroller/core/web/serializers/IPv4Serializer.java
+++ b/src/main/java/net/floodlightcontroller/core/web/serializers/IPv4Serializer.java
@@ -19,7 +19,7 @@
 
 import java.io.IOException;
 
-import net.onrc.onos.packet.IPv4;
+import net.onrc.onos.core.packet.IPv4;
 
 import org.codehaus.jackson.JsonGenerator;
 import org.codehaus.jackson.JsonProcessingException;
diff --git a/src/main/java/net/onrc/onos/apps/bgproute/BgpRoute.java b/src/main/java/net/onrc/onos/apps/bgproute/BgpRoute.java
index aed82b3..7149262 100644
--- a/src/main/java/net/onrc/onos/apps/bgproute/BgpRoute.java
+++ b/src/main/java/net/onrc/onos/apps/bgproute/BgpRoute.java
@@ -32,6 +32,8 @@
 import net.onrc.onos.core.linkdiscovery.ILinkDiscoveryService;
 import net.onrc.onos.core.linkdiscovery.ILinkDiscovery.LDUpdate;
 import net.onrc.onos.core.main.config.IConfigInfoService;
+import net.onrc.onos.core.packet.Ethernet;
+import net.onrc.onos.core.packet.IPv4;
 import net.onrc.onos.core.util.CallerId;
 import net.onrc.onos.core.util.DataPath;
 import net.onrc.onos.core.util.Dpid;
@@ -46,8 +48,6 @@
 import net.onrc.onos.core.util.IPv4Net;
 import net.onrc.onos.core.util.Port;
 import net.onrc.onos.core.util.SwitchPort;
-import net.onrc.onos.packet.Ethernet;
-import net.onrc.onos.packet.IPv4;
 import net.sf.json.JSONArray;
 import net.sf.json.JSONObject;
 import net.sf.json.JSONSerializer;
diff --git a/src/main/java/net/onrc/onos/apps/forwarding/Forwarding.java b/src/main/java/net/onrc/onos/apps/forwarding/Forwarding.java
index 1b0c107..b44deda 100644
--- a/src/main/java/net/onrc/onos/apps/forwarding/Forwarding.java
+++ b/src/main/java/net/onrc/onos/apps/forwarding/Forwarding.java
@@ -35,6 +35,8 @@
 import net.onrc.onos.core.intent.Intent.IntentState;
 import net.onrc.onos.core.intent.runtime.IPathCalcRuntimeService;
 import net.onrc.onos.core.intent.runtime.IntentStateList;
+import net.onrc.onos.core.packet.Ethernet;
+import net.onrc.onos.core.registry.IControllerRegistryService;
 import net.onrc.onos.core.topology.Device;
 import net.onrc.onos.core.topology.INetworkGraphService;
 import net.onrc.onos.core.topology.LinkEvent;
@@ -44,8 +46,6 @@
 import net.onrc.onos.core.util.FlowPath;
 import net.onrc.onos.core.util.Port;
 import net.onrc.onos.core.util.SwitchPort;
-import net.onrc.onos.packet.Ethernet;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
 
 import org.openflow.protocol.OFMessage;
 import org.openflow.protocol.OFPacketIn;
diff --git a/src/main/java/net/onrc/onos/apps/proxyarp/ProxyArpManager.java b/src/main/java/net/onrc/onos/apps/proxyarp/ProxyArpManager.java
index 22a8729..2b4eae4 100644
--- a/src/main/java/net/onrc/onos/apps/proxyarp/ProxyArpManager.java
+++ b/src/main/java/net/onrc/onos/apps/proxyarp/ProxyArpManager.java
@@ -29,6 +29,9 @@
 import net.onrc.onos.core.devicemanager.IOnosDeviceService;
 import net.onrc.onos.core.flowprogrammer.IFlowPusherService;
 import net.onrc.onos.core.main.config.IConfigInfoService;
+import net.onrc.onos.core.packet.ARP;
+import net.onrc.onos.core.packet.Ethernet;
+import net.onrc.onos.core.packet.IPv4;
 import net.onrc.onos.core.topology.Device;
 import net.onrc.onos.core.topology.INetworkGraphService;
 import net.onrc.onos.core.topology.NetworkGraph;
@@ -36,9 +39,6 @@
 import net.onrc.onos.core.util.Dpid;
 import net.onrc.onos.core.util.Port;
 import net.onrc.onos.core.util.SwitchPort;
-import net.onrc.onos.packet.ARP;
-import net.onrc.onos.packet.Ethernet;
-import net.onrc.onos.packet.IPv4;
 
 import org.openflow.protocol.OFMessage;
 import org.openflow.protocol.OFPacketIn;
diff --git a/src/main/java/net/onrc/onos/core/devicemanager/OnosDevice.java b/src/main/java/net/onrc/onos/core/devicemanager/OnosDevice.java
index 4e6a8dc..4ff17a3 100644
--- a/src/main/java/net/onrc/onos/core/devicemanager/OnosDevice.java
+++ b/src/main/java/net/onrc/onos/core/devicemanager/OnosDevice.java
@@ -21,7 +21,7 @@
 import java.util.Date;
 
 import net.floodlightcontroller.util.MACAddress;
-import net.onrc.onos.packet.IPv4;
+import net.onrc.onos.core.packet.IPv4;
 
 /**
  * An entity on the network is a visible trace of a device that corresponds
diff --git a/src/main/java/net/onrc/onos/core/devicemanager/OnosDeviceManager.java b/src/main/java/net/onrc/onos/core/devicemanager/OnosDeviceManager.java
index 9f5fcdb..cd4fa0d 100644
--- a/src/main/java/net/onrc/onos/core/devicemanager/OnosDeviceManager.java
+++ b/src/main/java/net/onrc/onos/core/devicemanager/OnosDeviceManager.java
@@ -27,13 +27,13 @@
 import net.onrc.onos.core.datagrid.IDatagridService;
 import net.onrc.onos.core.datagrid.IEventChannel;
 import net.onrc.onos.core.datagrid.IEventChannelListener;
+import net.onrc.onos.core.packet.ARP;
+import net.onrc.onos.core.packet.DHCP;
+import net.onrc.onos.core.packet.Ethernet;
+import net.onrc.onos.core.packet.IPv4;
+import net.onrc.onos.core.packet.UDP;
 import net.onrc.onos.core.topology.INetworkGraphService;
 import net.onrc.onos.core.topology.NetworkGraph;
-import net.onrc.onos.packet.ARP;
-import net.onrc.onos.packet.DHCP;
-import net.onrc.onos.packet.Ethernet;
-import net.onrc.onos.packet.IPv4;
-import net.onrc.onos.packet.UDP;
 
 import org.openflow.protocol.OFMessage;
 import org.openflow.protocol.OFPacketIn;
diff --git a/src/main/java/net/onrc/onos/core/flowprogrammer/FlowProgrammer.java b/src/main/java/net/onrc/onos/core/flowprogrammer/FlowProgrammer.java
index d30c10f..5624b00 100644
--- a/src/main/java/net/onrc/onos/core/flowprogrammer/FlowProgrammer.java
+++ b/src/main/java/net/onrc/onos/core/flowprogrammer/FlowProgrammer.java
@@ -22,8 +22,8 @@
 import net.floodlightcontroller.core.module.IFloodlightService;
 import net.floodlightcontroller.restserver.IRestApiService;
 import net.onrc.onos.core.flowprogrammer.web.FlowProgrammerWebRoutable;
+import net.onrc.onos.core.registry.IControllerRegistryService;
 import net.onrc.onos.core.util.FlowEntryId;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
 
 /**
  * FlowProgrammer is a module responsible to maintain flows installed to switches.
diff --git a/src/main/java/net/onrc/onos/core/intent/runtime/PathCalcRuntimeModule.java b/src/main/java/net/onrc/onos/core/intent/runtime/PathCalcRuntimeModule.java
index e773cf8..baecd64 100755
--- a/src/main/java/net/onrc/onos/core/intent/runtime/PathCalcRuntimeModule.java
+++ b/src/main/java/net/onrc/onos/core/intent/runtime/PathCalcRuntimeModule.java
@@ -29,13 +29,13 @@
 import net.onrc.onos.core.intent.ShortestPathIntent;
 import net.onrc.onos.core.intent.Intent.IntentState;
 import net.onrc.onos.core.intent.IntentOperation.Operator;
+import net.onrc.onos.core.registry.IControllerRegistryService;
 import net.onrc.onos.core.topology.DeviceEvent;
 import net.onrc.onos.core.topology.INetworkGraphListener;
 import net.onrc.onos.core.topology.INetworkGraphService;
 import net.onrc.onos.core.topology.LinkEvent;
 import net.onrc.onos.core.topology.PortEvent;
 import net.onrc.onos.core.topology.SwitchEvent;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
 
 /**
  * @author Toshio Koide (t-koide@onlab.us)
diff --git a/src/main/java/net/onrc/onos/core/intent/runtime/PersistIntent.java b/src/main/java/net/onrc/onos/core/intent/runtime/PersistIntent.java
index 285c1f0..8efded2 100755
--- a/src/main/java/net/onrc/onos/core/intent/runtime/PersistIntent.java
+++ b/src/main/java/net/onrc/onos/core/intent/runtime/PersistIntent.java
@@ -18,11 +18,11 @@
 import net.onrc.onos.core.datastore.IKVTable;
 import net.onrc.onos.core.datastore.ObjectExistsException;
 import net.onrc.onos.core.intent.IntentOperationList;
+import net.onrc.onos.core.registry.IControllerRegistryService;
+import net.onrc.onos.core.registry.IdBlock;
 import net.onrc.onos.core.topology.INetworkGraphService;
 import net.onrc.onos.core.topology.NetworkGraph;
 import net.onrc.onos.core.util.serializers.KryoFactory;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
-import net.onrc.onos.registry.controller.IdBlock;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/src/main/java/net/onrc/onos/core/linkdiscovery/internal/LinkDiscoveryManager.java b/src/main/java/net/onrc/onos/core/linkdiscovery/internal/LinkDiscoveryManager.java
index a9879f2..489dbdd 100644
--- a/src/main/java/net/onrc/onos/core/linkdiscovery/internal/LinkDiscoveryManager.java
+++ b/src/main/java/net/onrc/onos/core/linkdiscovery/internal/LinkDiscoveryManager.java
@@ -66,12 +66,12 @@
 import net.onrc.onos.core.linkdiscovery.ILinkDiscovery.UpdateOperation;
 import net.onrc.onos.core.linkdiscovery.web.LinkDiscoveryWebRoutable;
 import net.onrc.onos.core.main.IOnosRemoteSwitch;
-import net.onrc.onos.packet.BSN;
-import net.onrc.onos.packet.Ethernet;
-import net.onrc.onos.packet.IPv4;
-import net.onrc.onos.packet.LLDP;
-import net.onrc.onos.packet.LLDPTLV;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
+import net.onrc.onos.core.packet.BSN;
+import net.onrc.onos.core.packet.Ethernet;
+import net.onrc.onos.core.packet.IPv4;
+import net.onrc.onos.core.packet.LLDP;
+import net.onrc.onos.core.packet.LLDPTLV;
+import net.onrc.onos.core.registry.IControllerRegistryService;
 
 import org.openflow.protocol.OFMessage;
 import org.openflow.protocol.OFPacketIn;
diff --git a/src/main/java/net/onrc/onos/packet/ARP.java b/src/main/java/net/onrc/onos/core/packet/ARP.java
similarity index 99%
rename from src/main/java/net/onrc/onos/packet/ARP.java
rename to src/main/java/net/onrc/onos/core/packet/ARP.java
index 2765f7d..a2e25c3 100644
--- a/src/main/java/net/onrc/onos/packet/ARP.java
+++ b/src/main/java/net/onrc/onos/core/packet/ARP.java
@@ -15,7 +15,7 @@
 *    under the License.
 **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.nio.ByteBuffer;
 import java.util.Arrays;
diff --git a/src/main/java/net/onrc/onos/packet/BPDU.java b/src/main/java/net/onrc/onos/core/packet/BPDU.java
similarity index 98%
rename from src/main/java/net/onrc/onos/packet/BPDU.java
rename to src/main/java/net/onrc/onos/core/packet/BPDU.java
index 908411b..1dc7296 100644
--- a/src/main/java/net/onrc/onos/packet/BPDU.java
+++ b/src/main/java/net/onrc/onos/core/packet/BPDU.java
@@ -15,7 +15,7 @@
 *    under the License.
 **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.nio.ByteBuffer;
 
diff --git a/src/main/java/net/onrc/onos/packet/BSN.java b/src/main/java/net/onrc/onos/core/packet/BSN.java
similarity index 98%
rename from src/main/java/net/onrc/onos/packet/BSN.java
rename to src/main/java/net/onrc/onos/core/packet/BSN.java
index a8c7dc0..fead254 100644
--- a/src/main/java/net/onrc/onos/packet/BSN.java
+++ b/src/main/java/net/onrc/onos/core/packet/BSN.java
@@ -17,7 +17,7 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.nio.ByteBuffer;
 import java.util.HashMap;
diff --git a/src/main/java/net/onrc/onos/packet/BSNPROBE.java b/src/main/java/net/onrc/onos/core/packet/BSNPROBE.java
similarity index 99%
rename from src/main/java/net/onrc/onos/packet/BSNPROBE.java
rename to src/main/java/net/onrc/onos/core/packet/BSNPROBE.java
index 0519208..941a240 100644
--- a/src/main/java/net/onrc/onos/packet/BSNPROBE.java
+++ b/src/main/java/net/onrc/onos/core/packet/BSNPROBE.java
@@ -17,7 +17,7 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.nio.ByteBuffer;
 import java.util.Arrays;
diff --git a/src/main/java/net/onrc/onos/packet/BasePacket.java b/src/main/java/net/onrc/onos/core/packet/BasePacket.java
similarity index 98%
rename from src/main/java/net/onrc/onos/packet/BasePacket.java
rename to src/main/java/net/onrc/onos/core/packet/BasePacket.java
index 6d91640..d3b382b 100644
--- a/src/main/java/net/onrc/onos/packet/BasePacket.java
+++ b/src/main/java/net/onrc/onos/core/packet/BasePacket.java
@@ -15,7 +15,7 @@
 *    under the License.
 **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 
 /**
diff --git a/src/main/java/net/onrc/onos/packet/DHCP.java b/src/main/java/net/onrc/onos/core/packet/DHCP.java
similarity index 99%
rename from src/main/java/net/onrc/onos/packet/DHCP.java
rename to src/main/java/net/onrc/onos/core/packet/DHCP.java
index 2e71ec8..16cc22f 100644
--- a/src/main/java/net/onrc/onos/packet/DHCP.java
+++ b/src/main/java/net/onrc/onos/core/packet/DHCP.java
@@ -15,7 +15,7 @@
 *    under the License.
 **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.io.UnsupportedEncodingException;
 import java.nio.ByteBuffer;
diff --git a/src/main/java/net/onrc/onos/packet/DHCPOption.java b/src/main/java/net/onrc/onos/core/packet/DHCPOption.java
similarity index 98%
rename from src/main/java/net/onrc/onos/packet/DHCPOption.java
rename to src/main/java/net/onrc/onos/core/packet/DHCPOption.java
index 539fa99..4681e0b 100644
--- a/src/main/java/net/onrc/onos/packet/DHCPOption.java
+++ b/src/main/java/net/onrc/onos/core/packet/DHCPOption.java
@@ -15,7 +15,7 @@
 *    under the License.
 **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.util.Arrays;
 
diff --git a/src/main/java/net/onrc/onos/packet/DHCPPacketType.java b/src/main/java/net/onrc/onos/core/packet/DHCPPacketType.java
similarity index 98%
rename from src/main/java/net/onrc/onos/packet/DHCPPacketType.java
rename to src/main/java/net/onrc/onos/core/packet/DHCPPacketType.java
index a01a2a2..d68c22f 100644
--- a/src/main/java/net/onrc/onos/packet/DHCPPacketType.java
+++ b/src/main/java/net/onrc/onos/core/packet/DHCPPacketType.java
@@ -15,7 +15,7 @@
 *    under the License.
 **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 public enum DHCPPacketType {
     // From RFC 1533
diff --git a/src/main/java/net/onrc/onos/packet/Data.java b/src/main/java/net/onrc/onos/core/packet/Data.java
similarity index 98%
rename from src/main/java/net/onrc/onos/packet/Data.java
rename to src/main/java/net/onrc/onos/core/packet/Data.java
index ac1aa42..e8617ad 100644
--- a/src/main/java/net/onrc/onos/packet/Data.java
+++ b/src/main/java/net/onrc/onos/core/packet/Data.java
@@ -15,7 +15,7 @@
 *    under the License.
 **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.util.Arrays;
 
diff --git a/src/main/java/net/onrc/onos/packet/Ethernet.java b/src/main/java/net/onrc/onos/core/packet/Ethernet.java
similarity index 99%
rename from src/main/java/net/onrc/onos/packet/Ethernet.java
rename to src/main/java/net/onrc/onos/core/packet/Ethernet.java
index c884129..be37380 100644
--- a/src/main/java/net/onrc/onos/packet/Ethernet.java
+++ b/src/main/java/net/onrc/onos/core/packet/Ethernet.java
@@ -15,7 +15,7 @@
 *    under the License.
 **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.nio.ByteBuffer;
 import java.util.Arrays;
diff --git a/src/main/java/net/onrc/onos/packet/ICMP.java b/src/main/java/net/onrc/onos/core/packet/ICMP.java
similarity index 98%
rename from src/main/java/net/onrc/onos/packet/ICMP.java
rename to src/main/java/net/onrc/onos/core/packet/ICMP.java
index f66b163..b575878 100644
--- a/src/main/java/net/onrc/onos/packet/ICMP.java
+++ b/src/main/java/net/onrc/onos/core/packet/ICMP.java
@@ -15,7 +15,7 @@
 *    under the License.
 **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.nio.ByteBuffer;
 
diff --git a/src/main/java/net/onrc/onos/packet/IPacket.java b/src/main/java/net/onrc/onos/core/packet/IPacket.java
similarity index 97%
rename from src/main/java/net/onrc/onos/packet/IPacket.java
rename to src/main/java/net/onrc/onos/core/packet/IPacket.java
index cb48f88..0cfc51f 100644
--- a/src/main/java/net/onrc/onos/packet/IPacket.java
+++ b/src/main/java/net/onrc/onos/core/packet/IPacket.java
@@ -15,7 +15,7 @@
 *    under the License.
 **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 /**
 *
diff --git a/src/main/java/net/onrc/onos/packet/IPv4.java b/src/main/java/net/onrc/onos/core/packet/IPv4.java
similarity index 99%
rename from src/main/java/net/onrc/onos/packet/IPv4.java
rename to src/main/java/net/onrc/onos/core/packet/IPv4.java
index 9dc5ec2..7f9db1a 100644
--- a/src/main/java/net/onrc/onos/packet/IPv4.java
+++ b/src/main/java/net/onrc/onos/core/packet/IPv4.java
@@ -18,7 +18,7 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.nio.ByteBuffer;
 import java.util.Arrays;
diff --git a/src/main/java/net/onrc/onos/packet/LLC.java b/src/main/java/net/onrc/onos/core/packet/LLC.java
similarity index 97%
rename from src/main/java/net/onrc/onos/packet/LLC.java
rename to src/main/java/net/onrc/onos/core/packet/LLC.java
index 7ff4f56..c4f0c27 100644
--- a/src/main/java/net/onrc/onos/packet/LLC.java
+++ b/src/main/java/net/onrc/onos/core/packet/LLC.java
@@ -15,7 +15,7 @@
 *    under the License.
 **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.nio.ByteBuffer;
 
diff --git a/src/main/java/net/onrc/onos/packet/LLDP.java b/src/main/java/net/onrc/onos/core/packet/LLDP.java
similarity index 99%
rename from src/main/java/net/onrc/onos/packet/LLDP.java
rename to src/main/java/net/onrc/onos/core/packet/LLDP.java
index 0e3cb2f..307a052 100644
--- a/src/main/java/net/onrc/onos/packet/LLDP.java
+++ b/src/main/java/net/onrc/onos/core/packet/LLDP.java
@@ -18,7 +18,7 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.nio.ByteBuffer;
 import java.util.ArrayList;
diff --git a/src/main/java/net/onrc/onos/packet/LLDPOrganizationalTLV.java b/src/main/java/net/onrc/onos/core/packet/LLDPOrganizationalTLV.java
similarity index 99%
rename from src/main/java/net/onrc/onos/packet/LLDPOrganizationalTLV.java
rename to src/main/java/net/onrc/onos/core/packet/LLDPOrganizationalTLV.java
index 754875c..f3cd655 100644
--- a/src/main/java/net/onrc/onos/packet/LLDPOrganizationalTLV.java
+++ b/src/main/java/net/onrc/onos/core/packet/LLDPOrganizationalTLV.java
@@ -12,7 +12,7 @@
  *    under the License.
  **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.nio.ByteBuffer;
 import java.nio.charset.Charset;
diff --git a/src/main/java/net/onrc/onos/packet/LLDPTLV.java b/src/main/java/net/onrc/onos/core/packet/LLDPTLV.java
similarity index 98%
rename from src/main/java/net/onrc/onos/packet/LLDPTLV.java
rename to src/main/java/net/onrc/onos/core/packet/LLDPTLV.java
index fe361cb..d7bcc68 100644
--- a/src/main/java/net/onrc/onos/packet/LLDPTLV.java
+++ b/src/main/java/net/onrc/onos/core/packet/LLDPTLV.java
@@ -15,7 +15,7 @@
 *    under the License.
 **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.nio.ByteBuffer;
 import java.util.Arrays;
diff --git a/src/main/java/net/onrc/onos/packet/TCP.java b/src/main/java/net/onrc/onos/core/packet/TCP.java
similarity index 99%
rename from src/main/java/net/onrc/onos/packet/TCP.java
rename to src/main/java/net/onrc/onos/core/packet/TCP.java
index 505ada2..7eb78bd 100644
--- a/src/main/java/net/onrc/onos/packet/TCP.java
+++ b/src/main/java/net/onrc/onos/core/packet/TCP.java
@@ -15,7 +15,7 @@
 *    under the License.
 **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.nio.ByteBuffer;
 
diff --git a/src/main/java/net/onrc/onos/packet/UDP.java b/src/main/java/net/onrc/onos/core/packet/UDP.java
similarity index 99%
rename from src/main/java/net/onrc/onos/packet/UDP.java
rename to src/main/java/net/onrc/onos/core/packet/UDP.java
index 88ef883..950afaf 100644
--- a/src/main/java/net/onrc/onos/packet/UDP.java
+++ b/src/main/java/net/onrc/onos/core/packet/UDP.java
@@ -15,7 +15,7 @@
 *    under the License.
 **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import java.nio.ByteBuffer;
 import java.util.HashMap;
diff --git a/src/main/java/net/onrc/onos/registry/controller/ControllerRegistryEntry.java b/src/main/java/net/onrc/onos/core/registry/ControllerRegistryEntry.java
similarity index 92%
rename from src/main/java/net/onrc/onos/registry/controller/ControllerRegistryEntry.java
rename to src/main/java/net/onrc/onos/core/registry/ControllerRegistryEntry.java
index 69fdf0b..a4eee8a 100644
--- a/src/main/java/net/onrc/onos/registry/controller/ControllerRegistryEntry.java
+++ b/src/main/java/net/onrc/onos/core/registry/ControllerRegistryEntry.java
@@ -1,4 +1,4 @@
-package net.onrc.onos.registry.controller;
+package net.onrc.onos.core.registry;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 
diff --git a/src/main/java/net/onrc/onos/registry/controller/ControllerService.java b/src/main/java/net/onrc/onos/core/registry/ControllerService.java
similarity index 90%
rename from src/main/java/net/onrc/onos/registry/controller/ControllerService.java
rename to src/main/java/net/onrc/onos/core/registry/ControllerService.java
index c74e85d..e1e15e9 100644
--- a/src/main/java/net/onrc/onos/registry/controller/ControllerService.java
+++ b/src/main/java/net/onrc/onos/core/registry/ControllerService.java
@@ -1,4 +1,4 @@
-package net.onrc.onos.registry.controller;
+package net.onrc.onos.core.registry;
 
 
 
diff --git a/src/main/java/net/onrc/onos/registry/controller/IControllerRegistryService.java b/src/main/java/net/onrc/onos/core/registry/IControllerRegistryService.java
similarity index 98%
rename from src/main/java/net/onrc/onos/registry/controller/IControllerRegistryService.java
rename to src/main/java/net/onrc/onos/core/registry/IControllerRegistryService.java
index 55802b0..e271754 100755
--- a/src/main/java/net/onrc/onos/registry/controller/IControllerRegistryService.java
+++ b/src/main/java/net/onrc/onos/core/registry/IControllerRegistryService.java
@@ -1,4 +1,4 @@
-package net.onrc.onos.registry.controller;
+package net.onrc.onos.core.registry;
 
 import java.util.Collection;
 import java.util.List;
diff --git a/src/main/java/net/onrc/onos/registry/controller/IdBlock.java b/src/main/java/net/onrc/onos/core/registry/IdBlock.java
similarity index 91%
rename from src/main/java/net/onrc/onos/registry/controller/IdBlock.java
rename to src/main/java/net/onrc/onos/core/registry/IdBlock.java
index 64b2af8..deb02bf 100644
--- a/src/main/java/net/onrc/onos/registry/controller/IdBlock.java
+++ b/src/main/java/net/onrc/onos/core/registry/IdBlock.java
@@ -1,4 +1,4 @@
-package net.onrc.onos.registry.controller;
+package net.onrc.onos.core.registry;
 
 public class IdBlock {
 	private long start;
diff --git a/src/main/java/net/onrc/onos/registry/controller/RegistryException.java b/src/main/java/net/onrc/onos/core/registry/RegistryException.java
similarity index 91%
rename from src/main/java/net/onrc/onos/registry/controller/RegistryException.java
rename to src/main/java/net/onrc/onos/core/registry/RegistryException.java
index fbc68a44..9bf0876 100644
--- a/src/main/java/net/onrc/onos/registry/controller/RegistryException.java
+++ b/src/main/java/net/onrc/onos/core/registry/RegistryException.java
@@ -1,4 +1,4 @@
-package net.onrc.onos.registry.controller;
+package net.onrc.onos.core.registry;
 
 public class RegistryException extends Exception {
 
diff --git a/src/main/java/net/onrc/onos/registry/controller/StandaloneRegistry.java b/src/main/java/net/onrc/onos/core/registry/StandaloneRegistry.java
similarity index 97%
rename from src/main/java/net/onrc/onos/registry/controller/StandaloneRegistry.java
rename to src/main/java/net/onrc/onos/core/registry/StandaloneRegistry.java
index d581590..88125ed 100755
--- a/src/main/java/net/onrc/onos/registry/controller/StandaloneRegistry.java
+++ b/src/main/java/net/onrc/onos/core/registry/StandaloneRegistry.java
@@ -1,4 +1,4 @@
-package net.onrc.onos.registry.controller;
+package net.onrc.onos.core.registry;
 
 import java.util.ArrayList;
 import java.util.Collection;
@@ -13,7 +13,7 @@
 import net.floodlightcontroller.core.module.IFloodlightModule;
 import net.floodlightcontroller.core.module.IFloodlightService;
 import net.floodlightcontroller.restserver.IRestApiService;
-import net.onrc.onos.registry.controller.web.RegistryWebRoutable;
+import net.onrc.onos.core.registry.web.RegistryWebRoutable;
 
 import org.openflow.util.HexString;
 import org.slf4j.Logger;
diff --git a/src/main/java/net/onrc/onos/registry/controller/SwitchLeadershipData.java b/src/main/java/net/onrc/onos/core/registry/SwitchLeadershipData.java
similarity index 82%
rename from src/main/java/net/onrc/onos/registry/controller/SwitchLeadershipData.java
rename to src/main/java/net/onrc/onos/core/registry/SwitchLeadershipData.java
index 0b29964..9ccd47b 100644
--- a/src/main/java/net/onrc/onos/registry/controller/SwitchLeadershipData.java
+++ b/src/main/java/net/onrc/onos/core/registry/SwitchLeadershipData.java
@@ -1,6 +1,6 @@
-package net.onrc.onos.registry.controller;
+package net.onrc.onos.core.registry;
 
-import net.onrc.onos.registry.controller.IControllerRegistryService.ControlChangeCallback;
+import net.onrc.onos.core.registry.IControllerRegistryService.ControlChangeCallback;
 
 import org.apache.curator.framework.recipes.leader.LeaderLatch;
 import org.apache.curator.framework.recipes.leader.LeaderLatchListener;
diff --git a/src/main/java/net/onrc/onos/registry/controller/ZookeeperRegistry.java b/src/main/java/net/onrc/onos/core/registry/ZookeeperRegistry.java
similarity index 99%
rename from src/main/java/net/onrc/onos/registry/controller/ZookeeperRegistry.java
rename to src/main/java/net/onrc/onos/core/registry/ZookeeperRegistry.java
index ef45c64..aa3e98b 100755
--- a/src/main/java/net/onrc/onos/registry/controller/ZookeeperRegistry.java
+++ b/src/main/java/net/onrc/onos/core/registry/ZookeeperRegistry.java
@@ -1,4 +1,4 @@
-package net.onrc.onos.registry.controller;
+package net.onrc.onos.core.registry;
 
 import java.io.IOException;
 import java.util.ArrayList;
@@ -21,7 +21,7 @@
 import net.floodlightcontroller.core.module.IFloodlightModule;
 import net.floodlightcontroller.core.module.IFloodlightService;
 import net.floodlightcontroller.restserver.IRestApiService;
-import net.onrc.onos.registry.controller.web.RegistryWebRoutable;
+import net.onrc.onos.core.registry.web.RegistryWebRoutable;
 
 import org.apache.curator.RetryPolicy;
 import org.apache.curator.framework.CuratorFramework;
diff --git a/src/main/java/net/onrc/onos/registry/controller/web/ControllerRegistryResource.java b/src/main/java/net/onrc/onos/core/registry/web/ControllerRegistryResource.java
similarity index 83%
rename from src/main/java/net/onrc/onos/registry/controller/web/ControllerRegistryResource.java
rename to src/main/java/net/onrc/onos/core/registry/web/ControllerRegistryResource.java
index 676bcb3..94e7e62 100644
--- a/src/main/java/net/onrc/onos/registry/controller/web/ControllerRegistryResource.java
+++ b/src/main/java/net/onrc/onos/core/registry/web/ControllerRegistryResource.java
@@ -1,10 +1,10 @@
-package net.onrc.onos.registry.controller.web;
+package net.onrc.onos.core.registry.web;
 
 import java.util.ArrayList;
 import java.util.Collection;
 
-import net.onrc.onos.registry.controller.IControllerRegistryService;
-import net.onrc.onos.registry.controller.RegistryException;
+import net.onrc.onos.core.registry.IControllerRegistryService;
+import net.onrc.onos.core.registry.RegistryException;
 
 import org.restlet.resource.Get;
 import org.restlet.resource.ServerResource;
diff --git a/src/main/java/net/onrc/onos/registry/controller/web/RegistryWebRoutable.java b/src/main/java/net/onrc/onos/core/registry/web/RegistryWebRoutable.java
similarity index 91%
rename from src/main/java/net/onrc/onos/registry/controller/web/RegistryWebRoutable.java
rename to src/main/java/net/onrc/onos/core/registry/web/RegistryWebRoutable.java
index 77dd72d..e6bf552 100644
--- a/src/main/java/net/onrc/onos/registry/controller/web/RegistryWebRoutable.java
+++ b/src/main/java/net/onrc/onos/core/registry/web/RegistryWebRoutable.java
@@ -1,4 +1,4 @@
-package net.onrc.onos.registry.controller.web;
+package net.onrc.onos.core.registry.web;
 
 import net.floodlightcontroller.restserver.RestletRoutable;
 
diff --git a/src/main/java/net/onrc/onos/registry/controller/web/SwitchRegistryResource.java b/src/main/java/net/onrc/onos/core/registry/web/SwitchRegistryResource.java
similarity index 79%
rename from src/main/java/net/onrc/onos/registry/controller/web/SwitchRegistryResource.java
rename to src/main/java/net/onrc/onos/core/registry/web/SwitchRegistryResource.java
index 21b0c09..60c4798 100644
--- a/src/main/java/net/onrc/onos/registry/controller/web/SwitchRegistryResource.java
+++ b/src/main/java/net/onrc/onos/core/registry/web/SwitchRegistryResource.java
@@ -1,11 +1,11 @@
-package net.onrc.onos.registry.controller.web;
+package net.onrc.onos.core.registry.web;
 
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import net.onrc.onos.registry.controller.ControllerRegistryEntry;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
+import net.onrc.onos.core.registry.ControllerRegistryEntry;
+import net.onrc.onos.core.registry.IControllerRegistryService;
 
 import org.restlet.resource.Get;
 import org.restlet.resource.ServerResource;
diff --git a/src/main/java/net/onrc/onos/core/topology/NetworkGraphModule.java b/src/main/java/net/onrc/onos/core/topology/NetworkGraphModule.java
index 8fa6408..c693df5 100644
--- a/src/main/java/net/onrc/onos/core/topology/NetworkGraphModule.java
+++ b/src/main/java/net/onrc/onos/core/topology/NetworkGraphModule.java
@@ -13,8 +13,8 @@
 import net.floodlightcontroller.core.module.IFloodlightService;
 import net.floodlightcontroller.restserver.IRestApiService;
 import net.onrc.onos.core.datagrid.IDatagridService;
+import net.onrc.onos.core.registry.IControllerRegistryService;
 import net.onrc.onos.core.topology.web.NetworkGraphWebRoutable;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
 
 public class NetworkGraphModule implements IFloodlightModule, INetworkGraphService {
 
diff --git a/src/main/java/net/onrc/onos/core/topology/NetworkGraphPublisher.java b/src/main/java/net/onrc/onos/core/topology/NetworkGraphPublisher.java
index 0727a27..b1e0df7 100644
--- a/src/main/java/net/onrc/onos/core/topology/NetworkGraphPublisher.java
+++ b/src/main/java/net/onrc/onos/core/topology/NetworkGraphPublisher.java
@@ -21,10 +21,10 @@
 import net.onrc.onos.core.linkdiscovery.ILinkDiscoveryListener;
 import net.onrc.onos.core.linkdiscovery.ILinkDiscoveryService;
 import net.onrc.onos.core.main.IOFSwitchPortListener;
+import net.onrc.onos.core.registry.IControllerRegistryService;
+import net.onrc.onos.core.registry.RegistryException;
+import net.onrc.onos.core.registry.IControllerRegistryService.ControlChangeCallback;
 import net.onrc.onos.core.topology.PortEvent.SwitchPort;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
-import net.onrc.onos.registry.controller.IControllerRegistryService.ControlChangeCallback;
-import net.onrc.onos.registry.controller.RegistryException;
 
 import org.openflow.protocol.OFPhysicalPort;
 import org.openflow.util.HexString;
diff --git a/src/main/java/net/onrc/onos/core/topology/TopologyManager.java b/src/main/java/net/onrc/onos/core/topology/TopologyManager.java
index 9699c6c..b12eaae 100644
--- a/src/main/java/net/onrc/onos/core/topology/TopologyManager.java
+++ b/src/main/java/net/onrc/onos/core/topology/TopologyManager.java
@@ -20,9 +20,9 @@
 import net.onrc.onos.core.datastore.topology.KVLink;
 import net.onrc.onos.core.datastore.topology.KVPort;
 import net.onrc.onos.core.datastore.topology.KVSwitch;
+import net.onrc.onos.core.registry.IControllerRegistryService;
 import net.onrc.onos.core.topology.PortEvent.SwitchPort;
 import net.onrc.onos.core.util.EventEntry;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/src/main/java/org/openflow/protocol/OFMessage.java b/src/main/java/org/openflow/protocol/OFMessage.java
index d8fdb59..237e8ac 100644
--- a/src/main/java/org/openflow/protocol/OFMessage.java
+++ b/src/main/java/org/openflow/protocol/OFMessage.java
@@ -25,7 +25,7 @@
 import net.floodlightcontroller.core.FloodlightContext;
 import net.floodlightcontroller.core.IFloodlightProviderService;
 import net.floodlightcontroller.core.IOFSwitch;
-import net.onrc.onos.packet.Ethernet;
+import net.onrc.onos.core.packet.Ethernet;
 
 import org.jboss.netty.buffer.ChannelBuffer;
 import org.openflow.util.HexString;
diff --git a/src/main/resources/META-INF/services/net.floodlightcontroller.core.module.IFloodlightModule b/src/main/resources/META-INF/services/net.floodlightcontroller.core.module.IFloodlightModule
index fa5692d..dff2708 100644
--- a/src/main/resources/META-INF/services/net.floodlightcontroller.core.module.IFloodlightModule
+++ b/src/main/resources/META-INF/services/net.floodlightcontroller.core.module.IFloodlightModule
@@ -12,8 +12,8 @@
 net.onrc.onos.core.datagrid.HazelcastDatagrid
 net.onrc.onos.core.flowprogrammer.FlowProgrammer
 net.onrc.onos.apps.bgproute.BgpRoute
-net.onrc.onos.registry.controller.ZookeeperRegistry
-net.onrc.onos.registry.controller.StandaloneRegistry
+net.onrc.onos.core.registry.ZookeeperRegistry
+net.onrc.onos.core.registry.StandaloneRegistry
 net.onrc.onos.apps.forwarding.Forwarding
 net.onrc.onos.apps.proxyarp.ProxyArpManager
 net.onrc.onos.core.main.config.DefaultConfiguration
diff --git a/src/test/java/net/floodlightcontroller/core/internal/ControllerTest.java b/src/test/java/net/floodlightcontroller/core/internal/ControllerTest.java
index aebe073..8afe34a 100644
--- a/src/test/java/net/floodlightcontroller/core/internal/ControllerTest.java
+++ b/src/test/java/net/floodlightcontroller/core/internal/ControllerTest.java
@@ -58,12 +58,12 @@
 import net.onrc.onos.core.linkdiscovery.ILinkDiscoveryService;
 import net.onrc.onos.core.linkdiscovery.internal.LinkDiscoveryManager;
 import net.onrc.onos.core.main.IOFSwitchPortListener;
-import net.onrc.onos.packet.ARP;
-import net.onrc.onos.packet.Ethernet;
-import net.onrc.onos.packet.IPacket;
-import net.onrc.onos.packet.IPv4;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
-import net.onrc.onos.registry.controller.StandaloneRegistry;
+import net.onrc.onos.core.packet.ARP;
+import net.onrc.onos.core.packet.Ethernet;
+import net.onrc.onos.core.packet.IPacket;
+import net.onrc.onos.core.packet.IPv4;
+import net.onrc.onos.core.registry.IControllerRegistryService;
+import net.onrc.onos.core.registry.StandaloneRegistry;
 
 import org.easymock.Capture;
 import org.easymock.EasyMock;
diff --git a/src/test/java/net/floodlightcontroller/core/test/MockFloodlightProvider.java b/src/test/java/net/floodlightcontroller/core/test/MockFloodlightProvider.java
index 34a3f62..30ade50 100644
--- a/src/test/java/net/floodlightcontroller/core/test/MockFloodlightProvider.java
+++ b/src/test/java/net/floodlightcontroller/core/test/MockFloodlightProvider.java
@@ -42,7 +42,7 @@
 import net.floodlightcontroller.core.module.IFloodlightModule;
 import net.floodlightcontroller.core.module.IFloodlightService;
 import net.floodlightcontroller.core.util.ListenerDispatcher;
-import net.onrc.onos.packet.Ethernet;
+import net.onrc.onos.core.packet.Ethernet;
 
 import org.openflow.protocol.OFMessage;
 import org.openflow.protocol.OFPacketIn;
diff --git a/src/test/java/net/floodlightcontroller/core/test/PacketFactory.java b/src/test/java/net/floodlightcontroller/core/test/PacketFactory.java
index 6d78426..9ab9a40 100644
--- a/src/test/java/net/floodlightcontroller/core/test/PacketFactory.java
+++ b/src/test/java/net/floodlightcontroller/core/test/PacketFactory.java
@@ -4,11 +4,11 @@
 import java.util.List;
 
 import net.floodlightcontroller.util.MACAddress;
-import net.onrc.onos.packet.DHCP;
-import net.onrc.onos.packet.DHCPOption;
-import net.onrc.onos.packet.Ethernet;
-import net.onrc.onos.packet.IPv4;
-import net.onrc.onos.packet.UDP;
+import net.onrc.onos.core.packet.DHCP;
+import net.onrc.onos.core.packet.DHCPOption;
+import net.onrc.onos.core.packet.Ethernet;
+import net.onrc.onos.core.packet.IPv4;
+import net.onrc.onos.core.packet.UDP;
 
 import org.openflow.protocol.OFPacketIn;
 import org.openflow.protocol.OFPacketOut;
diff --git a/src/test/java/net/floodlightcontroller/util/MACAddressTest.java b/src/test/java/net/floodlightcontroller/util/MACAddressTest.java
index ee79566..f59321c 100644
--- a/src/test/java/net/floodlightcontroller/util/MACAddressTest.java
+++ b/src/test/java/net/floodlightcontroller/util/MACAddressTest.java
@@ -50,7 +50,7 @@
         MACAddress.valueOf(new byte[]{0x01, 0x01, 0x02, 0x03, 0x04});
     }
 
-    //  Test data is imported from net.onrc.onos.packet.EthernetTest
+    //  Test data is imported from net.onrc.onos.core.packet.EthernetTest
     @Test
     public void testToLong() {
         assertEquals(
diff --git a/src/test/java/net/onrc/onos/core/intent/runtime/PathCalcRuntimeModuleTest.java b/src/test/java/net/onrc/onos/core/intent/runtime/PathCalcRuntimeModuleTest.java
index 9060a51..24aee76 100644
--- a/src/test/java/net/onrc/onos/core/intent/runtime/PathCalcRuntimeModuleTest.java
+++ b/src/test/java/net/onrc/onos/core/intent/runtime/PathCalcRuntimeModuleTest.java
@@ -15,13 +15,13 @@
 import net.onrc.onos.core.intent.runtime.IntentStateList;
 import net.onrc.onos.core.intent.runtime.PathCalcRuntimeModule;
 import net.onrc.onos.core.intent.runtime.PersistIntent;
+import net.onrc.onos.core.registry.IControllerRegistryService;
 import net.onrc.onos.core.topology.DeviceEvent;
 import net.onrc.onos.core.topology.INetworkGraphListener;
 import net.onrc.onos.core.topology.INetworkGraphService;
 import net.onrc.onos.core.topology.LinkEvent;
 import net.onrc.onos.core.topology.PortEvent;
 import net.onrc.onos.core.topology.SwitchEvent;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
 
 import org.junit.After;
 import org.junit.Before;
diff --git a/src/test/java/net/onrc/onos/core/intent/runtime/UseCaseTest.java b/src/test/java/net/onrc/onos/core/intent/runtime/UseCaseTest.java
index b8afdf2..fe2a863 100755
--- a/src/test/java/net/onrc/onos/core/intent/runtime/UseCaseTest.java
+++ b/src/test/java/net/onrc/onos/core/intent/runtime/UseCaseTest.java
@@ -25,6 +25,7 @@
 import net.onrc.onos.core.intent.runtime.PathCalcRuntimeModule;
 import net.onrc.onos.core.intent.runtime.PersistIntent;
 import net.onrc.onos.core.intent.runtime.PlanCalcRuntime;
+import net.onrc.onos.core.registry.IControllerRegistryService;
 import net.onrc.onos.core.topology.DeviceEvent;
 import net.onrc.onos.core.topology.INetworkGraphListener;
 import net.onrc.onos.core.topology.INetworkGraphService;
@@ -32,7 +33,6 @@
 import net.onrc.onos.core.topology.NetworkGraph;
 import net.onrc.onos.core.topology.PortEvent;
 import net.onrc.onos.core.topology.SwitchEvent;
-import net.onrc.onos.registry.controller.IControllerRegistryService;
 
 import org.junit.After;
 import org.junit.Before;
diff --git a/src/test/java/net/onrc/onos/packet/BSNTest.java b/src/test/java/net/onrc/onos/core/packet/BSNTest.java
similarity index 94%
rename from src/test/java/net/onrc/onos/packet/BSNTest.java
rename to src/test/java/net/onrc/onos/core/packet/BSNTest.java
index a72caef..aff3285 100644
--- a/src/test/java/net/onrc/onos/packet/BSNTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/BSNTest.java
@@ -18,16 +18,16 @@
 /**
  *
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
 import java.util.Arrays;
 
-import net.onrc.onos.packet.BSN;
-import net.onrc.onos.packet.BSNPROBE;
-import net.onrc.onos.packet.Ethernet;
+import net.onrc.onos.core.packet.BSN;
+import net.onrc.onos.core.packet.BSNPROBE;
+import net.onrc.onos.core.packet.Ethernet;
 
 import org.junit.Test;
 
diff --git a/src/test/java/net/onrc/onos/packet/DHCPTest.java b/src/test/java/net/onrc/onos/core/packet/DHCPTest.java
similarity index 99%
rename from src/test/java/net/onrc/onos/packet/DHCPTest.java
rename to src/test/java/net/onrc/onos/core/packet/DHCPTest.java
index cc15bd1..66855d1 100644
--- a/src/test/java/net/onrc/onos/packet/DHCPTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/DHCPTest.java
@@ -18,18 +18,18 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 
 
 import java.util.Arrays;
 import java.util.ListIterator;
 
-import net.onrc.onos.packet.DHCP;
-import net.onrc.onos.packet.DHCPOption;
-import net.onrc.onos.packet.Ethernet;
-import net.onrc.onos.packet.IPv4;
-import net.onrc.onos.packet.UDP;
+import net.onrc.onos.core.packet.DHCP;
+import net.onrc.onos.core.packet.DHCPOption;
+import net.onrc.onos.core.packet.Ethernet;
+import net.onrc.onos.core.packet.IPv4;
+import net.onrc.onos.core.packet.UDP;
 import junit.framework.TestCase;
 
 
diff --git a/src/test/java/net/onrc/onos/packet/EthernetTest.java b/src/test/java/net/onrc/onos/core/packet/EthernetTest.java
similarity index 96%
rename from src/test/java/net/onrc/onos/packet/EthernetTest.java
rename to src/test/java/net/onrc/onos/core/packet/EthernetTest.java
index b22c779..6293a43 100644
--- a/src/test/java/net/onrc/onos/packet/EthernetTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/EthernetTest.java
@@ -18,14 +18,14 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
 import java.util.Arrays;
 
-import net.onrc.onos.packet.Ethernet;
+import net.onrc.onos.core.packet.Ethernet;
 
 import org.junit.Test;
 
diff --git a/src/test/java/net/onrc/onos/packet/ICMPTest.java b/src/test/java/net/onrc/onos/core/packet/ICMPTest.java
similarity index 92%
rename from src/test/java/net/onrc/onos/packet/ICMPTest.java
rename to src/test/java/net/onrc/onos/core/packet/ICMPTest.java
index 73e9cff..e09ae24 100644
--- a/src/test/java/net/onrc/onos/packet/ICMPTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/ICMPTest.java
@@ -18,16 +18,16 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.assertTrue;
 
 import java.util.Arrays;
 
-import net.onrc.onos.packet.Data;
-import net.onrc.onos.packet.ICMP;
-import net.onrc.onos.packet.IPacket;
-import net.onrc.onos.packet.IPv4;
+import net.onrc.onos.core.packet.Data;
+import net.onrc.onos.core.packet.ICMP;
+import net.onrc.onos.core.packet.IPacket;
+import net.onrc.onos.core.packet.IPv4;
 
 import org.junit.Test;
 
diff --git a/src/test/java/net/onrc/onos/packet/IPv4Test.java b/src/test/java/net/onrc/onos/core/packet/IPv4Test.java
similarity index 97%
rename from src/test/java/net/onrc/onos/packet/IPv4Test.java
rename to src/test/java/net/onrc/onos/core/packet/IPv4Test.java
index b81be6f..3c47ffb 100644
--- a/src/test/java/net/onrc/onos/packet/IPv4Test.java
+++ b/src/test/java/net/onrc/onos/core/packet/IPv4Test.java
@@ -18,14 +18,14 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
 import java.util.Arrays;
 
-import net.onrc.onos.packet.IPv4;
+import net.onrc.onos.core.packet.IPv4;
 
 import org.junit.Assert;
 import org.junit.Test;
diff --git a/src/test/java/net/onrc/onos/packet/LLDPOrganizationalTLVTest.java b/src/test/java/net/onrc/onos/core/packet/LLDPOrganizationalTLVTest.java
similarity index 97%
rename from src/test/java/net/onrc/onos/packet/LLDPOrganizationalTLVTest.java
rename to src/test/java/net/onrc/onos/core/packet/LLDPOrganizationalTLVTest.java
index 1a8367c..a887038 100644
--- a/src/test/java/net/onrc/onos/packet/LLDPOrganizationalTLVTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/LLDPOrganizationalTLVTest.java
@@ -12,9 +12,9 @@
  *    under the License.
  **/
 
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
-import net.onrc.onos.packet.LLDPOrganizationalTLV;
+import net.onrc.onos.core.packet.LLDPOrganizationalTLV;
 
 import org.junit.Test;
 
diff --git a/src/test/java/net/onrc/onos/packet/LLDPTest.java b/src/test/java/net/onrc/onos/core/packet/LLDPTest.java
similarity index 92%
rename from src/test/java/net/onrc/onos/packet/LLDPTest.java
rename to src/test/java/net/onrc/onos/core/packet/LLDPTest.java
index c093efb..6ef83e2 100755
--- a/src/test/java/net/onrc/onos/packet/LLDPTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/LLDPTest.java
@@ -18,17 +18,17 @@
 /**
  *
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
 
 import java.util.Arrays;
 
-import net.onrc.onos.packet.Ethernet;
-import net.onrc.onos.packet.IPacket;
-import net.onrc.onos.packet.LLDP;
-import net.onrc.onos.packet.LLDPTLV;
+import net.onrc.onos.core.packet.Ethernet;
+import net.onrc.onos.core.packet.IPacket;
+import net.onrc.onos.core.packet.LLDP;
+import net.onrc.onos.core.packet.LLDPTLV;
 
 import org.junit.Test;
 
diff --git a/src/test/java/net/onrc/onos/packet/PacketTest.java b/src/test/java/net/onrc/onos/core/packet/PacketTest.java
similarity index 94%
rename from src/test/java/net/onrc/onos/packet/PacketTest.java
rename to src/test/java/net/onrc/onos/core/packet/PacketTest.java
index f30c12b..6ca9307 100644
--- a/src/test/java/net/onrc/onos/packet/PacketTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/PacketTest.java
@@ -1,12 +1,12 @@
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.*;
-import net.onrc.onos.packet.ARP;
-import net.onrc.onos.packet.Data;
-import net.onrc.onos.packet.Ethernet;
-import net.onrc.onos.packet.IPacket;
-import net.onrc.onos.packet.IPv4;
-import net.onrc.onos.packet.UDP;
+import net.onrc.onos.core.packet.ARP;
+import net.onrc.onos.core.packet.Data;
+import net.onrc.onos.core.packet.Ethernet;
+import net.onrc.onos.core.packet.IPacket;
+import net.onrc.onos.core.packet.IPv4;
+import net.onrc.onos.core.packet.UDP;
 
 import org.junit.Before;
 import org.junit.Test;
diff --git a/src/test/java/net/onrc/onos/packet/TCPTest.java b/src/test/java/net/onrc/onos/core/packet/TCPTest.java
similarity index 94%
rename from src/test/java/net/onrc/onos/packet/TCPTest.java
rename to src/test/java/net/onrc/onos/core/packet/TCPTest.java
index 03ef8b6..4817a99 100644
--- a/src/test/java/net/onrc/onos/packet/TCPTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/TCPTest.java
@@ -18,15 +18,15 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.assertTrue;
 
 import java.util.Arrays;
 
-import net.onrc.onos.packet.IPacket;
-import net.onrc.onos.packet.IPv4;
-import net.onrc.onos.packet.TCP;
+import net.onrc.onos.core.packet.IPacket;
+import net.onrc.onos.core.packet.IPv4;
+import net.onrc.onos.core.packet.TCP;
 
 import org.junit.Test;
 
diff --git a/src/test/java/net/onrc/onos/packet/UDPTest.java b/src/test/java/net/onrc/onos/core/packet/UDPTest.java
similarity index 90%
rename from src/test/java/net/onrc/onos/packet/UDPTest.java
rename to src/test/java/net/onrc/onos/core/packet/UDPTest.java
index c9081e8..b5eca46 100644
--- a/src/test/java/net/onrc/onos/packet/UDPTest.java
+++ b/src/test/java/net/onrc/onos/core/packet/UDPTest.java
@@ -18,16 +18,16 @@
 /**
  * 
  */
-package net.onrc.onos.packet;
+package net.onrc.onos.core.packet;
 
 import static org.junit.Assert.assertTrue;
 
 import java.util.Arrays;
 
-import net.onrc.onos.packet.Data;
-import net.onrc.onos.packet.IPacket;
-import net.onrc.onos.packet.IPv4;
-import net.onrc.onos.packet.UDP;
+import net.onrc.onos.core.packet.Data;
+import net.onrc.onos.core.packet.IPacket;
+import net.onrc.onos.core.packet.IPv4;
+import net.onrc.onos.core.packet.UDP;
 
 import org.junit.Test;
 
diff --git a/src/test/java/net/onrc/onos/registry/controller/StandaloneRegistryTest.java b/src/test/java/net/onrc/onos/core/registry/StandaloneRegistryTest.java
similarity index 97%
rename from src/test/java/net/onrc/onos/registry/controller/StandaloneRegistryTest.java
rename to src/test/java/net/onrc/onos/core/registry/StandaloneRegistryTest.java
index 7c4a1a0..5b1f59d 100644
--- a/src/test/java/net/onrc/onos/registry/controller/StandaloneRegistryTest.java
+++ b/src/test/java/net/onrc/onos/core/registry/StandaloneRegistryTest.java
@@ -1,4 +1,4 @@
-package net.onrc.onos.registry.controller;
+package net.onrc.onos.core.registry;
 
 import static org.junit.Assert.*;
 
@@ -11,7 +11,11 @@
 import java.util.concurrent.TimeUnit;
 
 import net.floodlightcontroller.core.module.FloodlightModuleContext;
-import net.onrc.onos.registry.controller.IControllerRegistryService.ControlChangeCallback;
+import net.onrc.onos.core.registry.ControllerRegistryEntry;
+import net.onrc.onos.core.registry.IdBlock;
+import net.onrc.onos.core.registry.RegistryException;
+import net.onrc.onos.core.registry.StandaloneRegistry;
+import net.onrc.onos.core.registry.IControllerRegistryService.ControlChangeCallback;
 
 import org.junit.After;
 import org.junit.Before;
diff --git a/src/test/java/net/onrc/onos/registry/controller/ZookeeperRegistryTest.java b/src/test/java/net/onrc/onos/core/registry/ZookeeperRegistryTest.java
similarity index 96%
rename from src/test/java/net/onrc/onos/registry/controller/ZookeeperRegistryTest.java
rename to src/test/java/net/onrc/onos/core/registry/ZookeeperRegistryTest.java
index 774a9d4..06de77e 100644
--- a/src/test/java/net/onrc/onos/registry/controller/ZookeeperRegistryTest.java
+++ b/src/test/java/net/onrc/onos/core/registry/ZookeeperRegistryTest.java
@@ -1,4 +1,4 @@
-package net.onrc.onos.registry.controller;
+package net.onrc.onos.core.registry;
 
 import java.util.ArrayList;
 import java.util.Collection;
@@ -7,8 +7,13 @@
 
 import net.floodlightcontroller.core.module.FloodlightModuleContext;
 import net.floodlightcontroller.test.FloodlightTestCase;
-import net.onrc.onos.registry.controller.StandaloneRegistryTest.LoggingCallback;
-import net.onrc.onos.registry.controller.ZookeeperRegistry.SwitchLeaderListener;
+import net.onrc.onos.core.registry.ControllerRegistryEntry;
+import net.onrc.onos.core.registry.ControllerService;
+import net.onrc.onos.core.registry.IdBlock;
+import net.onrc.onos.core.registry.RegistryException;
+import net.onrc.onos.core.registry.ZookeeperRegistry;
+import net.onrc.onos.core.registry.StandaloneRegistryTest.LoggingCallback;
+import net.onrc.onos.core.registry.ZookeeperRegistry.SwitchLeaderListener;
 
 import org.apache.curator.RetryPolicy;
 import org.apache.curator.framework.CuratorFramework;
@@ -154,8 +159,8 @@
 	}
 
 	/**
-	 * Test if {@link ZookeeperRegistry#requestControl(long, net.onrc.onos.registry.controller.IControllerRegistryService.ControlChangeCallback)}
-	 * correctly take control of specific switch. Because {@link ZookeeperRegistry#requestControl(long, net.onrc.onos.registry.controller.IControllerRegistryService.ControlChangeCallback)}
+	 * Test if {@link ZookeeperRegistry#requestControl(long, net.onrc.onos.core.registry.IControllerRegistryService.ControlChangeCallback)}
+	 * correctly take control of specific switch. Because {@link ZookeeperRegistry#requestControl(long, net.onrc.onos.core.registry.IControllerRegistryService.ControlChangeCallback)}
 	 * doesn't return values, inject mock {@link LeaderLatch} object and verify latch is correctly set up.
 	 * @throws Exception
 	 */