Merge branch 'dev1'
diff --git a/cluster-mgmt/common/onos.properties b/cluster-mgmt/common/onos.properties
index 1828db7..9c3d557 100644
--- a/cluster-mgmt/common/onos.properties
+++ b/cluster-mgmt/common/onos.properties
@@ -8,11 +8,11 @@
 net.floodlightcontroller.counter.CounterStore,\
 net.floodlightcontroller.perfmon.PktInProcessingTime,\
 net.floodlightcontroller.ui.web.StaticWebRoutable,\
-net.floodlightcontroller.onoslistener.OnosPublisher, \
+net.onrc.onos.ofcontroller.onoslistener.OnosPublisher, \
 net.onrc.onos.registry.controller.ZookeeperRegistry
 net.floodlightcontroller.restserver.RestApiServer.port = 8080
 net.floodlightcontroller.core.FloodlightProvider.openflowport = 6633
 net.floodlightcontroller.jython.JythonDebugInterface.port = 6655
 net.floodlightcontroller.forwarding.Forwarding.idletimeout = 5
 net.floodlightcontroller.forwarding.Forwarding.hardtimeout = 0
-net.floodlightcontroller.onoslistener.OnosPublisher.dbconf = /tmp/cassandra.titan
+net.onrc.onos.ofcontroller.onoslistener.OnosPublisher.dbconf = /tmp/cassandra.titan
diff --git a/conf/onos-embedded.properties b/conf/onos-embedded.properties
index 50c36f9..a328d2a 100644
--- a/conf/onos-embedded.properties
+++ b/conf/onos-embedded.properties
@@ -6,13 +6,12 @@
 net.floodlightcontroller.counter.CounterStore,\
 net.floodlightcontroller.perfmon.PktInProcessingTime,\
 net.floodlightcontroller.ui.web.StaticWebRoutable,\
-net.floodlightcontroller.onoslistener.OnosPublisher, \
+net.onrc.onos.ofcontroller.onoslistener.OnosPublisher, \
 net.onrc.onos.registry.controller.ZookeeperRegistry
 net.floodlightcontroller.restserver.RestApiServer.port = 8080
 net.floodlightcontroller.core.FloodlightProvider.openflowport = 6633
 net.floodlightcontroller.core.FloodlightProvider.workerthreads = 48
-net.floodlightcontroller.jython.JythonDebugInterface.port = 6655
 net.floodlightcontroller.forwarding.Forwarding.idletimeout = 5
 net.floodlightcontroller.forwarding.Forwarding.hardtimeout = 0
-net.floodlightcontroller.onoslistener.OnosPublisher.dbconf = conf/titan-embedded.properties
+net.onrc.onos.ofcontroller.onoslistener.OnosPublisher.dbconf = conf/titan-embedded.properties
 
diff --git a/conf/onos.properties b/conf/onos.properties
index d186e54..7e060b7 100644
--- a/conf/onos.properties
+++ b/conf/onos.properties
@@ -6,12 +6,12 @@
 net.floodlightcontroller.counter.CounterStore,\
 net.floodlightcontroller.perfmon.PktInProcessingTime,\
 net.floodlightcontroller.ui.web.StaticWebRoutable,\
-net.floodlightcontroller.onoslistener.OnosPublisher, \
+net.onrc.onos.ofcontroller.onoslistener.OnosPublisher, \
 net.onrc.onos.registry.controller.ZookeeperRegistry
 net.floodlightcontroller.restserver.RestApiServer.port = 8080
 net.floodlightcontroller.core.FloodlightProvider.openflowport = 6633
 net.floodlightcontroller.core.FloodlightProvider.workerthreads = 16
 net.floodlightcontroller.forwarding.Forwarding.idletimeout = 5
 net.floodlightcontroller.forwarding.Forwarding.hardtimeout = 0
-net.floodlightcontroller.onoslistener.OnosPublisher.dbconf = /tmp/cassandra.titan
+net.onrc.onos.ofcontroller.onoslistener.OnosPublisher.dbconf = /tmp/cassandra.titan
 
diff --git a/pom.xml b/pom.xml
index 0957c42..f39e7c2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -133,6 +133,12 @@
       <groupId>com.thinkaurelius.titan</groupId>
       <artifactId>titan-all</artifactId>
       <version>0.2.1</version>
+      <exclusions>
+	<exclusion>
+          <groupId>org.slf4j</groupId>
+          <artifactId>slf4j-log4j12</artifactId>
+	</exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>com.tinkerpop</groupId>
@@ -174,11 +180,6 @@
     </dependency>
     <dependency>
       <groupId>ch.qos.logback</groupId>
-      <artifactId>logback-core</artifactId>
-      <version>1.0.0</version>
-    </dependency>
-    <dependency>
-      <groupId>ch.qos.logback</groupId>
       <artifactId>logback-classic</artifactId>
       <version>1.0.0</version>
       <scope>runtime</scope>
diff --git a/src/main/java/net/floodlightcontroller/bgproute/GatewayRouter.java b/src/main/java/net/floodlightcontroller/bgproute/GatewayRouter.java
deleted file mode 100644
index 56d5243..0000000
--- a/src/main/java/net/floodlightcontroller/bgproute/GatewayRouter.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package net.floodlightcontroller.bgproute;
-
-import net.floodlightcontroller.util.IPv4;
-import net.floodlightcontroller.util.MACAddress;
-import net.floodlightcontroller.util.SwitchPort;
-
-public class GatewayRouter {
-	private SwitchPort attachmentPoint;
-	private MACAddress routerMac;
-	private IPv4 routerIp;
-	
-	//For now, put in the IP and MAC of the SDN domain's router that this 
-	//gateway will be communicating with
-	private MACAddress sdnRouterMac;
-	private IPv4 sdnRouterIp;
-	
-	public GatewayRouter(SwitchPort attachmentPoint, MACAddress routerMac, 
-			IPv4 routerIp, MACAddress sdnRouterMac, IPv4 sdnRouterIp) {
-		this.attachmentPoint = attachmentPoint;
-		this.routerMac = routerMac;
-		this.routerIp = routerIp;
-		this.sdnRouterIp = sdnRouterIp;
-		this.sdnRouterMac = sdnRouterMac;
-	}
-
-	public SwitchPort getAttachmentPoint() {
-		return attachmentPoint;
-	}
-
-	public MACAddress getRouterMac() {
-		return routerMac;
-	}
-
-	public IPv4 getRouterIp() {
-		return routerIp;
-	}
-	
-	//TODO delete if not needed
-	public MACAddress getSdnRouterMac() {
-		return sdnRouterMac;
-	}
-	
-	public IPv4 getSdnRouterIp() {
-		return sdnRouterIp;
-	}
-}
diff --git a/src/main/java/net/floodlightcontroller/core/FloodlightProvider.java b/src/main/java/net/floodlightcontroller/core/FloodlightProvider.java
index cd15927..16fdd19 100644
--- a/src/main/java/net/floodlightcontroller/core/FloodlightProvider.java
+++ b/src/main/java/net/floodlightcontroller/core/FloodlightProvider.java
@@ -10,13 +10,13 @@
 import net.floodlightcontroller.core.module.FloodlightModuleException;
 import net.floodlightcontroller.core.module.IFloodlightModule;
 import net.floodlightcontroller.core.module.IFloodlightService;
-import net.floodlightcontroller.core.INetMapTopologyService.ITopoRouteService;
 import net.floodlightcontroller.counter.ICounterStoreService;
-import net.floodlightcontroller.flowcache.IFlowService;
 import net.floodlightcontroller.perfmon.IPktInProcessingTimeService;
 import net.floodlightcontroller.restserver.IRestApiService;
 import net.floodlightcontroller.storage.IStorageSourceService;
 import net.floodlightcontroller.threadpool.IThreadPoolService;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyService.ITopoRouteService;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
 import net.onrc.onos.registry.controller.IControllerRegistryService;
 
 public class FloodlightProvider implements IFloodlightModule {
diff --git a/src/main/java/net/floodlightcontroller/core/INetMapService.java b/src/main/java/net/floodlightcontroller/core/INetMapService.java
deleted file mode 100644
index fcc542a..0000000
--- a/src/main/java/net/floodlightcontroller/core/INetMapService.java
+++ /dev/null
@@ -1,5 +0,0 @@
-package net.floodlightcontroller.core;
-
-public interface INetMapService {
-
-}
diff --git a/src/main/java/net/floodlightcontroller/core/internal/Controller.java b/src/main/java/net/floodlightcontroller/core/internal/Controller.java
index dc421a4..878427a 100644
--- a/src/main/java/net/floodlightcontroller/core/internal/Controller.java
+++ b/src/main/java/net/floodlightcontroller/core/internal/Controller.java
@@ -54,20 +54,16 @@
 import net.floodlightcontroller.core.IHAListener;
 import net.floodlightcontroller.core.IInfoProvider;
 import net.floodlightcontroller.core.IListener.Command;
-import net.floodlightcontroller.core.INetMapStorage.DM_OPERATION;
-import net.floodlightcontroller.core.INetMapTopologyService.ITopoRouteService;
 import net.floodlightcontroller.core.IOFMessageListener;
 import net.floodlightcontroller.core.IOFSwitch;
 import net.floodlightcontroller.core.IOFSwitchFilter;
 import net.floodlightcontroller.core.IOFSwitchListener;
-import net.floodlightcontroller.core.ISwitchStorage.SwitchState;
 import net.floodlightcontroller.core.annotations.LogMessageDoc;
 import net.floodlightcontroller.core.annotations.LogMessageDocs;
 import net.floodlightcontroller.core.internal.OFChannelState.HandshakeState;
 import net.floodlightcontroller.core.util.ListenerDispatcher;
 import net.floodlightcontroller.core.web.CoreWebRoutable;
 import net.floodlightcontroller.counter.ICounterStoreService;
-import net.floodlightcontroller.flowcache.IFlowService;
 import net.floodlightcontroller.packet.Ethernet;
 import net.floodlightcontroller.perfmon.IPktInProcessingTimeService;
 import net.floodlightcontroller.restserver.IRestApiService;
@@ -77,6 +73,10 @@
 import net.floodlightcontroller.storage.OperatorPredicate;
 import net.floodlightcontroller.storage.StorageException;
 import net.floodlightcontroller.threadpool.IThreadPoolService;
+import net.onrc.onos.ofcontroller.core.INetMapStorage.DM_OPERATION;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyService.ITopoRouteService;
+import net.onrc.onos.ofcontroller.core.ISwitchStorage.SwitchState;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
 import net.onrc.onos.registry.controller.IControllerRegistryService;
 import net.onrc.onos.registry.controller.IControllerRegistryService.ControlChangeCallback;
 import net.onrc.onos.registry.controller.RegistryException;
diff --git a/src/main/java/net/floodlightcontroller/core/web/CoreWebRoutable.java b/src/main/java/net/floodlightcontroller/core/web/CoreWebRoutable.java
index 00b692f..95053bd 100644
--- a/src/main/java/net/floodlightcontroller/core/web/CoreWebRoutable.java
+++ b/src/main/java/net/floodlightcontroller/core/web/CoreWebRoutable.java
@@ -18,9 +18,11 @@
 package net.floodlightcontroller.core.web;
 
 import net.floodlightcontroller.core.module.ModuleLoaderResource;
-import net.floodlightcontroller.linkdiscovery.web.TopoLinksResource;
-import net.floodlightcontroller.devicemanager.web.TopoDevicesResource;
 import net.floodlightcontroller.restserver.RestletRoutable;
+import net.onrc.onos.ofcontroller.core.web.ClearFlowTableResource;
+import net.onrc.onos.ofcontroller.core.web.TopoSwitchesResource;
+import net.onrc.onos.ofcontroller.devicemanager.web.TopoDevicesResource;
+import net.onrc.onos.ofcontroller.linkdiscovery.web.TopoLinksResource;
 
 import org.restlet.Context;
 import org.restlet.Restlet;
diff --git a/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkStorageImpl.java b/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkStorageImpl.java
index c8ca86f..a6c291f 100644
--- a/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkStorageImpl.java
+++ b/src/main/java/net/floodlightcontroller/linkdiscovery/internal/LinkStorageImpl.java
@@ -3,11 +3,11 @@
 import java.util.ArrayList;
 import java.util.List;
 
-import net.floodlightcontroller.core.INetMapTopologyObjects.IPortObject;
-import net.floodlightcontroller.core.INetMapTopologyObjects.ISwitchObject;
-import net.floodlightcontroller.linkdiscovery.ILinkStorage;
 import net.floodlightcontroller.linkdiscovery.LinkInfo;
 import net.floodlightcontroller.routing.Link;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IPortObject;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.ISwitchObject;
+import net.onrc.onos.ofcontroller.linkdiscovery.ILinkStorage;
 import net.onrc.onos.util.GraphDBConnection;
 import net.onrc.onos.util.GraphDBConnection.Transaction;
 
@@ -229,7 +229,8 @@
 		return links;
 	}
 	
-	static class ExtractLink implements PipeFunction<PathPipe<Vertex>, Link> {
+	// FIXME Scope changed to public to allow access from TopoLinkServiceImpl. Move class definition to appropriate place.
+	static public class ExtractLink implements PipeFunction<PathPipe<Vertex>, Link> {
 	
 		@Override
 		public Link compute(PathPipe<Vertex> pipe ) {
diff --git a/src/main/java/net/floodlightcontroller/topology/TopologyManager.java b/src/main/java/net/floodlightcontroller/topology/TopologyManager.java
index 958fc84..27f4df2 100644
--- a/src/main/java/net/floodlightcontroller/topology/TopologyManager.java
+++ b/src/main/java/net/floodlightcontroller/topology/TopologyManager.java
@@ -17,7 +17,6 @@
 import net.floodlightcontroller.core.FloodlightContext;
 import net.floodlightcontroller.core.IFloodlightProviderService;
 import net.floodlightcontroller.core.IFloodlightProviderService.Role;
-import net.floodlightcontroller.core.INetMapStorage.DM_OPERATION;
 import net.floodlightcontroller.core.IOFMessageListener;
 import net.floodlightcontroller.core.IOFSwitch;
 import net.floodlightcontroller.core.IHAListener;
@@ -40,6 +39,7 @@
 import net.floodlightcontroller.routing.Route;
 import net.floodlightcontroller.threadpool.IThreadPoolService;
 import net.floodlightcontroller.topology.web.TopologyWebRoutable;
+import net.onrc.onos.ofcontroller.core.INetMapStorage.DM_OPERATION;
 
 import org.openflow.protocol.OFMessage;
 import org.openflow.protocol.OFPacketIn;
diff --git a/src/main/java/net/floodlightcontroller/topology/web/RouteResource.java b/src/main/java/net/floodlightcontroller/topology/web/RouteResource.java
index 20f39d4..906a579 100644
--- a/src/main/java/net/floodlightcontroller/topology/web/RouteResource.java
+++ b/src/main/java/net/floodlightcontroller/topology/web/RouteResource.java
@@ -2,14 +2,14 @@
 
 import java.util.List;
 
-import net.floodlightcontroller.core.INetMapTopologyService.ITopoRouteService;
 import net.floodlightcontroller.routing.IRoutingService;
 import net.floodlightcontroller.routing.Route;
 import net.floodlightcontroller.topology.NodePortTuple;
-import net.floodlightcontroller.util.DataPath;
-import net.floodlightcontroller.util.Dpid;
-import net.floodlightcontroller.util.Port;
-import net.floodlightcontroller.util.SwitchPort;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyService.ITopoRouteService;
+import net.onrc.onos.ofcontroller.util.DataPath;
+import net.onrc.onos.ofcontroller.util.Dpid;
+import net.onrc.onos.ofcontroller.util.Port;
+import net.onrc.onos.ofcontroller.util.SwitchPort;
 
 import org.openflow.util.HexString;
 import org.restlet.resource.Get;
diff --git a/src/main/java/net/floodlightcontroller/util/MACAddress.java b/src/main/java/net/floodlightcontroller/util/MACAddress.java
index 743dc5b..1bc137c 100644
--- a/src/main/java/net/floodlightcontroller/util/MACAddress.java
+++ b/src/main/java/net/floodlightcontroller/util/MACAddress.java
@@ -2,8 +2,8 @@
 
 import java.util.Arrays;
 
-import net.floodlightcontroller.util.serializers.MACAddressDeserializer;
-import net.floodlightcontroller.util.serializers.MACAddressSerializer;
+import net.onrc.onos.ofcontroller.util.serializers.MACAddressDeserializer;
+import net.onrc.onos.ofcontroller.util.serializers.MACAddressSerializer;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 import org.codehaus.jackson.map.annotate.JsonDeserialize;
diff --git a/src/main/java/net/onrc/onos/flow/FlowManagerImpl.java b/src/main/java/net/onrc/onos/flow/FlowManagerImpl.java
index b8b3303..d7f3e60 100644
--- a/src/main/java/net/onrc/onos/flow/FlowManagerImpl.java
+++ b/src/main/java/net/onrc/onos/flow/FlowManagerImpl.java
@@ -17,19 +17,19 @@
 import com.tinkerpop.blueprints.Direction;
 import com.tinkerpop.blueprints.Vertex;
 
-import net.floodlightcontroller.core.INetMapTopologyObjects.IFlowEntry;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IFlowPath;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IPortObject;
-import net.floodlightcontroller.core.ISwitchStorage.SwitchState;
 import net.floodlightcontroller.core.IOFSwitch;
-import net.floodlightcontroller.util.DataPath;
-import net.floodlightcontroller.util.Dpid;
-import net.floodlightcontroller.util.FlowEntry;
-import net.floodlightcontroller.util.FlowEntryAction;
-import net.floodlightcontroller.util.FlowEntryMatch;
-import net.floodlightcontroller.util.FlowPath;
-import net.floodlightcontroller.util.Port;
-import net.floodlightcontroller.util.SwitchPort;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IFlowEntry;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IFlowPath;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IPortObject;
+import net.onrc.onos.ofcontroller.core.ISwitchStorage.SwitchState;
+import net.onrc.onos.ofcontroller.util.DataPath;
+import net.onrc.onos.ofcontroller.util.Dpid;
+import net.onrc.onos.ofcontroller.util.FlowEntry;
+import net.onrc.onos.ofcontroller.util.FlowEntryAction;
+import net.onrc.onos.ofcontroller.util.FlowEntryMatch;
+import net.onrc.onos.ofcontroller.util.FlowPath;
+import net.onrc.onos.ofcontroller.util.Port;
+import net.onrc.onos.ofcontroller.util.SwitchPort;
 import net.onrc.onos.util.GraphDBConnection;
 import net.onrc.onos.util.LocalTopologyEventListener;
 import net.onrc.onos.util.GraphDBConnection.Transaction;
diff --git a/src/main/java/net/onrc/onos/flow/IFlowManager.java b/src/main/java/net/onrc/onos/flow/IFlowManager.java
index 743f8fb..4063a7a 100644
--- a/src/main/java/net/onrc/onos/flow/IFlowManager.java
+++ b/src/main/java/net/onrc/onos/flow/IFlowManager.java
@@ -3,9 +3,9 @@
 import java.util.Map;
 
 import net.floodlightcontroller.core.IOFSwitch;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IPortObject;
-import net.floodlightcontroller.util.FlowEntry;
-import net.floodlightcontroller.util.FlowPath;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IPortObject;
+import net.onrc.onos.ofcontroller.util.FlowEntry;
+import net.onrc.onos.ofcontroller.util.FlowPath;
 
 public interface IFlowManager {
     /**
diff --git a/src/main/java/net/floodlightcontroller/bgproute/BgpRoute.java b/src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRoute.java
similarity index 87%
rename from src/main/java/net/floodlightcontroller/bgproute/BgpRoute.java
rename to src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRoute.java
index 517126c..486d057 100644
--- a/src/main/java/net/floodlightcontroller/bgproute/BgpRoute.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRoute.java
@@ -1,5 +1,6 @@
-package net.floodlightcontroller.bgproute;
+package net.onrc.onos.ofcontroller.bgproute;
 
+import java.io.File;
 import java.io.IOException;
 import java.net.InetAddress;
 import java.net.UnknownHostException;
@@ -12,7 +13,6 @@
 import java.util.Set;
 
 import net.floodlightcontroller.core.IFloodlightProviderService;
-import net.floodlightcontroller.core.INetMapTopologyService.ITopoRouteService;
 import net.floodlightcontroller.core.IOFSwitch;
 import net.floodlightcontroller.core.module.FloodlightModuleContext;
 import net.floodlightcontroller.core.module.FloodlightModuleException;
@@ -24,17 +24,19 @@
 import net.floodlightcontroller.restserver.IRestApiService;
 import net.floodlightcontroller.topology.ITopologyListener;
 import net.floodlightcontroller.topology.ITopologyService;
-import net.floodlightcontroller.util.DataPath;
-import net.floodlightcontroller.util.Dpid;
-import net.floodlightcontroller.util.FlowEntry;
-import net.floodlightcontroller.util.IPv4;
-import net.floodlightcontroller.util.MACAddress;
-import net.floodlightcontroller.util.Port;
-import net.floodlightcontroller.util.SwitchPort;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyService.ITopoRouteService;
+import net.onrc.onos.ofcontroller.util.DataPath;
+import net.onrc.onos.ofcontroller.util.FlowEntry;
+import net.onrc.onos.ofcontroller.util.Port;
+import net.onrc.onos.ofcontroller.util.SwitchPort;
 import net.sf.json.JSONArray;
 import net.sf.json.JSONObject;
 import net.sf.json.JSONSerializer;
 
+import org.codehaus.jackson.JsonParseException;
+import org.codehaus.jackson.map.JsonMappingException;
+import org.codehaus.jackson.map.ObjectMapper;
+import org.codehaus.jackson.type.TypeReference;
 import org.openflow.protocol.OFFlowMod;
 import org.openflow.protocol.OFMatch;
 import org.openflow.protocol.OFMessage;
@@ -61,6 +63,7 @@
 	protected static Ptree ptree;
 	protected String bgpdRestIp;
 	protected String routerId;
+	protected String gatewaysFilename = "gateways.json";
 	
 	protected Set<InetAddress> routerIpAddresses;
 	
@@ -75,43 +78,27 @@
 	//need to be higher priority than this otherwise the rewrite may not get done
 	protected final short SDNIP_PRIORITY = 10;
 	
-	//TODO temporary
-	protected List<GatewayRouter> gatewayRouters;
+	protected Map<String, GatewayRouter> gatewayRouters;
 	
-	private void initGateways(){
-		gatewayRouters = new ArrayList<GatewayRouter>();
-		//00:00:00:00:00:00:0s0:a3 port 1
-		gatewayRouters.add(
-				new GatewayRouter(new SwitchPort(new Dpid(163L), new Port((short)1)),
-				new MACAddress(new byte[] {0x00, 0x00, 0x00, 0x00, 0x02, 0x01}),
-				new IPv4("192.168.10.1"),
-				new MACAddress(new byte[] {0x00, 0x00, 0x00, 0x00, 0x00, 0x01}),
-				new IPv4("192.168.10.101")));
-		//00:00:00:00:00:00:00:a5 port 1
-		//gatewayRouters.add(new SwitchPort(new Dpid(165L), new Port((short)1)));
-		gatewayRouters.add(
-				new GatewayRouter(new SwitchPort(new Dpid(165L), new Port((short)1)),
-				new MACAddress(new byte[] {0x00, 0x00, 0x00, 0x00, 0x02, 0x02}),
-				new IPv4("192.168.20.1"),
-				new MACAddress(new byte[] {0x00, 0x00, 0x00, 0x00, 0x00, 0x02}),
-				new IPv4("192.168.20.101")));
-		//00:00:00:00:00:00:00:a2 port 1
-		//gatewayRouters.add(new SwitchPort(new Dpid(162L), new Port((short)1)));
-		gatewayRouters.add(
-				new GatewayRouter(new SwitchPort(new Dpid(162L), new Port((short)1)),
-				new MACAddress(new byte[] {0x00, 0x00, 0x00, 0x00, 0x03, 0x01}),
-				new IPv4("192.168.30.1"),
-				new MACAddress(new byte[] {0x00, 0x00, 0x00, 0x00, 0x00, 0x03}),
-				new IPv4("192.168.30.101")));
-		//00:00:00:00:00:00:00:a6
-		//gatewayRouters.add(new SwitchPort(new Dpid(166L), new Port((short)1)));
-		gatewayRouters.add(
-				new GatewayRouter(new SwitchPort(new Dpid(166L), new Port((short)1)),
-				new MACAddress(new byte[] {0x00, 0x00, 0x00, 0x00, 0x04, 0x01}),
-				new IPv4("192.168.40.1"),
-				new MACAddress(new byte[] {0x00, 0x00, 0x00, 0x00, 0x00, 0x04}),
-				new IPv4("192.168.40.101")));
+	private void readGatewaysConfiguration(String gatewaysFilename){
+		File gatewaysFile = new File(gatewaysFilename);
+		ObjectMapper mapper = new ObjectMapper();
 		
+		TypeReference<HashMap<String, GatewayRouter>> typeref 
+			= new TypeReference<HashMap<String, GatewayRouter>>() {};
+		
+		try {
+			gatewayRouters = mapper.readValue(gatewaysFile, typeref);
+		} catch (JsonParseException e) {
+			log.error("Error in JSON file", e);
+			System.exit(1);
+		} catch (JsonMappingException e) {
+			log.error("Error in JSON file", e);
+			System.exit(1);
+		} catch (IOException e) {
+			log.error("Error reading JSON file", e);
+			System.exit(1);
+		}
 	}
 	
 	@Override
@@ -146,8 +133,6 @@
 	public void init(FloodlightModuleContext context)
 			throws FloodlightModuleException {
 	    
-		initGateways();
-		
 	    ptree = new Ptree(32);
 	    
 	    routerIpAddresses = new HashSet<InetAddress>();
@@ -177,6 +162,8 @@
 		else {
 			log.info("RouterId set to {}", routerId);
 		}
+		
+		readGatewaysConfiguration(gatewaysFilename);
 		// Test.
 		//test();
 	}
@@ -332,14 +319,8 @@
 	
 	public void prefixAdded(PtreeNode node) {
 		//Add a flow to rewrite mac for this prefix to all border switches
-		GatewayRouter thisRouter = null;
-		for (GatewayRouter router : gatewayRouters){	
-			if (router.getRouterIp().value() == 
-					InetAddresses.coerceToInteger(node.rib.nextHop)){
-				thisRouter = router;
-				break;
-			}
-		}
+		GatewayRouter thisRouter = gatewayRouters
+				.get(InetAddresses.toAddrString(node.rib.nextHop));
 		
 		if (thisRouter == null){
 			//TODO local router isn't in gateway list so this will get thrown
@@ -349,7 +330,7 @@
 			return; //just quit out here? This is probably a configuration error
 		}
 
-		for (GatewayRouter ingressRouter : gatewayRouters){
+		for (GatewayRouter ingressRouter : gatewayRouters.values()){
 			if (ingressRouter == thisRouter) {
 				continue;
 			}
@@ -457,8 +438,7 @@
 		
 		//have to account for switches not being there, paths not being found.
 		
-		//for (SwitchPort switchPort : gatewayRouters){
-		for (GatewayRouter router : gatewayRouters){
+		for (GatewayRouter router : gatewayRouters.values()){
 			SwitchPort switchPort = router.getAttachmentPoint();
 			
 			IOFSwitch sw = floodlightProvider.getSwitches().get(switchPort.dpid().value());
@@ -483,7 +463,7 @@
 		//for each prefix received. This will be done later when prefixes have 
 		//actually been received.
 		
-		for (GatewayRouter dstRouter : gatewayRouters){
+		for (GatewayRouter dstRouter : gatewayRouters.values()){
 			SwitchPort routerAttachmentPoint = dstRouter.getAttachmentPoint();
 			for (Map.Entry<IOFSwitch, SwitchPort> src : gatewaySwitches.entrySet()) {
 		
diff --git a/src/main/java/net/floodlightcontroller/bgproute/BgpRouteResource.java b/src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRouteResource.java
similarity index 98%
rename from src/main/java/net/floodlightcontroller/bgproute/BgpRouteResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRouteResource.java
index 4ad1e95..34c5c43b 100644
--- a/src/main/java/net/floodlightcontroller/bgproute/BgpRouteResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRouteResource.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.bgproute;
+package net.onrc.onos.ofcontroller.bgproute;
 
 import java.net.UnknownHostException;
 
diff --git a/src/main/java/net/floodlightcontroller/bgproute/BgpRouteResourceSynch.java b/src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRouteResourceSynch.java
similarity index 97%
rename from src/main/java/net/floodlightcontroller/bgproute/BgpRouteResourceSynch.java
rename to src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRouteResourceSynch.java
index ff7aea6..543827d 100644
--- a/src/main/java/net/floodlightcontroller/bgproute/BgpRouteResourceSynch.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRouteResourceSynch.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.bgproute;
+package net.onrc.onos.ofcontroller.bgproute;
 
 
 import org.restlet.resource.Post;
diff --git a/src/main/java/net/floodlightcontroller/bgproute/BgpRouteWebRoutable.java b/src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRouteWebRoutable.java
similarity index 94%
rename from src/main/java/net/floodlightcontroller/bgproute/BgpRouteWebRoutable.java
rename to src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRouteWebRoutable.java
index a18c550..669c385 100644
--- a/src/main/java/net/floodlightcontroller/bgproute/BgpRouteWebRoutable.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRouteWebRoutable.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.bgproute;
+package net.onrc.onos.ofcontroller.bgproute;
 
 import org.restlet.Context;
 import org.restlet.Restlet;
diff --git a/src/main/java/net/onrc/onos/ofcontroller/bgproute/GatewayRouter.java b/src/main/java/net/onrc/onos/ofcontroller/bgproute/GatewayRouter.java
new file mode 100644
index 0000000..4016c69
--- /dev/null
+++ b/src/main/java/net/onrc/onos/ofcontroller/bgproute/GatewayRouter.java
@@ -0,0 +1,62 @@
+package net.onrc.onos.ofcontroller.bgproute;
+
+import net.floodlightcontroller.util.MACAddress;
+import net.onrc.onos.ofcontroller.util.Dpid;
+import net.onrc.onos.ofcontroller.util.IPv4;
+import net.onrc.onos.ofcontroller.util.Port;
+import net.onrc.onos.ofcontroller.util.SwitchPort;
+
+import org.codehaus.jackson.annotate.JsonProperty;
+import org.openflow.util.HexString;
+
+public class GatewayRouter {
+	private SwitchPort attachmentPoint = null;
+	private long dpid;
+	private short port;
+	private MACAddress routerMac;
+	private IPv4 routerIp;
+	
+	
+	public SwitchPort getAttachmentPoint() {
+		if (attachmentPoint == null){
+			attachmentPoint = new SwitchPort(new Dpid(dpid), new Port(port));
+		}
+		return attachmentPoint;
+	}
+	
+	public long getDpid() {
+		return dpid;
+	}
+
+	@JsonProperty("attachmentDpid")
+	public void setDpid(String dpid) {
+		this.dpid = HexString.toLong(dpid);
+	}
+
+	public short getPort() {
+		return port;
+	}
+
+	@JsonProperty("attachmentPort")
+	public void setPort(short port) {
+		this.port = port;
+	}
+
+	public MACAddress getRouterMac() {
+		return routerMac;
+	}
+	
+	@JsonProperty("macAddress")
+	public void setRouterMac(String routerMac) {
+		this.routerMac = MACAddress.valueOf(routerMac);;
+	}
+
+	public IPv4 getRouterIp() {
+		return routerIp;
+	}
+	
+	@JsonProperty("ipAddress")
+	public void setRouterIp(String routerIp) {
+		this.routerIp = new IPv4(routerIp);
+	}
+}
diff --git a/src/main/java/net/floodlightcontroller/bgproute/IBgpRouteService.java b/src/main/java/net/onrc/onos/ofcontroller/bgproute/IBgpRouteService.java
similarity index 90%
rename from src/main/java/net/floodlightcontroller/bgproute/IBgpRouteService.java
rename to src/main/java/net/onrc/onos/ofcontroller/bgproute/IBgpRouteService.java
index 0e95d9e..c84a415 100644
--- a/src/main/java/net/floodlightcontroller/bgproute/IBgpRouteService.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/bgproute/IBgpRouteService.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.bgproute;
+package net.onrc.onos.ofcontroller.bgproute;
 
 import net.floodlightcontroller.core.module.IFloodlightService;
 
diff --git a/src/main/java/net/floodlightcontroller/bgproute/Prefix.java b/src/main/java/net/onrc/onos/ofcontroller/bgproute/Prefix.java
similarity index 94%
rename from src/main/java/net/floodlightcontroller/bgproute/Prefix.java
rename to src/main/java/net/onrc/onos/ofcontroller/bgproute/Prefix.java
index 980646f..c3baa37 100644
--- a/src/main/java/net/floodlightcontroller/bgproute/Prefix.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/bgproute/Prefix.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.bgproute;
+package net.onrc.onos.ofcontroller.bgproute;
 
 import java.net.InetAddress;
 import java.net.UnknownHostException;
diff --git a/src/main/java/net/floodlightcontroller/bgproute/Ptree.java b/src/main/java/net/onrc/onos/ofcontroller/bgproute/Ptree.java
similarity index 98%
rename from src/main/java/net/floodlightcontroller/bgproute/Ptree.java
rename to src/main/java/net/onrc/onos/ofcontroller/bgproute/Ptree.java
index dcb6e83..6741a41 100644
--- a/src/main/java/net/floodlightcontroller/bgproute/Ptree.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/bgproute/Ptree.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.bgproute;
+package net.onrc.onos.ofcontroller.bgproute;
 
 public class Ptree {
 	int maxKeyBits;
diff --git a/src/main/java/net/floodlightcontroller/bgproute/PtreeNode.java b/src/main/java/net/onrc/onos/ofcontroller/bgproute/PtreeNode.java
similarity index 95%
rename from src/main/java/net/floodlightcontroller/bgproute/PtreeNode.java
rename to src/main/java/net/onrc/onos/ofcontroller/bgproute/PtreeNode.java
index 4d2c265..a4d6996 100644
--- a/src/main/java/net/floodlightcontroller/bgproute/PtreeNode.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/bgproute/PtreeNode.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.bgproute;
+package net.onrc.onos.ofcontroller.bgproute;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/src/main/java/net/floodlightcontroller/bgproute/RestClient.java b/src/main/java/net/onrc/onos/ofcontroller/bgproute/RestClient.java
similarity index 98%
rename from src/main/java/net/floodlightcontroller/bgproute/RestClient.java
rename to src/main/java/net/onrc/onos/ofcontroller/bgproute/RestClient.java
index ef5e38b..f6f1a03 100644
--- a/src/main/java/net/floodlightcontroller/bgproute/RestClient.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/bgproute/RestClient.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.bgproute;
+package net.onrc.onos.ofcontroller.bgproute;
 
 import java.io.BufferedReader;
 import java.io.IOException;
diff --git a/src/main/java/net/floodlightcontroller/bgproute/Rib.java b/src/main/java/net/onrc/onos/ofcontroller/bgproute/Rib.java
similarity index 95%
rename from src/main/java/net/floodlightcontroller/bgproute/Rib.java
rename to src/main/java/net/onrc/onos/ofcontroller/bgproute/Rib.java
index 574e820..dc5f71d 100644
--- a/src/main/java/net/floodlightcontroller/bgproute/Rib.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/bgproute/Rib.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.bgproute;
+package net.onrc.onos.ofcontroller.bgproute;
 
 import java.net.InetAddress;
 import java.net.UnknownHostException;
diff --git a/src/main/java/net/onrc/onos/ofcontroller/core/INetMapService.java b/src/main/java/net/onrc/onos/ofcontroller/core/INetMapService.java
new file mode 100644
index 0000000..8392a32
--- /dev/null
+++ b/src/main/java/net/onrc/onos/ofcontroller/core/INetMapService.java
@@ -0,0 +1,5 @@
+package net.onrc.onos.ofcontroller.core;
+
+public interface INetMapService {
+
+}
diff --git a/src/main/java/net/floodlightcontroller/core/INetMapStorage.java b/src/main/java/net/onrc/onos/ofcontroller/core/INetMapStorage.java
similarity index 90%
rename from src/main/java/net/floodlightcontroller/core/INetMapStorage.java
rename to src/main/java/net/onrc/onos/ofcontroller/core/INetMapStorage.java
index 67c6631..b052540 100644
--- a/src/main/java/net/floodlightcontroller/core/INetMapStorage.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/core/INetMapStorage.java
@@ -1,7 +1,7 @@
 /**
  * 
  */
-package net.floodlightcontroller.core;
+package net.onrc.onos.ofcontroller.core;
 
 /**
  * @author pankaj
diff --git a/src/main/java/net/floodlightcontroller/core/INetMapTopologyObjects.java b/src/main/java/net/onrc/onos/ofcontroller/core/INetMapTopologyObjects.java
similarity index 97%
rename from src/main/java/net/floodlightcontroller/core/INetMapTopologyObjects.java
rename to src/main/java/net/onrc/onos/ofcontroller/core/INetMapTopologyObjects.java
index 3d5b907..1a01155 100644
--- a/src/main/java/net/floodlightcontroller/core/INetMapTopologyObjects.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/core/INetMapTopologyObjects.java
@@ -1,7 +1,7 @@
-package net.floodlightcontroller.core;
+package net.onrc.onos.ofcontroller.core;
 
-import net.floodlightcontroller.core.INetMapTopologyObjects.IPortObject;
-import net.floodlightcontroller.flowcache.web.DatapathSummarySerializer;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IPortObject;
+import net.onrc.onos.ofcontroller.flowcache.web.DatapathSummarySerializer;
 
 import org.codehaus.jackson.annotate.JsonIgnore;
 import org.codehaus.jackson.annotate.JsonProperty;
diff --git a/src/main/java/net/floodlightcontroller/core/INetMapTopologyService.java b/src/main/java/net/onrc/onos/ofcontroller/core/INetMapTopologyService.java
similarity index 91%
rename from src/main/java/net/floodlightcontroller/core/INetMapTopologyService.java
rename to src/main/java/net/onrc/onos/ofcontroller/core/INetMapTopologyService.java
index f217c25..1992624 100644
--- a/src/main/java/net/floodlightcontroller/core/INetMapTopologyService.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/core/INetMapTopologyService.java
@@ -1,16 +1,16 @@
-package net.floodlightcontroller.core;
+package net.onrc.onos.ofcontroller.core;
 
 import java.util.List;
 import java.util.Map;
 
 import net.floodlightcontroller.core.module.IFloodlightService;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IDeviceObject;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IPortObject;
-import net.floodlightcontroller.core.INetMapTopologyObjects.ISwitchObject;
 import net.floodlightcontroller.routing.Link;
 import net.floodlightcontroller.topology.NodePortTuple;
-import net.floodlightcontroller.util.DataPath;
-import net.floodlightcontroller.util.SwitchPort;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IDeviceObject;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IPortObject;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.ISwitchObject;
+import net.onrc.onos.ofcontroller.util.DataPath;
+import net.onrc.onos.ofcontroller.util.SwitchPort;
 
 public interface INetMapTopologyService extends INetMapService {
 
diff --git a/src/main/java/net/floodlightcontroller/core/ISwitchStorage.java b/src/main/java/net/onrc/onos/ofcontroller/core/ISwitchStorage.java
similarity index 90%
rename from src/main/java/net/floodlightcontroller/core/ISwitchStorage.java
rename to src/main/java/net/onrc/onos/ofcontroller/core/ISwitchStorage.java
index 1219aac..d008220 100644
--- a/src/main/java/net/floodlightcontroller/core/ISwitchStorage.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/core/ISwitchStorage.java
@@ -1,8 +1,7 @@
-package net.floodlightcontroller.core;
+package net.onrc.onos.ofcontroller.core;
 
 import java.util.Collection;
 
-import net.floodlightcontroller.core.INetMapTopologyObjects.ISwitchObject;
 
 import org.openflow.protocol.OFPhysicalPort;
 
diff --git a/src/main/java/net/floodlightcontroller/core/internal/SwitchStorageImpl.java b/src/main/java/net/onrc/onos/ofcontroller/core/internal/SwitchStorageImpl.java
similarity index 95%
rename from src/main/java/net/floodlightcontroller/core/internal/SwitchStorageImpl.java
rename to src/main/java/net/onrc/onos/ofcontroller/core/internal/SwitchStorageImpl.java
index b8197b7..c540e14 100644
--- a/src/main/java/net/floodlightcontroller/core/internal/SwitchStorageImpl.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/core/internal/SwitchStorageImpl.java
@@ -1,10 +1,10 @@
-package net.floodlightcontroller.core.internal;
+package net.onrc.onos.ofcontroller.core.internal;
 
 import java.util.Collection;
 
-import net.floodlightcontroller.core.INetMapTopologyObjects.IPortObject;
-import net.floodlightcontroller.core.INetMapTopologyObjects.ISwitchObject;
-import net.floodlightcontroller.core.ISwitchStorage;
+import net.onrc.onos.ofcontroller.core.ISwitchStorage;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IPortObject;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.ISwitchObject;
 import net.onrc.onos.util.GraphDBConnection;
 import net.onrc.onos.util.GraphDBConnection.GenerateEvent;
 import net.onrc.onos.util.GraphDBConnection.Transaction;
diff --git a/src/main/java/net/floodlightcontroller/core/internal/TopoSwitchServiceImpl.java b/src/main/java/net/onrc/onos/ofcontroller/core/internal/TopoSwitchServiceImpl.java
similarity index 84%
rename from src/main/java/net/floodlightcontroller/core/internal/TopoSwitchServiceImpl.java
rename to src/main/java/net/onrc/onos/ofcontroller/core/internal/TopoSwitchServiceImpl.java
index 502fad6..a540d64 100644
--- a/src/main/java/net/floodlightcontroller/core/internal/TopoSwitchServiceImpl.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/core/internal/TopoSwitchServiceImpl.java
@@ -1,8 +1,8 @@
-package net.floodlightcontroller.core.internal;
+package net.onrc.onos.ofcontroller.core.internal;
 
-import net.floodlightcontroller.core.INetMapTopologyObjects.IPortObject;
-import net.floodlightcontroller.core.INetMapTopologyObjects.ISwitchObject;
-import net.floodlightcontroller.core.INetMapTopologyService.ITopoSwitchService;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IPortObject;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.ISwitchObject;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyService.ITopoSwitchService;
 import net.onrc.onos.util.GraphDBConnection;
 import net.onrc.onos.util.GraphDBConnection.Transaction;
 
diff --git a/src/main/java/net/floodlightcontroller/core/web/ClearFlowTableResource.java b/src/main/java/net/onrc/onos/ofcontroller/core/web/ClearFlowTableResource.java
similarity index 96%
rename from src/main/java/net/floodlightcontroller/core/web/ClearFlowTableResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/core/web/ClearFlowTableResource.java
index c2d2eb4..7b1acfe 100644
--- a/src/main/java/net/floodlightcontroller/core/web/ClearFlowTableResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/core/web/ClearFlowTableResource.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.core.web;
+package net.onrc.onos.ofcontroller.core.web;
 
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/src/main/java/net/floodlightcontroller/core/web/TopoSwitchesResource.java b/src/main/java/net/onrc/onos/ofcontroller/core/web/TopoSwitchesResource.java
similarity index 77%
rename from src/main/java/net/floodlightcontroller/core/web/TopoSwitchesResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/core/web/TopoSwitchesResource.java
index 7a8511b..a173a70 100644
--- a/src/main/java/net/floodlightcontroller/core/web/TopoSwitchesResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/core/web/TopoSwitchesResource.java
@@ -1,9 +1,9 @@
-package net.floodlightcontroller.core.web;
+package net.onrc.onos.ofcontroller.core.web;
 
 import java.util.Iterator;
 
-import net.floodlightcontroller.core.INetMapTopologyObjects.ISwitchObject;
-import net.floodlightcontroller.core.internal.TopoSwitchServiceImpl;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.ISwitchObject;
+import net.onrc.onos.ofcontroller.core.internal.TopoSwitchServiceImpl;
 
 import org.restlet.resource.Get;
 import org.restlet.resource.ServerResource;
diff --git a/src/main/java/net/floodlightcontroller/devicemanager/IDeviceStorage.java b/src/main/java/net/onrc/onos/ofcontroller/devicemanager/IDeviceStorage.java
similarity index 63%
rename from src/main/java/net/floodlightcontroller/devicemanager/IDeviceStorage.java
rename to src/main/java/net/onrc/onos/ofcontroller/devicemanager/IDeviceStorage.java
index f41e32c..d4355c6 100644
--- a/src/main/java/net/floodlightcontroller/devicemanager/IDeviceStorage.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/devicemanager/IDeviceStorage.java
@@ -1,7 +1,8 @@
-package net.floodlightcontroller.devicemanager;
+package net.onrc.onos.ofcontroller.devicemanager;
 
-import net.floodlightcontroller.core.INetMapStorage;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IDeviceObject;
+import net.floodlightcontroller.devicemanager.IDevice;
+import net.onrc.onos.ofcontroller.core.INetMapStorage;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IDeviceObject;
 
 public interface IDeviceStorage extends INetMapStorage {
 	
diff --git a/src/main/java/net/floodlightcontroller/devicemanager/internal/DeviceStorageImpl.java b/src/main/java/net/onrc/onos/ofcontroller/devicemanager/internal/DeviceStorageImpl.java
similarity index 93%
rename from src/main/java/net/floodlightcontroller/devicemanager/internal/DeviceStorageImpl.java
rename to src/main/java/net/onrc/onos/ofcontroller/devicemanager/internal/DeviceStorageImpl.java
index e964b8e..d6c83c5 100644
--- a/src/main/java/net/floodlightcontroller/devicemanager/internal/DeviceStorageImpl.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/devicemanager/internal/DeviceStorageImpl.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.devicemanager.internal;
+package net.onrc.onos.ofcontroller.devicemanager.internal;
 
 import java.util.List;
 import org.openflow.util.HexString;
@@ -7,12 +7,12 @@
 
 import com.google.common.collect.Lists;
 import com.thinkaurelius.titan.core.TitanException;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IDeviceObject;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IPortObject;
-import net.floodlightcontroller.core.internal.SwitchStorageImpl;
 import net.floodlightcontroller.devicemanager.IDevice;
-import net.floodlightcontroller.devicemanager.IDeviceStorage;
 import net.floodlightcontroller.devicemanager.SwitchPort;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IDeviceObject;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IPortObject;
+import net.onrc.onos.ofcontroller.core.internal.SwitchStorageImpl;
+import net.onrc.onos.ofcontroller.devicemanager.IDeviceStorage;
 import net.onrc.onos.util.GraphDBConnection;
 import net.onrc.onos.util.GraphDBConnection.Transaction;
 
diff --git a/src/main/java/net/floodlightcontroller/devicemanager/web/TopoDevicesResource.java b/src/main/java/net/onrc/onos/ofcontroller/devicemanager/web/TopoDevicesResource.java
similarity index 75%
rename from src/main/java/net/floodlightcontroller/devicemanager/web/TopoDevicesResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/devicemanager/web/TopoDevicesResource.java
index db7059f..e476f02 100644
--- a/src/main/java/net/floodlightcontroller/devicemanager/web/TopoDevicesResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/devicemanager/web/TopoDevicesResource.java
@@ -1,8 +1,8 @@
-package net.floodlightcontroller.devicemanager.web;
+package net.onrc.onos.ofcontroller.devicemanager.web;
 
 import java.util.Iterator;
 
-import net.floodlightcontroller.core.INetMapTopologyObjects.IDeviceObject;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IDeviceObject;
 import net.onrc.onos.util.GraphDBConnection;
 
 import org.restlet.resource.Get;
diff --git a/src/main/java/net/floodlightcontroller/flowcache/FlowManager.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/FlowManager.java
similarity index 97%
rename from src/main/java/net/floodlightcontroller/flowcache/FlowManager.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/FlowManager.java
index 8aec20f..9c38cdd 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/FlowManager.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/FlowManager.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.flowcache;
+package net.onrc.onos.ofcontroller.flowcache;
 
 import java.io.IOException;
 import java.io.PrintWriter;
@@ -19,36 +19,36 @@
 import java.util.concurrent.TimeUnit;
 
 import net.floodlightcontroller.core.IFloodlightProviderService;
-import net.floodlightcontroller.core.INetMapStorage;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IFlowEntry;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IFlowPath;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IPortObject;
-import net.floodlightcontroller.core.INetMapTopologyObjects.ISwitchObject;
-import net.floodlightcontroller.core.INetMapTopologyService.ITopoRouteService;
 import net.floodlightcontroller.core.IOFSwitch;
 import net.floodlightcontroller.core.module.FloodlightModuleContext;
 import net.floodlightcontroller.core.module.FloodlightModuleException;
 import net.floodlightcontroller.core.module.IFloodlightModule;
 import net.floodlightcontroller.core.module.IFloodlightService;
-import net.floodlightcontroller.flowcache.web.FlowWebRoutable;
 import net.floodlightcontroller.restserver.IRestApiService;
-import net.floodlightcontroller.util.CallerId;
-import net.floodlightcontroller.util.DataPath;
-import net.floodlightcontroller.util.DataPathEndpoints;
-import net.floodlightcontroller.util.Dpid;
-import net.floodlightcontroller.util.FlowEntry;
-import net.floodlightcontroller.util.FlowEntryAction;
-import net.floodlightcontroller.util.FlowEntryId;
-import net.floodlightcontroller.util.FlowEntryMatch;
-import net.floodlightcontroller.util.FlowEntrySwitchState;
-import net.floodlightcontroller.util.FlowEntryUserState;
-import net.floodlightcontroller.util.FlowId;
-import net.floodlightcontroller.util.FlowPath;
-import net.floodlightcontroller.util.IPv4Net;
 import net.floodlightcontroller.util.MACAddress;
 import net.floodlightcontroller.util.OFMessageDamper;
-import net.floodlightcontroller.util.Port;
-import net.floodlightcontroller.util.SwitchPort;
+import net.onrc.onos.ofcontroller.core.INetMapStorage;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IFlowEntry;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IFlowPath;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IPortObject;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.ISwitchObject;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyService.ITopoRouteService;
+import net.onrc.onos.ofcontroller.flowcache.web.FlowWebRoutable;
+import net.onrc.onos.ofcontroller.util.CallerId;
+import net.onrc.onos.ofcontroller.util.DataPath;
+import net.onrc.onos.ofcontroller.util.DataPathEndpoints;
+import net.onrc.onos.ofcontroller.util.Dpid;
+import net.onrc.onos.ofcontroller.util.FlowEntry;
+import net.onrc.onos.ofcontroller.util.FlowEntryAction;
+import net.onrc.onos.ofcontroller.util.FlowEntryId;
+import net.onrc.onos.ofcontroller.util.FlowEntryMatch;
+import net.onrc.onos.ofcontroller.util.FlowEntrySwitchState;
+import net.onrc.onos.ofcontroller.util.FlowEntryUserState;
+import net.onrc.onos.ofcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.util.FlowPath;
+import net.onrc.onos.ofcontroller.util.IPv4Net;
+import net.onrc.onos.ofcontroller.util.Port;
+import net.onrc.onos.ofcontroller.util.SwitchPort;
 import net.onrc.onos.util.GraphDBConnection;
 import net.onrc.onos.util.GraphDBConnection.Transaction;
 
@@ -500,9 +500,9 @@
 		nextFlowEntryIdPrefix = randomGenerator.nextInt();
 		
 		mapReaderScheduler.scheduleAtFixedRate(
-				mapReader, 1, 1, TimeUnit.SECONDS);
+				mapReader, 3, 3, TimeUnit.SECONDS);
 		shortestPathReconcileScheduler.scheduleAtFixedRate(
-				shortestPathReconcile, 100, 100, TimeUnit.MILLISECONDS);
+				shortestPathReconcile, 3, 3, TimeUnit.SECONDS);
     }
 
     /**
diff --git a/src/main/java/net/floodlightcontroller/flowcache/IFlowService.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/IFlowService.java
similarity index 93%
rename from src/main/java/net/floodlightcontroller/flowcache/IFlowService.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/IFlowService.java
index 6c19fd0..06566d4 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/IFlowService.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/IFlowService.java
@@ -1,13 +1,13 @@
-package net.floodlightcontroller.flowcache;
+package net.onrc.onos.ofcontroller.flowcache;
 
 import java.util.ArrayList;
 
-import net.floodlightcontroller.core.INetMapTopologyObjects.IFlowPath;
 import net.floodlightcontroller.core.module.IFloodlightService;
-import net.floodlightcontroller.util.CallerId;
-import net.floodlightcontroller.util.DataPathEndpoints;
-import net.floodlightcontroller.util.FlowId;
-import net.floodlightcontroller.util.FlowPath;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IFlowPath;
+import net.onrc.onos.ofcontroller.util.CallerId;
+import net.onrc.onos.ofcontroller.util.DataPathEndpoints;
+import net.onrc.onos.ofcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.util.FlowPath;
 
 /**
  * @short Interface for providing Flow Service to other modules.
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/AddFlowResource.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/AddFlowResource.java
similarity index 88%
rename from src/main/java/net/floodlightcontroller/flowcache/web/AddFlowResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/AddFlowResource.java
index e266e2e..0763b8a 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/AddFlowResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/AddFlowResource.java
@@ -1,10 +1,10 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
 import java.io.IOException;
 
-import net.floodlightcontroller.flowcache.IFlowService;
-import net.floodlightcontroller.util.FlowId;
-import net.floodlightcontroller.util.FlowPath;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
+import net.onrc.onos.ofcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.util.FlowPath;
 
 import org.codehaus.jackson.JsonGenerationException;
 import org.codehaus.jackson.map.ObjectMapper;
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/AddShortestPathFlowResource.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/AddShortestPathFlowResource.java
similarity index 89%
rename from src/main/java/net/floodlightcontroller/flowcache/web/AddShortestPathFlowResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/AddShortestPathFlowResource.java
index 3c5bcd8..59a8972 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/AddShortestPathFlowResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/AddShortestPathFlowResource.java
@@ -1,10 +1,10 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
 import java.io.IOException;
 
-import net.floodlightcontroller.flowcache.IFlowService;
-import net.floodlightcontroller.util.FlowId;
-import net.floodlightcontroller.util.FlowPath;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
+import net.onrc.onos.ofcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.util.FlowPath;
 
 import org.codehaus.jackson.JsonGenerationException;
 import org.codehaus.jackson.map.ObjectMapper;
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/ClearFlowResource.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/ClearFlowResource.java
similarity index 87%
rename from src/main/java/net/floodlightcontroller/flowcache/web/ClearFlowResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/ClearFlowResource.java
index 7f3b589..e51bc9d 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/ClearFlowResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/ClearFlowResource.java
@@ -1,7 +1,7 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
-import net.floodlightcontroller.flowcache.IFlowService;
-import net.floodlightcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
+import net.onrc.onos.ofcontroller.util.FlowId;
 
 import org.openflow.util.HexString;
 import org.restlet.resource.Get;
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/DatapathSummarySerializer.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/DatapathSummarySerializer.java
similarity index 97%
rename from src/main/java/net/floodlightcontroller/flowcache/web/DatapathSummarySerializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/DatapathSummarySerializer.java
index b780e5c..2022966 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/DatapathSummarySerializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/DatapathSummarySerializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
 import java.io.IOException;
 
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/DeleteFlowResource.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/DeleteFlowResource.java
similarity index 87%
rename from src/main/java/net/floodlightcontroller/flowcache/web/DeleteFlowResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/DeleteFlowResource.java
index ed6f0f7..fb3d100 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/DeleteFlowResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/DeleteFlowResource.java
@@ -1,7 +1,7 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
-import net.floodlightcontroller.flowcache.IFlowService;
-import net.floodlightcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
+import net.onrc.onos.ofcontroller.util.FlowId;
 
 import org.openflow.util.HexString;
 import org.restlet.resource.Get;
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/FlowWebRoutable.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/FlowWebRoutable.java
similarity index 97%
rename from src/main/java/net/floodlightcontroller/flowcache/web/FlowWebRoutable.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/FlowWebRoutable.java
index fd9a319..a2a3e54 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/FlowWebRoutable.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/FlowWebRoutable.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
 import net.floodlightcontroller.restserver.RestletRoutable;
 
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/GetAllFlowsByEndpointsResource.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/GetAllFlowsByEndpointsResource.java
similarity index 82%
rename from src/main/java/net/floodlightcontroller/flowcache/web/GetAllFlowsByEndpointsResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/GetAllFlowsByEndpointsResource.java
index 34d79c8..c284a9c 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/GetAllFlowsByEndpointsResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/GetAllFlowsByEndpointsResource.java
@@ -1,13 +1,13 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
 import java.util.ArrayList;
 
-import net.floodlightcontroller.flowcache.IFlowService;
-import net.floodlightcontroller.util.DataPathEndpoints;
-import net.floodlightcontroller.util.Dpid;
-import net.floodlightcontroller.util.FlowPath;
-import net.floodlightcontroller.util.Port;
-import net.floodlightcontroller.util.SwitchPort;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
+import net.onrc.onos.ofcontroller.util.DataPathEndpoints;
+import net.onrc.onos.ofcontroller.util.Dpid;
+import net.onrc.onos.ofcontroller.util.FlowPath;
+import net.onrc.onos.ofcontroller.util.Port;
+import net.onrc.onos.ofcontroller.util.SwitchPort;
 
 import org.restlet.resource.Get;
 import org.restlet.resource.ServerResource;
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/GetAllFlowsByInstallerIdResource.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/GetAllFlowsByInstallerIdResource.java
similarity index 81%
rename from src/main/java/net/floodlightcontroller/flowcache/web/GetAllFlowsByInstallerIdResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/GetAllFlowsByInstallerIdResource.java
index e3043dc..8247422 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/GetAllFlowsByInstallerIdResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/GetAllFlowsByInstallerIdResource.java
@@ -1,14 +1,14 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
 import java.util.ArrayList;
 
-import net.floodlightcontroller.flowcache.IFlowService;
-import net.floodlightcontroller.util.CallerId;
-import net.floodlightcontroller.util.DataPathEndpoints;
-import net.floodlightcontroller.util.Dpid;
-import net.floodlightcontroller.util.FlowPath;
-import net.floodlightcontroller.util.Port;
-import net.floodlightcontroller.util.SwitchPort;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
+import net.onrc.onos.ofcontroller.util.CallerId;
+import net.onrc.onos.ofcontroller.util.DataPathEndpoints;
+import net.onrc.onos.ofcontroller.util.Dpid;
+import net.onrc.onos.ofcontroller.util.FlowPath;
+import net.onrc.onos.ofcontroller.util.Port;
+import net.onrc.onos.ofcontroller.util.SwitchPort;
 
 import org.restlet.resource.Get;
 import org.restlet.resource.ServerResource;
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/GetAllFlowsResource.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/GetAllFlowsResource.java
similarity index 83%
rename from src/main/java/net/floodlightcontroller/flowcache/web/GetAllFlowsResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/GetAllFlowsResource.java
index 92317cf..5ffbefa 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/GetAllFlowsResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/GetAllFlowsResource.java
@@ -1,9 +1,9 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
 import java.util.ArrayList;
 
-import net.floodlightcontroller.flowcache.IFlowService;
-import net.floodlightcontroller.util.FlowPath;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
+import net.onrc.onos.ofcontroller.util.FlowPath;
 
 import org.restlet.resource.Get;
 import org.restlet.resource.ServerResource;
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/GetFlowByIdResource.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/GetFlowByIdResource.java
similarity index 80%
rename from src/main/java/net/floodlightcontroller/flowcache/web/GetFlowByIdResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/GetFlowByIdResource.java
index 85d5b7e..2f0f712 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/GetFlowByIdResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/GetFlowByIdResource.java
@@ -1,8 +1,8 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
-import net.floodlightcontroller.flowcache.IFlowService;
-import net.floodlightcontroller.util.FlowId;
-import net.floodlightcontroller.util.FlowPath;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
+import net.onrc.onos.ofcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.util.FlowPath;
 
 import org.restlet.resource.Get;
 import org.restlet.resource.ServerResource;
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/GetSummaryFlowsResource.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/GetSummaryFlowsResource.java
similarity index 81%
rename from src/main/java/net/floodlightcontroller/flowcache/web/GetSummaryFlowsResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/GetSummaryFlowsResource.java
index 5f63222..54c75f2 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/GetSummaryFlowsResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/GetSummaryFlowsResource.java
@@ -1,11 +1,11 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
 import java.util.ArrayList;
 
-import net.floodlightcontroller.core.INetMapTopologyObjects.IFlowPath;
-import net.floodlightcontroller.flowcache.IFlowService;
-import net.floodlightcontroller.util.FlowId;
-import net.floodlightcontroller.util.FlowPath;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IFlowPath;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
+import net.onrc.onos.ofcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.util.FlowPath;
 
 import org.restlet.resource.Get;
 import org.restlet.resource.ServerResource;
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/MeasurementClearAllPathsFlowResource.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/MeasurementClearAllPathsFlowResource.java
similarity index 84%
rename from src/main/java/net/floodlightcontroller/flowcache/web/MeasurementClearAllPathsFlowResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/MeasurementClearAllPathsFlowResource.java
index f69180d..d0c013e 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/MeasurementClearAllPathsFlowResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/MeasurementClearAllPathsFlowResource.java
@@ -1,7 +1,7 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
-import net.floodlightcontroller.flowcache.IFlowService;
-import net.floodlightcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
+import net.onrc.onos.ofcontroller.util.FlowId;
 
 import org.openflow.util.HexString;
 import org.restlet.resource.Get;
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/MeasurementGetInstallPathsTimeNsecFlowResource.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/MeasurementGetInstallPathsTimeNsecFlowResource.java
similarity index 85%
rename from src/main/java/net/floodlightcontroller/flowcache/web/MeasurementGetInstallPathsTimeNsecFlowResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/MeasurementGetInstallPathsTimeNsecFlowResource.java
index 3dc1d08..2d2fbf6 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/MeasurementGetInstallPathsTimeNsecFlowResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/MeasurementGetInstallPathsTimeNsecFlowResource.java
@@ -1,7 +1,7 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
-import net.floodlightcontroller.flowcache.IFlowService;
-import net.floodlightcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
+import net.onrc.onos.ofcontroller.util.FlowId;
 
 import org.openflow.util.HexString;
 import org.restlet.resource.Get;
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/MeasurementGetPerFlowInstallTimeFlowResource.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/MeasurementGetPerFlowInstallTimeFlowResource.java
similarity index 85%
rename from src/main/java/net/floodlightcontroller/flowcache/web/MeasurementGetPerFlowInstallTimeFlowResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/MeasurementGetPerFlowInstallTimeFlowResource.java
index adaecc8..981c12c 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/MeasurementGetPerFlowInstallTimeFlowResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/MeasurementGetPerFlowInstallTimeFlowResource.java
@@ -1,7 +1,7 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
-import net.floodlightcontroller.flowcache.IFlowService;
-import net.floodlightcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
+import net.onrc.onos.ofcontroller.util.FlowId;
 
 import org.openflow.util.HexString;
 import org.restlet.resource.Get;
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/MeasurementInstallPathsFlowResource.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/MeasurementInstallPathsFlowResource.java
similarity index 86%
rename from src/main/java/net/floodlightcontroller/flowcache/web/MeasurementInstallPathsFlowResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/MeasurementInstallPathsFlowResource.java
index 1bba4b1..911de89 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/MeasurementInstallPathsFlowResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/MeasurementInstallPathsFlowResource.java
@@ -1,7 +1,7 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
-import net.floodlightcontroller.flowcache.IFlowService;
-import net.floodlightcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
+import net.onrc.onos.ofcontroller.util.FlowId;
 
 import org.openflow.util.HexString;
 import org.restlet.resource.Get;
diff --git a/src/main/java/net/floodlightcontroller/flowcache/web/MeasurementStorePathFlowResource.java b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/MeasurementStorePathFlowResource.java
similarity index 89%
rename from src/main/java/net/floodlightcontroller/flowcache/web/MeasurementStorePathFlowResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/flowcache/web/MeasurementStorePathFlowResource.java
index e68ceb7..5eb8af0 100644
--- a/src/main/java/net/floodlightcontroller/flowcache/web/MeasurementStorePathFlowResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/flowcache/web/MeasurementStorePathFlowResource.java
@@ -1,10 +1,10 @@
-package net.floodlightcontroller.flowcache.web;
+package net.onrc.onos.ofcontroller.flowcache.web;
 
 import java.io.IOException;
 
-import net.floodlightcontroller.flowcache.IFlowService;
-import net.floodlightcontroller.util.FlowId;
-import net.floodlightcontroller.util.FlowPath;
+import net.onrc.onos.ofcontroller.flowcache.IFlowService;
+import net.onrc.onos.ofcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.util.FlowPath;
 
 import org.codehaus.jackson.JsonGenerationException;
 import org.codehaus.jackson.map.ObjectMapper;
diff --git a/src/main/java/net/floodlightcontroller/linkdiscovery/ILinkStorage.java b/src/main/java/net/onrc/onos/ofcontroller/linkdiscovery/ILinkStorage.java
similarity index 88%
rename from src/main/java/net/floodlightcontroller/linkdiscovery/ILinkStorage.java
rename to src/main/java/net/onrc/onos/ofcontroller/linkdiscovery/ILinkStorage.java
index 90836ca..5150668 100644
--- a/src/main/java/net/floodlightcontroller/linkdiscovery/ILinkStorage.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/linkdiscovery/ILinkStorage.java
@@ -1,9 +1,10 @@
-package net.floodlightcontroller.linkdiscovery;
+package net.onrc.onos.ofcontroller.linkdiscovery;
 
 import java.util.List;
 
-import net.floodlightcontroller.core.INetMapStorage;
+import net.floodlightcontroller.linkdiscovery.LinkInfo;
 import net.floodlightcontroller.routing.Link;
+import net.onrc.onos.ofcontroller.core.INetMapStorage;
 
 public interface ILinkStorage extends INetMapStorage {
 	
diff --git a/src/main/java/net/floodlightcontroller/linkdiscovery/internal/TopoLinkServiceImpl.java b/src/main/java/net/onrc/onos/ofcontroller/linkdiscovery/internal/TopoLinkServiceImpl.java
similarity index 87%
rename from src/main/java/net/floodlightcontroller/linkdiscovery/internal/TopoLinkServiceImpl.java
rename to src/main/java/net/onrc/onos/ofcontroller/linkdiscovery/internal/TopoLinkServiceImpl.java
index 9d5fdba..c2e8efe 100644
--- a/src/main/java/net/floodlightcontroller/linkdiscovery/internal/TopoLinkServiceImpl.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/linkdiscovery/internal/TopoLinkServiceImpl.java
@@ -1,12 +1,13 @@
-package net.floodlightcontroller.linkdiscovery.internal;
+package net.onrc.onos.ofcontroller.linkdiscovery.internal;
 
 import java.util.ArrayList;
 import java.util.List;
 
-import net.floodlightcontroller.core.INetMapTopologyObjects.ISwitchObject;
-import net.floodlightcontroller.core.INetMapTopologyService.ITopoLinkService;
+import net.floodlightcontroller.linkdiscovery.internal.LinkStorageImpl;
 import net.floodlightcontroller.linkdiscovery.internal.LinkStorageImpl.ExtractLink;
 import net.floodlightcontroller.routing.Link;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.ISwitchObject;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyService.ITopoLinkService;
 import net.onrc.onos.util.GraphDBConnection;
 import net.onrc.onos.util.GraphDBConnection.Transaction;
 
diff --git a/src/main/java/net/floodlightcontroller/linkdiscovery/web/TopoLinksResource.java b/src/main/java/net/onrc/onos/ofcontroller/linkdiscovery/web/TopoLinksResource.java
similarity index 74%
rename from src/main/java/net/floodlightcontroller/linkdiscovery/web/TopoLinksResource.java
rename to src/main/java/net/onrc/onos/ofcontroller/linkdiscovery/web/TopoLinksResource.java
index 25b68fb..b692517 100644
--- a/src/main/java/net/floodlightcontroller/linkdiscovery/web/TopoLinksResource.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/linkdiscovery/web/TopoLinksResource.java
@@ -1,8 +1,8 @@
-package net.floodlightcontroller.linkdiscovery.web;
+package net.onrc.onos.ofcontroller.linkdiscovery.web;
 
 import java.util.List;
-import net.floodlightcontroller.linkdiscovery.internal.TopoLinkServiceImpl;
 import net.floodlightcontroller.routing.Link;
+import net.onrc.onos.ofcontroller.linkdiscovery.internal.TopoLinkServiceImpl;
 
 import org.restlet.resource.Get;
 import org.restlet.resource.ServerResource;
diff --git a/src/main/java/net/floodlightcontroller/onoslistener/OnosPublisher.java b/src/main/java/net/onrc/onos/ofcontroller/onoslistener/OnosPublisher.java
similarity index 92%
rename from src/main/java/net/floodlightcontroller/onoslistener/OnosPublisher.java
rename to src/main/java/net/onrc/onos/ofcontroller/onoslistener/OnosPublisher.java
index 19ed705..2b30bbf 100644
--- a/src/main/java/net/floodlightcontroller/onoslistener/OnosPublisher.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/onoslistener/OnosPublisher.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.onoslistener;
+package net.onrc.onos.ofcontroller.onoslistener;
 
 import java.util.ArrayList;
 import java.util.Collection;
@@ -12,15 +12,8 @@
 import org.slf4j.LoggerFactory;
 
 import net.floodlightcontroller.core.IFloodlightProviderService;
-import net.floodlightcontroller.core.INetMapStorage.DM_OPERATION;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IPortObject;
-import net.floodlightcontroller.core.INetMapTopologyObjects.ISwitchObject;
-import net.floodlightcontroller.core.ISwitchStorage.SwitchState;
 import net.floodlightcontroller.core.IOFSwitch;
 import net.floodlightcontroller.core.IOFSwitchListener;
-import net.floodlightcontroller.core.ISwitchStorage;
-import net.floodlightcontroller.core.internal.SwitchStorageImpl;
-import net.floodlightcontroller.core.internal.TopoSwitchServiceImpl;
 import net.floodlightcontroller.core.module.FloodlightModuleContext;
 import net.floodlightcontroller.core.module.FloodlightModuleException;
 import net.floodlightcontroller.core.module.IFloodlightModule;
@@ -29,14 +22,21 @@
 import net.floodlightcontroller.devicemanager.IDevice;
 import net.floodlightcontroller.devicemanager.IDeviceListener;
 import net.floodlightcontroller.devicemanager.IDeviceService;
-import net.floodlightcontroller.devicemanager.IDeviceStorage;
-import net.floodlightcontroller.devicemanager.internal.DeviceStorageImpl;
 import net.floodlightcontroller.linkdiscovery.ILinkDiscoveryListener;
 import net.floodlightcontroller.linkdiscovery.ILinkDiscoveryService;
-import net.floodlightcontroller.linkdiscovery.ILinkStorage;
 import net.floodlightcontroller.linkdiscovery.internal.LinkStorageImpl;
 import net.floodlightcontroller.routing.Link;
 import net.floodlightcontroller.threadpool.IThreadPoolService;
+import net.onrc.onos.ofcontroller.core.ISwitchStorage;
+import net.onrc.onos.ofcontroller.core.INetMapStorage.DM_OPERATION;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IPortObject;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.ISwitchObject;
+import net.onrc.onos.ofcontroller.core.ISwitchStorage.SwitchState;
+import net.onrc.onos.ofcontroller.core.internal.SwitchStorageImpl;
+import net.onrc.onos.ofcontroller.core.internal.TopoSwitchServiceImpl;
+import net.onrc.onos.ofcontroller.devicemanager.IDeviceStorage;
+import net.onrc.onos.ofcontroller.devicemanager.internal.DeviceStorageImpl;
+import net.onrc.onos.ofcontroller.linkdiscovery.ILinkStorage;
 import net.onrc.onos.registry.controller.IControllerRegistryService;
 import net.onrc.onos.registry.controller.IControllerRegistryService.ControlChangeCallback;
 import net.onrc.onos.registry.controller.RegistryException;
diff --git a/src/main/java/net/floodlightcontroller/routing/TopoRouteService.java b/src/main/java/net/onrc/onos/ofcontroller/routing/TopoRouteService.java
similarity index 96%
rename from src/main/java/net/floodlightcontroller/routing/TopoRouteService.java
rename to src/main/java/net/onrc/onos/ofcontroller/routing/TopoRouteService.java
index 1e002aa..f20f7ca 100644
--- a/src/main/java/net/floodlightcontroller/routing/TopoRouteService.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/routing/TopoRouteService.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.routing;
+package net.onrc.onos.ofcontroller.routing;
 
 import java.util.ArrayList;
 import java.util.Collection;
@@ -11,18 +11,18 @@
 import java.util.Queue;
 import java.util.Set;
 
-import net.floodlightcontroller.core.INetMapTopologyObjects.ISwitchObject;
-import net.floodlightcontroller.core.INetMapTopologyService.ITopoRouteService;
-import net.floodlightcontroller.core.ISwitchStorage.SwitchState;
 import net.floodlightcontroller.core.module.FloodlightModuleContext;
 import net.floodlightcontroller.core.module.FloodlightModuleException;
 import net.floodlightcontroller.core.module.IFloodlightModule;
 import net.floodlightcontroller.core.module.IFloodlightService;
-import net.floodlightcontroller.util.DataPath;
-import net.floodlightcontroller.util.Dpid;
-import net.floodlightcontroller.util.FlowEntry;
-import net.floodlightcontroller.util.Port;
-import net.floodlightcontroller.util.SwitchPort;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.ISwitchObject;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyService.ITopoRouteService;
+import net.onrc.onos.ofcontroller.core.ISwitchStorage.SwitchState;
+import net.onrc.onos.ofcontroller.util.DataPath;
+import net.onrc.onos.ofcontroller.util.Dpid;
+import net.onrc.onos.ofcontroller.util.FlowEntry;
+import net.onrc.onos.ofcontroller.util.Port;
+import net.onrc.onos.ofcontroller.util.SwitchPort;
 import net.onrc.onos.util.GraphDBConnection;
 import net.onrc.onos.util.GraphDBConnection.Transaction;
 
diff --git a/src/main/java/net/floodlightcontroller/util/CallerId.java b/src/main/java/net/onrc/onos/ofcontroller/util/CallerId.java
similarity index 95%
rename from src/main/java/net/floodlightcontroller/util/CallerId.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/CallerId.java
index ade0f0d..0607533 100644
--- a/src/main/java/net/floodlightcontroller/util/CallerId.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/CallerId.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 
diff --git a/src/main/java/net/floodlightcontroller/util/DataPath.java b/src/main/java/net/onrc/onos/ofcontroller/util/DataPath.java
similarity index 95%
rename from src/main/java/net/floodlightcontroller/util/DataPath.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/DataPath.java
index 0ca0d13..f02552b 100644
--- a/src/main/java/net/floodlightcontroller/util/DataPath.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/DataPath.java
@@ -1,9 +1,7 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
 import java.util.ArrayList;
 
-import net.floodlightcontroller.util.SwitchPort;
-import net.floodlightcontroller.util.FlowEntry;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 
diff --git a/src/main/java/net/floodlightcontroller/util/DataPathEndpoints.java b/src/main/java/net/onrc/onos/ofcontroller/util/DataPathEndpoints.java
similarity index 95%
rename from src/main/java/net/floodlightcontroller/util/DataPathEndpoints.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/DataPathEndpoints.java
index 3ee88d1..9cdd4fb 100644
--- a/src/main/java/net/floodlightcontroller/util/DataPathEndpoints.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/DataPathEndpoints.java
@@ -1,6 +1,5 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
-import net.floodlightcontroller.util.SwitchPort;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 
diff --git a/src/main/java/net/floodlightcontroller/util/Dpid.java b/src/main/java/net/onrc/onos/ofcontroller/util/Dpid.java
similarity index 88%
rename from src/main/java/net/floodlightcontroller/util/Dpid.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/Dpid.java
index 5af6bea..ce8a4f6 100644
--- a/src/main/java/net/floodlightcontroller/util/Dpid.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/Dpid.java
@@ -1,8 +1,9 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
 import org.openflow.util.HexString;
-import net.floodlightcontroller.util.serializers.DpidDeserializer;
-import net.floodlightcontroller.util.serializers.DpidSerializer;
+
+import net.onrc.onos.ofcontroller.util.serializers.DpidDeserializer;
+import net.onrc.onos.ofcontroller.util.serializers.DpidSerializer;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 import org.codehaus.jackson.map.annotate.JsonDeserialize;
diff --git a/src/main/java/net/floodlightcontroller/util/FlowEntry.java b/src/main/java/net/onrc/onos/ofcontroller/util/FlowEntry.java
similarity index 94%
rename from src/main/java/net/floodlightcontroller/util/FlowEntry.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/FlowEntry.java
index 21f3a9e..ac32d0b 100644
--- a/src/main/java/net/floodlightcontroller/util/FlowEntry.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/FlowEntry.java
@@ -1,18 +1,15 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
 import java.util.ArrayList;
 
-import net.floodlightcontroller.util.Dpid;
-import net.floodlightcontroller.util.FlowEntryAction;
-import net.floodlightcontroller.util.FlowEntryErrorState;
-import net.floodlightcontroller.util.FlowEntryId;
-import net.floodlightcontroller.util.FlowEntryMatch;
-import net.floodlightcontroller.util.FlowEntrySwitchState;
-import net.floodlightcontroller.util.FlowEntryUserState;
-import net.floodlightcontroller.util.Port;
 
 import net.floodlightcontroller.util.MACAddress;
-import net.floodlightcontroller.util.IPv4;
+import net.onrc.onos.ofcontroller.util.FlowEntryAction;
+import net.onrc.onos.ofcontroller.util.FlowEntryErrorState;
+import net.onrc.onos.ofcontroller.util.FlowEntryId;
+import net.onrc.onos.ofcontroller.util.FlowEntryMatch;
+import net.onrc.onos.ofcontroller.util.FlowEntrySwitchState;
+import net.onrc.onos.ofcontroller.util.FlowEntryUserState;
 
 import org.codehaus.jackson.annotate.JsonIgnore;
 import org.codehaus.jackson.annotate.JsonProperty;
diff --git a/src/main/java/net/floodlightcontroller/util/FlowEntryAction.java b/src/main/java/net/onrc/onos/ofcontroller/util/FlowEntryAction.java
similarity index 99%
rename from src/main/java/net/floodlightcontroller/util/FlowEntryAction.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/FlowEntryAction.java
index 1fc1783..858272c 100644
--- a/src/main/java/net/floodlightcontroller/util/FlowEntryAction.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/FlowEntryAction.java
@@ -1,8 +1,7 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
-import net.floodlightcontroller.util.IPv4;
 import net.floodlightcontroller.util.MACAddress;
-import net.floodlightcontroller.util.Port;
+import net.onrc.onos.ofcontroller.util.Port.PortValues;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 
diff --git a/src/main/java/net/floodlightcontroller/util/FlowEntryErrorState.java b/src/main/java/net/onrc/onos/ofcontroller/util/FlowEntryErrorState.java
similarity index 97%
rename from src/main/java/net/floodlightcontroller/util/FlowEntryErrorState.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/FlowEntryErrorState.java
index bf1708d..2e8c448 100644
--- a/src/main/java/net/floodlightcontroller/util/FlowEntryErrorState.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/FlowEntryErrorState.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 
diff --git a/src/main/java/net/floodlightcontroller/util/FlowEntryId.java b/src/main/java/net/onrc/onos/ofcontroller/util/FlowEntryId.java
similarity index 90%
rename from src/main/java/net/floodlightcontroller/util/FlowEntryId.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/FlowEntryId.java
index e146a3d..7a8f67b 100644
--- a/src/main/java/net/floodlightcontroller/util/FlowEntryId.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/FlowEntryId.java
@@ -1,9 +1,9 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
 import java.math.BigInteger;
 
-import net.floodlightcontroller.util.serializers.FlowEntryIdDeserializer;
-import net.floodlightcontroller.util.serializers.FlowEntryIdSerializer;
+import net.onrc.onos.ofcontroller.util.serializers.FlowEntryIdDeserializer;
+import net.onrc.onos.ofcontroller.util.serializers.FlowEntryIdSerializer;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 import org.codehaus.jackson.map.annotate.JsonDeserialize;
diff --git a/src/main/java/net/floodlightcontroller/util/FlowEntryMatch.java b/src/main/java/net/onrc/onos/ofcontroller/util/FlowEntryMatch.java
similarity index 99%
rename from src/main/java/net/floodlightcontroller/util/FlowEntryMatch.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/FlowEntryMatch.java
index 6c8e71e..0b79c01 100644
--- a/src/main/java/net/floodlightcontroller/util/FlowEntryMatch.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/FlowEntryMatch.java
@@ -1,7 +1,6 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
 import net.floodlightcontroller.util.MACAddress;
-import net.floodlightcontroller.util.IPv4Net;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 
diff --git a/src/main/java/net/floodlightcontroller/util/FlowEntrySwitchState.java b/src/main/java/net/onrc/onos/ofcontroller/util/FlowEntrySwitchState.java
similarity index 90%
rename from src/main/java/net/floodlightcontroller/util/FlowEntrySwitchState.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/FlowEntrySwitchState.java
index 4f9882a..a69fdac 100644
--- a/src/main/java/net/floodlightcontroller/util/FlowEntrySwitchState.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/FlowEntrySwitchState.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
 /**
  * The Flow Entry state as set by the controller.
diff --git a/src/main/java/net/floodlightcontroller/util/FlowEntryUserState.java b/src/main/java/net/onrc/onos/ofcontroller/util/FlowEntryUserState.java
similarity index 88%
rename from src/main/java/net/floodlightcontroller/util/FlowEntryUserState.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/FlowEntryUserState.java
index 8637b4f..e3b64f0 100644
--- a/src/main/java/net/floodlightcontroller/util/FlowEntryUserState.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/FlowEntryUserState.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
 /**
  * The Flow Entry state as set by the user (via the ONOS API).
diff --git a/src/main/java/net/floodlightcontroller/util/FlowId.java b/src/main/java/net/onrc/onos/ofcontroller/util/FlowId.java
similarity index 90%
rename from src/main/java/net/floodlightcontroller/util/FlowId.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/FlowId.java
index 0297e2a..b9652b8 100644
--- a/src/main/java/net/floodlightcontroller/util/FlowId.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/FlowId.java
@@ -1,9 +1,9 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
 import java.math.BigInteger;
 
-import net.floodlightcontroller.util.serializers.FlowIdDeserializer;
-import net.floodlightcontroller.util.serializers.FlowIdSerializer;
+import net.onrc.onos.ofcontroller.util.serializers.FlowIdDeserializer;
+import net.onrc.onos.ofcontroller.util.serializers.FlowIdSerializer;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 import org.codehaus.jackson.map.annotate.JsonDeserialize;
diff --git a/src/main/java/net/floodlightcontroller/util/FlowPath.java b/src/main/java/net/onrc/onos/ofcontroller/util/FlowPath.java
similarity index 94%
rename from src/main/java/net/floodlightcontroller/util/FlowPath.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/FlowPath.java
index b171b88..29898e6 100644
--- a/src/main/java/net/floodlightcontroller/util/FlowPath.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/FlowPath.java
@@ -1,13 +1,12 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
 import java.util.ArrayList;
 
-import net.floodlightcontroller.core.INetMapTopologyObjects.IFlowEntry;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IFlowPath;
-import net.floodlightcontroller.util.CallerId;
-import net.floodlightcontroller.util.DataPath;
-import net.floodlightcontroller.util.FlowEntryMatch;
-import net.floodlightcontroller.util.FlowId;
+import net.floodlightcontroller.util.MACAddress;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IFlowEntry;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IFlowPath;
+import net.onrc.onos.ofcontroller.util.FlowEntryMatch;
+import net.onrc.onos.ofcontroller.util.FlowId;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 
diff --git a/src/main/java/net/floodlightcontroller/util/IPv4.java b/src/main/java/net/onrc/onos/ofcontroller/util/IPv4.java
similarity index 90%
rename from src/main/java/net/floodlightcontroller/util/IPv4.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/IPv4.java
index ef3a1e5..a9d7d85 100644
--- a/src/main/java/net/floodlightcontroller/util/IPv4.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/IPv4.java
@@ -1,7 +1,7 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
-import net.floodlightcontroller.util.serializers.IPv4Deserializer;
-import net.floodlightcontroller.util.serializers.IPv4Serializer;
+import net.onrc.onos.ofcontroller.util.serializers.IPv4Deserializer;
+import net.onrc.onos.ofcontroller.util.serializers.IPv4Serializer;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 import org.codehaus.jackson.map.annotate.JsonDeserialize;
diff --git a/src/main/java/net/floodlightcontroller/util/IPv4Net.java b/src/main/java/net/onrc/onos/ofcontroller/util/IPv4Net.java
similarity index 91%
rename from src/main/java/net/floodlightcontroller/util/IPv4Net.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/IPv4Net.java
index 824e3e2..fdc6dca 100644
--- a/src/main/java/net/floodlightcontroller/util/IPv4Net.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/IPv4Net.java
@@ -1,8 +1,8 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
-import net.floodlightcontroller.util.IPv4;
-import net.floodlightcontroller.util.serializers.IPv4NetDeserializer;
-import net.floodlightcontroller.util.serializers.IPv4NetSerializer;
+import net.onrc.onos.ofcontroller.util.IPv4;
+import net.onrc.onos.ofcontroller.util.serializers.IPv4NetDeserializer;
+import net.onrc.onos.ofcontroller.util.serializers.IPv4NetSerializer;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 import org.codehaus.jackson.map.annotate.JsonDeserialize;
diff --git a/src/main/java/net/floodlightcontroller/util/IPv6.java b/src/main/java/net/onrc/onos/ofcontroller/util/IPv6.java
similarity index 93%
rename from src/main/java/net/floodlightcontroller/util/IPv6.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/IPv6.java
index eda4502..82d1db5 100644
--- a/src/main/java/net/floodlightcontroller/util/IPv6.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/IPv6.java
@@ -1,8 +1,9 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
 import org.openflow.util.HexString;
-import net.floodlightcontroller.util.serializers.IPv6Deserializer;
-import net.floodlightcontroller.util.serializers.IPv6Serializer;
+
+import net.onrc.onos.ofcontroller.util.serializers.IPv6Deserializer;
+import net.onrc.onos.ofcontroller.util.serializers.IPv6Serializer;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 import org.codehaus.jackson.map.annotate.JsonDeserialize;
diff --git a/src/main/java/net/floodlightcontroller/util/IPv6Net.java b/src/main/java/net/onrc/onos/ofcontroller/util/IPv6Net.java
similarity index 91%
rename from src/main/java/net/floodlightcontroller/util/IPv6Net.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/IPv6Net.java
index b6f7d67..aacb648 100644
--- a/src/main/java/net/floodlightcontroller/util/IPv6Net.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/IPv6Net.java
@@ -1,8 +1,8 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
-import net.floodlightcontroller.util.IPv6;
-import net.floodlightcontroller.util.serializers.IPv6NetDeserializer;
-import net.floodlightcontroller.util.serializers.IPv6NetSerializer;
+import net.onrc.onos.ofcontroller.util.IPv6;
+import net.onrc.onos.ofcontroller.util.serializers.IPv6NetDeserializer;
+import net.onrc.onos.ofcontroller.util.serializers.IPv6NetSerializer;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 import org.codehaus.jackson.map.annotate.JsonDeserialize;
diff --git a/src/main/java/net/floodlightcontroller/util/Port.java b/src/main/java/net/onrc/onos/ofcontroller/util/Port.java
similarity index 98%
rename from src/main/java/net/floodlightcontroller/util/Port.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/Port.java
index 41f0d55..34c807d 100644
--- a/src/main/java/net/floodlightcontroller/util/Port.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/Port.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 
diff --git a/src/main/java/net/floodlightcontroller/util/SwitchPort.java b/src/main/java/net/onrc/onos/ofcontroller/util/SwitchPort.java
similarity index 93%
rename from src/main/java/net/floodlightcontroller/util/SwitchPort.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/SwitchPort.java
index 027b681..afc2af3 100644
--- a/src/main/java/net/floodlightcontroller/util/SwitchPort.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/SwitchPort.java
@@ -1,7 +1,6 @@
-package net.floodlightcontroller.util;
+package net.onrc.onos.ofcontroller.util;
 
-import net.floodlightcontroller.util.Dpid;
-import net.floodlightcontroller.util.Port;
+import net.onrc.onos.ofcontroller.util.Port;
 
 import org.codehaus.jackson.annotate.JsonProperty;
 
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/DpidDeserializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/DpidDeserializer.java
similarity index 91%
rename from src/main/java/net/floodlightcontroller/util/serializers/DpidDeserializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/DpidDeserializer.java
index 9297f56..f6b1ea0 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/DpidDeserializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/DpidDeserializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
@@ -10,7 +10,7 @@
 import org.codehaus.jackson.map.JsonDeserializer;
 import org.codehaus.jackson.map.DeserializationContext;
 
-import net.floodlightcontroller.util.Dpid;
+import net.onrc.onos.ofcontroller.util.Dpid;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/DpidSerializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/DpidSerializer.java
similarity index 85%
rename from src/main/java/net/floodlightcontroller/util/serializers/DpidSerializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/DpidSerializer.java
index 06fab62..0da74d4 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/DpidSerializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/DpidSerializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
@@ -7,7 +7,7 @@
 import org.codehaus.jackson.map.JsonSerializer;
 import org.codehaus.jackson.map.SerializerProvider;
 
-import net.floodlightcontroller.util.Dpid;
+import net.onrc.onos.ofcontroller.util.Dpid;
 
 /**
  * Serialize a DPID as a string.
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/FlowEntryIdDeserializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/FlowEntryIdDeserializer.java
similarity index 91%
rename from src/main/java/net/floodlightcontroller/util/serializers/FlowEntryIdDeserializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/FlowEntryIdDeserializer.java
index e6481d5..7a15ddc 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/FlowEntryIdDeserializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/FlowEntryIdDeserializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
@@ -10,7 +10,7 @@
 import org.codehaus.jackson.map.JsonDeserializer;
 import org.codehaus.jackson.map.DeserializationContext;
 
-import net.floodlightcontroller.util.FlowEntryId;
+import net.onrc.onos.ofcontroller.util.FlowEntryId;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/FlowEntryIdSerializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/FlowEntryIdSerializer.java
similarity index 84%
rename from src/main/java/net/floodlightcontroller/util/serializers/FlowEntryIdSerializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/FlowEntryIdSerializer.java
index 4b6583c..00f4d61 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/FlowEntryIdSerializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/FlowEntryIdSerializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
@@ -7,7 +7,7 @@
 import org.codehaus.jackson.map.JsonSerializer;
 import org.codehaus.jackson.map.SerializerProvider;
 
-import net.floodlightcontroller.util.FlowEntryId;
+import net.onrc.onos.ofcontroller.util.FlowEntryId;
 
 /**
  * Serialize a Flow Entry ID as a hexadecimal string.
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/FlowIdDeserializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/FlowIdDeserializer.java
similarity index 91%
rename from src/main/java/net/floodlightcontroller/util/serializers/FlowIdDeserializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/FlowIdDeserializer.java
index a7f53d4..6e04108 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/FlowIdDeserializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/FlowIdDeserializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
@@ -10,7 +10,7 @@
 import org.codehaus.jackson.map.JsonDeserializer;
 import org.codehaus.jackson.map.DeserializationContext;
 
-import net.floodlightcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.util.FlowId;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/FlowIdSerializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/FlowIdSerializer.java
similarity index 85%
rename from src/main/java/net/floodlightcontroller/util/serializers/FlowIdSerializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/FlowIdSerializer.java
index 6f1a6f6..575126f 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/FlowIdSerializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/FlowIdSerializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
@@ -7,7 +7,7 @@
 import org.codehaus.jackson.map.JsonSerializer;
 import org.codehaus.jackson.map.SerializerProvider;
 
-import net.floodlightcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.util.FlowId;
 
 /**
  * Serialize a Flow ID as a hexadecimal string.
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/IPv4Deserializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv4Deserializer.java
similarity index 91%
rename from src/main/java/net/floodlightcontroller/util/serializers/IPv4Deserializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv4Deserializer.java
index 275f9f0..13ddc0d 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/IPv4Deserializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv4Deserializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
@@ -10,7 +10,7 @@
 import org.codehaus.jackson.map.JsonDeserializer;
 import org.codehaus.jackson.map.DeserializationContext;
 
-import net.floodlightcontroller.util.IPv4;
+import net.onrc.onos.ofcontroller.util.IPv4;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/IPv4NetDeserializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv4NetDeserializer.java
similarity index 91%
rename from src/main/java/net/floodlightcontroller/util/serializers/IPv4NetDeserializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv4NetDeserializer.java
index 3c36870..1f30e91 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/IPv4NetDeserializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv4NetDeserializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
@@ -10,7 +10,7 @@
 import org.codehaus.jackson.map.JsonDeserializer;
 import org.codehaus.jackson.map.DeserializationContext;
 
-import net.floodlightcontroller.util.IPv4Net;
+import net.onrc.onos.ofcontroller.util.IPv4Net;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/IPv4NetSerializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv4NetSerializer.java
similarity index 85%
rename from src/main/java/net/floodlightcontroller/util/serializers/IPv4NetSerializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv4NetSerializer.java
index 5c5e1d0..2580550 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/IPv4NetSerializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv4NetSerializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
@@ -7,7 +7,7 @@
 import org.codehaus.jackson.map.JsonSerializer;
 import org.codehaus.jackson.map.SerializerProvider;
 
-import net.floodlightcontroller.util.IPv4Net;
+import net.onrc.onos.ofcontroller.util.IPv4Net;
 
 /**
  * Serialize an IPv4Net address as a string.
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/IPv4Serializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv4Serializer.java
similarity index 85%
rename from src/main/java/net/floodlightcontroller/util/serializers/IPv4Serializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv4Serializer.java
index ba7d825..49dc140 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/IPv4Serializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv4Serializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
@@ -7,7 +7,7 @@
 import org.codehaus.jackson.map.JsonSerializer;
 import org.codehaus.jackson.map.SerializerProvider;
 
-import net.floodlightcontroller.util.IPv4;
+import net.onrc.onos.ofcontroller.util.IPv4;
 
 /**
  * Serialize an IPv4 address as a string.
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/IPv6Deserializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv6Deserializer.java
similarity index 91%
rename from src/main/java/net/floodlightcontroller/util/serializers/IPv6Deserializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv6Deserializer.java
index 818de30..36109e8 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/IPv6Deserializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv6Deserializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
@@ -10,7 +10,7 @@
 import org.codehaus.jackson.map.JsonDeserializer;
 import org.codehaus.jackson.map.DeserializationContext;
 
-import net.floodlightcontroller.util.IPv6;
+import net.onrc.onos.ofcontroller.util.IPv6;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/IPv6NetDeserializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv6NetDeserializer.java
similarity index 91%
rename from src/main/java/net/floodlightcontroller/util/serializers/IPv6NetDeserializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv6NetDeserializer.java
index 375dc26..ff3a0ee 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/IPv6NetDeserializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv6NetDeserializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
@@ -10,7 +10,7 @@
 import org.codehaus.jackson.map.JsonDeserializer;
 import org.codehaus.jackson.map.DeserializationContext;
 
-import net.floodlightcontroller.util.IPv6Net;
+import net.onrc.onos.ofcontroller.util.IPv6Net;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/IPv6NetSerializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv6NetSerializer.java
similarity index 85%
rename from src/main/java/net/floodlightcontroller/util/serializers/IPv6NetSerializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv6NetSerializer.java
index fc5d262..e0837d5 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/IPv6NetSerializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv6NetSerializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
@@ -7,7 +7,7 @@
 import org.codehaus.jackson.map.JsonSerializer;
 import org.codehaus.jackson.map.SerializerProvider;
 
-import net.floodlightcontroller.util.IPv6Net;
+import net.onrc.onos.ofcontroller.util.IPv6Net;
 
 /**
  * Serialize an IPv6Net address as a string.
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/IPv6Serializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv6Serializer.java
similarity index 85%
rename from src/main/java/net/floodlightcontroller/util/serializers/IPv6Serializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv6Serializer.java
index 0b08a63..b4ac122 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/IPv6Serializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/IPv6Serializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
@@ -7,7 +7,7 @@
 import org.codehaus.jackson.map.JsonSerializer;
 import org.codehaus.jackson.map.SerializerProvider;
 
-import net.floodlightcontroller.util.IPv6;
+import net.onrc.onos.ofcontroller.util.IPv6;
 
 /**
  * Serialize an IPv6 address as a string.
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/MACAddressDeserializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/MACAddressDeserializer.java
similarity index 95%
rename from src/main/java/net/floodlightcontroller/util/serializers/MACAddressDeserializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/MACAddressDeserializer.java
index 35b384d..86ed2a7 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/MACAddressDeserializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/MACAddressDeserializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
diff --git a/src/main/java/net/floodlightcontroller/util/serializers/MACAddressSerializer.java b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/MACAddressSerializer.java
similarity index 92%
rename from src/main/java/net/floodlightcontroller/util/serializers/MACAddressSerializer.java
rename to src/main/java/net/onrc/onos/ofcontroller/util/serializers/MACAddressSerializer.java
index dec2596..85c8dc4 100644
--- a/src/main/java/net/floodlightcontroller/util/serializers/MACAddressSerializer.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/util/serializers/MACAddressSerializer.java
@@ -1,4 +1,4 @@
-package net.floodlightcontroller.util.serializers;
+package net.onrc.onos.ofcontroller.util.serializers;
 
 import java.io.IOException;
 
diff --git a/src/main/java/net/onrc/onos/util/GraphDBOperation.java b/src/main/java/net/onrc/onos/util/GraphDBOperation.java
index a6ba79b..de4b8b4 100644
--- a/src/main/java/net/onrc/onos/util/GraphDBOperation.java
+++ b/src/main/java/net/onrc/onos/util/GraphDBOperation.java
@@ -3,14 +3,14 @@
 import java.util.ArrayList;
 import java.util.List;
 
-import net.floodlightcontroller.core.INetMapTopologyObjects.IDeviceObject;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IFlowEntry;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IFlowPath;
-import net.floodlightcontroller.core.INetMapTopologyObjects.IPortObject;
-import net.floodlightcontroller.core.INetMapTopologyObjects.ISwitchObject;
-import net.floodlightcontroller.core.ISwitchStorage.SwitchState;
-import net.floodlightcontroller.util.FlowEntryId;
-import net.floodlightcontroller.util.FlowId;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IDeviceObject;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IFlowEntry;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IFlowPath;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IPortObject;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.ISwitchObject;
+import net.onrc.onos.ofcontroller.core.ISwitchStorage.SwitchState;
+import net.onrc.onos.ofcontroller.util.FlowEntryId;
+import net.onrc.onos.ofcontroller.util.FlowId;
 
 import com.thinkaurelius.titan.core.TitanGraph;
 import com.tinkerpop.blueprints.Vertex;
diff --git a/src/main/java/net/onrc/onos/util/LocalTopologyEventListener.java b/src/main/java/net/onrc/onos/util/LocalTopologyEventListener.java
index 61f227d..dd3c2ec 100644
--- a/src/main/java/net/onrc/onos/util/LocalTopologyEventListener.java
+++ b/src/main/java/net/onrc/onos/util/LocalTopologyEventListener.java
@@ -1,8 +1,8 @@
 package net.onrc.onos.util;
 
-import net.floodlightcontroller.core.INetMapTopologyObjects.IPortObject;
 import net.onrc.onos.flow.FlowManagerImpl;
 import net.onrc.onos.flow.IFlowManager;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IPortObject;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
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 c807205..3e11180 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
@@ -17,9 +17,9 @@
 net.floodlightcontroller.devicemanager.test.MockDeviceManager
 net.floodlightcontroller.core.test.MockFloodlightProvider
 net.floodlightcontroller.core.test.MockThreadPoolService
-net.floodlightcontroller.onoslistener.OnosPublisher
-net.floodlightcontroller.flowcache.FlowManager
-net.floodlightcontroller.routing.TopoRouteService
-net.floodlightcontroller.bgproute.BgpRoute
+net.onrc.onos.ofcontroller.onoslistener.OnosPublisher
+net.onrc.onos.ofcontroller.flowcache.FlowManager
+net.onrc.onos.ofcontroller.routing.TopoRouteService
+net.onrc.onos.ofcontroller.bgproute.BgpRoute
 net.onrc.onos.registry.controller.ZookeeperRegistry
 net.onrc.onos.registry.controller.StandaloneRegistry
diff --git a/src/main/resources/floodlightdefault.properties b/src/main/resources/floodlightdefault.properties
index 9e4fc02..bf5bad9 100644
--- a/src/main/resources/floodlightdefault.properties
+++ b/src/main/resources/floodlightdefault.properties
@@ -6,12 +6,12 @@
 net.floodlightcontroller.counter.CounterStore,\
 net.floodlightcontroller.perfmon.PktInProcessingTime,\
 net.floodlightcontroller.ui.web.StaticWebRoutable,\
-net.floodlightcontroller.onoslistener.OnosPublisher, \
+net.onrc.onos.ofcontroller.onoslistener.OnosPublisher, \
 net.onrc.onos.registry.controller.ZookeeperRegistry
 net.floodlightcontroller.restserver.RestApiServer.port = 8080
 net.floodlightcontroller.core.FloodlightProvider.openflowport = 6633
 net.floodlightcontroller.jython.JythonDebugInterface.port = 6655
 net.floodlightcontroller.forwarding.Forwarding.idletimeout = 5
 net.floodlightcontroller.forwarding.Forwarding.hardtimeout = 0
-net.floodlightcontroller.onoslistener.OnosPublisher.dbconf = /tmp/cassandra.titan
-net.floodlightcontroller.onoslistener.OnosPublisher.EnableCleanup = True
+net.onrc.onos.ofcontroller.onoslistener.OnosPublisher.dbconf = /tmp/cassandra.titan
+net.onrc.onos.ofcontroller.onoslistener.OnosPublisher.EnableCleanup = True
diff --git a/src/test/java/net/floodlightcontroller/core/internal/ControllerTest.java b/src/test/java/net/floodlightcontroller/core/internal/ControllerTest.java
index 3dfe5fe..05e01a3 100644
--- a/src/test/java/net/floodlightcontroller/core/internal/ControllerTest.java
+++ b/src/test/java/net/floodlightcontroller/core/internal/ControllerTest.java
@@ -17,36 +17,43 @@
 
 package net.floodlightcontroller.core.internal;
 
-import static org.easymock.EasyMock.*;
+import static org.easymock.EasyMock.anyObject;
+import static org.easymock.EasyMock.capture;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.createNiceMock;
+import static org.easymock.EasyMock.eq;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.expectLastCall;
+import static org.easymock.EasyMock.isA;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.reset;
+import static org.easymock.EasyMock.same;
+import static org.easymock.EasyMock.verify;
 
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.Date;
 import java.util.HashMap;
-import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.Future;
 import java.util.concurrent.TimeUnit;
 
-import net.floodlightcontroller.core.FloodlightProvider;
 import net.floodlightcontroller.core.FloodlightContext;
+import net.floodlightcontroller.core.FloodlightProvider;
 import net.floodlightcontroller.core.IFloodlightProviderService;
-import net.floodlightcontroller.core.IHAListener;
 import net.floodlightcontroller.core.IFloodlightProviderService.Role;
-import net.floodlightcontroller.core.IOFMessageFilterManagerService;
-import net.floodlightcontroller.core.IOFMessageListener;
+import net.floodlightcontroller.core.IHAListener;
 import net.floodlightcontroller.core.IListener.Command;
+import net.floodlightcontroller.core.IOFMessageListener;
 import net.floodlightcontroller.core.IOFSwitch;
 import net.floodlightcontroller.core.IOFSwitchListener;
-import net.floodlightcontroller.core.OFMessageFilterManager;
 import net.floodlightcontroller.core.internal.Controller.IUpdate;
 import net.floodlightcontroller.core.internal.Controller.SwitchUpdate;
 import net.floodlightcontroller.core.internal.Controller.SwitchUpdateType;
 import net.floodlightcontroller.core.internal.OFChannelState.HandshakeState;
 import net.floodlightcontroller.core.module.FloodlightModuleContext;
-import net.floodlightcontroller.core.test.MockFloodlightProvider;
 import net.floodlightcontroller.core.test.MockThreadPoolService;
 import net.floodlightcontroller.counter.CounterStore;
 import net.floodlightcontroller.counter.ICounterStoreService;
@@ -72,17 +79,13 @@
 import org.openflow.protocol.OFError.OFErrorType;
 import org.openflow.protocol.OFFeaturesReply;
 import org.openflow.protocol.OFPacketIn;
-import org.openflow.protocol.OFPacketOut;
+import org.openflow.protocol.OFPacketIn.OFPacketInReason;
 import org.openflow.protocol.OFPhysicalPort;
-import org.openflow.protocol.OFPort;
 import org.openflow.protocol.OFPortStatus;
+import org.openflow.protocol.OFPortStatus.OFPortReason;
 import org.openflow.protocol.OFStatisticsReply;
 import org.openflow.protocol.OFType;
-import org.openflow.protocol.OFPacketIn.OFPacketInReason;
-import org.openflow.protocol.OFPortStatus.OFPortReason;
 import org.openflow.protocol.OFVendor;
-import org.openflow.protocol.action.OFAction;
-import org.openflow.protocol.action.OFActionOutput;
 import org.openflow.protocol.factory.BasicFactory;
 import org.openflow.protocol.statistics.OFFlowStatisticsReply;
 import org.openflow.protocol.statistics.OFStatistics;
@@ -359,125 +362,6 @@
     }
 
     @Test
-    public void testMessageFilterManager() throws Exception {
-        class MyOFMessageFilterManager extends OFMessageFilterManager {
-            public MyOFMessageFilterManager(int timer_interval) {
-                super();
-                TIMER_INTERVAL = timer_interval;
-            }
-        }
-        FloodlightModuleContext fmCntx = new FloodlightModuleContext();
-        MockFloodlightProvider mfp = new MockFloodlightProvider();
-        OFMessageFilterManager mfm = new MyOFMessageFilterManager(100);
-        MockThreadPoolService mtp = new MockThreadPoolService();
-        fmCntx.addService(IOFMessageFilterManagerService.class, mfm);
-        fmCntx.addService(IFloodlightProviderService.class, mfp);
-        fmCntx.addService(IThreadPoolService.class, mtp);
-        String sid = null;
-        
-        mfm.init(fmCntx);
-        mfm.startUp(fmCntx);
-
-        ConcurrentHashMap <String, String> filter;
-        int i;
-
-        //Adding the filter works -- adds up to the maximum filter size.
-        for(i=mfm.getMaxFilterSize(); i > 0; --i) {
-            filter = new ConcurrentHashMap<String,String>();
-            filter.put("mac", String.format("00:11:22:33:44:%d%d", i,i));
-            sid = mfm.setupFilter(null, filter, 60);
-            assertTrue(mfm.getNumberOfFilters() == mfm.getMaxFilterSize() - i +1);
-        }
-
-        // Add one more to see if you can't
-        filter = new ConcurrentHashMap<String,String>();
-        filter.put("mac", "mac2");
-        mfm.setupFilter(null, filter, 10*1000);
-
-        assertTrue(mfm.getNumberOfFilters() == mfm.getMaxFilterSize());
-
-        // Deleting the filter works.
-        mfm.setupFilter(sid, null, -1);        
-        assertTrue(mfm.getNumberOfFilters() == mfm.getMaxFilterSize()-1);
-
-        // Creating mock switch to which we will send packet out and 
-        IOFSwitch sw = createMock(IOFSwitch.class);
-        expect(sw.getId()).andReturn(new Long(0));
-
-        // Mock Packet-in   
-        IPacket testPacket = new Ethernet()
-        .setSourceMACAddress("00:44:33:22:11:00")
-        .setDestinationMACAddress("00:11:22:33:44:55")
-        .setEtherType(Ethernet.TYPE_ARP)
-        .setPayload(
-                new ARP()
-                .setHardwareType(ARP.HW_TYPE_ETHERNET)
-                .setProtocolType(ARP.PROTO_TYPE_IP)
-                .setHardwareAddressLength((byte) 6)
-                .setProtocolAddressLength((byte) 4)
-                .setOpCode(ARP.OP_REPLY)
-                .setSenderHardwareAddress(Ethernet.toMACAddress("00:44:33:22:11:00"))
-                .setSenderProtocolAddress(IPv4.toIPv4AddressBytes("192.168.1.1"))
-                .setTargetHardwareAddress(Ethernet.toMACAddress("00:11:22:33:44:55"))
-                .setTargetProtocolAddress(IPv4.toIPv4AddressBytes("192.168.1.2")));
-        byte[] testPacketSerialized = testPacket.serialize();
-
-        // Build the PacketIn        
-        OFPacketIn pi = ((OFPacketIn) new BasicFactory().getMessage(OFType.PACKET_IN))
-                .setBufferId(-1)
-                .setInPort((short) 1)
-                .setPacketData(testPacketSerialized)
-                .setReason(OFPacketInReason.NO_MATCH)
-                .setTotalLength((short) testPacketSerialized.length);
-
-        // Mock Packet-out
-        OFPacketOut packetOut =
-                (OFPacketOut) mockFloodlightProvider.getOFMessageFactory().getMessage(OFType.PACKET_OUT);
-        packetOut.setBufferId(pi.getBufferId())
-        .setInPort(pi.getInPort());
-        List<OFAction> poactions = new ArrayList<OFAction>();
-        poactions.add(new OFActionOutput(OFPort.OFPP_TABLE.getValue(), (short) 0));
-        packetOut.setActions(poactions)
-        .setActionsLength((short) OFActionOutput.MINIMUM_LENGTH)
-        .setPacketData(testPacketSerialized)
-        .setLengthU(OFPacketOut.MINIMUM_LENGTH+packetOut.getActionsLength()+testPacketSerialized.length);
-
-        FloodlightContext cntx = new FloodlightContext();
-        IFloodlightProviderService.bcStore.put(cntx, IFloodlightProviderService.CONTEXT_PI_PAYLOAD, (Ethernet) testPacket);
-
-
-        // Let's check the listeners.
-        List <IOFMessageListener> lm; 
-
-        // Check to see if all the listeners are active.
-        lm = mfp.getListeners().get(OFType.PACKET_OUT);
-        assertTrue(lm.size() == 1);
-        assertTrue(lm.get(0).equals(mfm));
-
-        lm = mfp.getListeners().get(OFType.FLOW_MOD);
-        assertTrue(lm.size() == 1);
-        assertTrue(lm.get(0).equals(mfm));
-
-        lm = mfp.getListeners().get(OFType.PACKET_IN);
-        assertTrue(lm.size() == 1);
-        assertTrue(lm.get(0).equals(mfm));
-
-        HashSet<String> matchedFilters;        
-
-        // Send a packet in and check if it matches a filter.
-        matchedFilters = mfm.getMatchedFilters(pi, cntx);
-        assertTrue(matchedFilters.size() == 1);
-
-        // Send a packet out and check if it matches a filter
-        matchedFilters = mfm.getMatchedFilters(packetOut, cntx);
-        assertTrue(matchedFilters.size() == 1);
-
-        // Wait for all filters to be timed out.
-        Thread.sleep(150);
-        assertEquals(0, mfm.getNumberOfFilters());
-    }
-
-    @Test
     public void testAddSwitch() throws Exception {
         controller.activeSwitches = new ConcurrentHashMap<Long, IOFSwitch>();
 
diff --git a/src/test/java/net/floodlightcontroller/core/internal/SwitchStorageImplTest.java b/src/test/java/net/floodlightcontroller/core/internal/SwitchStorageImplTest.java
index a187d4c..fb6b086 100644
--- a/src/test/java/net/floodlightcontroller/core/internal/SwitchStorageImplTest.java
+++ b/src/test/java/net/floodlightcontroller/core/internal/SwitchStorageImplTest.java
@@ -10,8 +10,8 @@
 import java.util.ArrayList;
 import java.util.Iterator;
 
-import net.floodlightcontroller.core.ISwitchStorage;
-import net.floodlightcontroller.core.ISwitchStorage.SwitchState;
+import net.onrc.onos.ofcontroller.core.ISwitchStorage;
+import net.onrc.onos.ofcontroller.core.ISwitchStorage.SwitchState;
 
 import org.junit.After;
 import org.junit.Before;
diff --git a/src/test/java/net/floodlightcontroller/core/internal/TestableSwitchStorageImpl.java b/src/test/java/net/floodlightcontroller/core/internal/TestableSwitchStorageImpl.java
index 73d517f..a73b90f 100644
--- a/src/test/java/net/floodlightcontroller/core/internal/TestableSwitchStorageImpl.java
+++ b/src/test/java/net/floodlightcontroller/core/internal/TestableSwitchStorageImpl.java
@@ -2,6 +2,8 @@
 
 import java.util.Set;
 
+import net.onrc.onos.ofcontroller.core.internal.SwitchStorageImpl;
+
 import com.thinkaurelius.titan.core.TitanGraph;
 import com.tinkerpop.blueprints.Vertex;
 import com.tinkerpop.blueprints.TransactionalGraph.Conclusion;
diff --git a/src/test/java/net/floodlightcontroller/linkdiscovery/internal/LinkStorageImplTest.java b/src/test/java/net/floodlightcontroller/linkdiscovery/internal/LinkStorageImplTest.java
index 1e71138..857d091 100644
--- a/src/test/java/net/floodlightcontroller/linkdiscovery/internal/LinkStorageImplTest.java
+++ b/src/test/java/net/floodlightcontroller/linkdiscovery/internal/LinkStorageImplTest.java
@@ -7,10 +7,10 @@
 import java.util.Iterator;
 import java.util.List;
 
-import net.floodlightcontroller.core.INetMapStorage.DM_OPERATION;
 import net.floodlightcontroller.core.internal.TestDatabaseManager;
-import net.floodlightcontroller.linkdiscovery.ILinkStorage;
 import net.floodlightcontroller.routing.Link;
+import net.onrc.onos.ofcontroller.core.INetMapStorage.DM_OPERATION;
+import net.onrc.onos.ofcontroller.linkdiscovery.ILinkStorage;
 
 import org.junit.After;
 import org.junit.Before;