Moved pure ONOS code in net.floodlightcontroller.core to onos package namespace
diff --git a/src/main/java/net/onrc/onos/flow/FlowManagerImpl.java b/src/main/java/net/onrc/onos/flow/FlowManagerImpl.java
index b8b3303..6044598 100644
--- a/src/main/java/net/onrc/onos/flow/FlowManagerImpl.java
+++ b/src/main/java/net/onrc/onos/flow/FlowManagerImpl.java
@@ -17,10 +17,6 @@
 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;
@@ -30,6 +26,10 @@
 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.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..a3c2965 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;
 
 public interface IFlowManager {
     /**
diff --git a/src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRoute.java b/src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRoute.java
index 16cb90b..f657852 100644
--- a/src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRoute.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRoute.java
@@ -12,7 +12,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;
@@ -31,6 +30,7 @@
 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.sf.json.JSONArray;
 import net.sf.json.JSONObject;
 import net.sf.json.JSONSerializer;
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/onrc/onos/ofcontroller/core/INetMapStorage.java b/src/main/java/net/onrc/onos/ofcontroller/core/INetMapStorage.java
new file mode 100644
index 0000000..b052540
--- /dev/null
+++ b/src/main/java/net/onrc/onos/ofcontroller/core/INetMapStorage.java
@@ -0,0 +1,19 @@
+/**
+ * 
+ */
+package net.onrc.onos.ofcontroller.core;
+
+/**
+ * @author pankaj
+ *
+ */
+public interface INetMapStorage {
+	enum DM_OPERATION {
+		CREATE, // Create the object type if does not exist and insert the object
+		INSERT, // Insert the object if it does not exist
+		DELETE, // Delete the object
+		UPDATE  // Update the object if exists or CREATE/INSERT if does not exist
+	}
+	public void init(String conf);
+	public void close();
+}
diff --git a/src/main/java/net/onrc/onos/ofcontroller/core/INetMapTopologyObjects.java b/src/main/java/net/onrc/onos/ofcontroller/core/INetMapTopologyObjects.java
new file mode 100644
index 0000000..fcb57ea
--- /dev/null
+++ b/src/main/java/net/onrc/onos/ofcontroller/core/INetMapTopologyObjects.java
@@ -0,0 +1,389 @@
+package net.onrc.onos.ofcontroller.core;
+
+import net.floodlightcontroller.flowcache.web.DatapathSummarySerializer;
+import net.onrc.onos.ofcontroller.core.INetMapTopologyObjects.IPortObject;
+
+import org.codehaus.jackson.annotate.JsonIgnore;
+import org.codehaus.jackson.annotate.JsonProperty;
+import org.codehaus.jackson.map.annotate.JsonSerialize;
+
+import com.tinkerpop.blueprints.Direction;
+import com.tinkerpop.frames.Adjacency;
+import com.tinkerpop.frames.Incidence;
+import com.tinkerpop.frames.Property;
+import com.tinkerpop.frames.annotations.gremlin.GremlinGroovy;
+import com.tinkerpop.frames.annotations.gremlin.GremlinParam;
+import com.tinkerpop.frames.VertexFrame;
+
+public interface INetMapTopologyObjects {
+	
+public interface IBaseObject extends VertexFrame {
+	
+	@JsonProperty("state")
+	@Property("state")
+	public String getState();
+	
+	@Property("state")
+	public void setState(final String state);
+	
+	@JsonIgnore
+	@Property("type")
+	public String getType();
+	@Property("type")
+	public void setType(final String type);
+	
+}
+	
+public interface ISwitchObject extends IBaseObject{
+		
+		@JsonProperty("dpid")
+		@Property("dpid")
+		public String getDPID();
+		
+		@Property("dpid")
+		public void setDPID(String dpid);
+				
+		@JsonProperty("ports")
+		@Adjacency(label="on")
+		public Iterable<IPortObject> getPorts();
+
+// Requires Frames 2.3.0		
+		@JsonIgnore
+		@GremlinGroovy("_().out('on').has('number',port_num)")
+		public IPortObject getPort(@GremlinParam("port_num") final short port_num);
+		
+		@Adjacency(label="on")
+		public void addPort(final IPortObject port);
+		
+		@Adjacency(label="on")
+		public void removePort(final IPortObject port);
+		
+		@JsonIgnore
+		@GremlinGroovy("_().out('on').out('host')")
+		public Iterable<IDeviceObject> getDevices();
+		
+		@JsonIgnore
+		@Incidence(label="switch",direction = Direction.IN)
+		public Iterable<IFlowEntry> getFlowEntries();
+
+	}
+	
+	public interface IPortObject extends IBaseObject{
+				
+		@JsonProperty("number")
+		@Property("number")
+		public Short getNumber();
+		
+		@Property("number")
+		public void setNumber(Short n);
+		
+		@JsonProperty("desc")
+		@Property("desc")
+		public String getDesc();
+		
+		@Property("desc")
+		public void setDesc(String s);
+		
+		@JsonIgnore
+		@Property("port_state")
+		public Integer getPortState();
+		
+		@Property("port_state")
+		public void setPortState(Integer s);
+		
+		@JsonIgnore
+		@Incidence(label="on",direction = Direction.IN)
+		public ISwitchObject getSwitch();
+				
+		@JsonProperty("devices")
+		@Adjacency(label="host")
+		public Iterable<IDeviceObject> getDevices();
+		
+		@Adjacency(label="host")
+		public void setDevice(final IDeviceObject device);
+		
+		@Adjacency(label="host")
+		public void removeDevice(final IDeviceObject device);
+		
+		@JsonIgnore
+		@Incidence(label="inport",direction = Direction.IN)
+		public Iterable<IFlowEntry> getInFlowEntries();
+		
+		@JsonIgnore
+		@Incidence(label="outport",direction = Direction.IN)
+		public Iterable<IFlowEntry> getOutFlowEntries();
+		
+		@JsonIgnore
+		@Adjacency(label="link")
+		public Iterable<IPortObject> getLinkedPorts();
+		
+		@Adjacency(label="link")
+		public void removeLink(final IPortObject dest_port);
+		
+		@Adjacency(label="link")
+		public void setLinkPort(final IPortObject dest_port);			
+		
+//		@JsonIgnore
+//		@Adjacency(label="link")
+//		public Iterable<ILinkObject> getLinks();
+	}
+	
+	public interface IDeviceObject extends IBaseObject {
+		
+		@JsonProperty("mac")
+		@Property("dl_addr")
+		public String getMACAddress();
+		@Property("dl_addr")
+		public void setMACAddress(String macaddr);
+		
+		@JsonProperty("ipv4")
+		@Property("nw_addr")
+		public String getIPAddress();
+		@Property("dl_addr")
+		public void setIPAddress(String ipaddr);
+		
+		@JsonIgnore
+		@Incidence(label="host",direction = Direction.IN)
+		public Iterable<IPortObject> getAttachedPorts();
+			
+		@JsonIgnore
+		@Incidence(label="host",direction=Direction.IN)
+		public void setHostPort(final IPortObject port);
+		
+		@JsonIgnore
+		@Incidence(label="host",direction=Direction.IN)
+		public void removeHostPort(final IPortObject port);
+		
+		@JsonIgnore
+		@GremlinGroovy("_().in('host').in('on')")
+		public Iterable<ISwitchObject> getSwitch();
+		
+/*		@JsonProperty("dpid")
+		@GremlinGroovy("_().in('host').in('on').next().getProperty('dpid')")
+		public Iterable<String> getSwitchDPID();
+		
+		@JsonProperty("number")
+		@GremlinGroovy("_().in('host').transform{it.number}")
+		public Iterable<Short> getPortNumber();
+		
+		@JsonProperty("AttachmentPoint")
+		@GremlinGroovy("_().in('host').in('on').path(){it.number}{it.dpid}")
+		public Iterable<SwitchPort> getAttachmentPoints();*/
+	}
+
+public interface IFlowPath extends IBaseObject {
+		@JsonProperty("flowId")
+		@Property("flow_id")
+		public String getFlowId();
+
+		@Property("flow_id")
+		public void setFlowId(String flowId);
+
+		@JsonProperty("installerId")
+		@Property("installer_id")
+		public String getInstallerId();
+
+		@Property("installer_id")
+		public void setInstallerId(String installerId);
+
+		@JsonProperty("srcDpid")
+		@Property("src_switch")
+		public String getSrcSwitch();
+
+		@Property("src_switch")
+		public void setSrcSwitch(String srcSwitch);
+
+		@JsonProperty("srcPort")
+		@Property("src_port")
+		public Short getSrcPort();
+
+		@Property("src_port")
+		public void setSrcPort(Short srcPort);
+
+		@JsonProperty("dstDpid")
+		@Property("dst_switch")
+		public String getDstSwitch();
+
+		@Property("dst_switch")
+		public void setDstSwitch(String dstSwitch);
+
+		@JsonProperty("dstPort")
+		@Property("dst_port")
+		public Short getDstPort();
+
+		@Property("dst_port")
+		public void setDstPort(Short dstPort);
+
+		@JsonProperty("dataPath")
+		@JsonSerialize(using=DatapathSummarySerializer.class)
+		@Property("data_path_summary")
+		public String getDataPathSummary();
+
+		@Property("data_path_summary")
+		public void setDataPathSummary(String dataPathSummary);
+
+		@JsonIgnore
+		@Adjacency(label="flow", direction=Direction.IN)
+		public Iterable<IFlowEntry> getFlowEntries();
+
+		@Adjacency(label="flow", direction=Direction.IN)
+		public void addFlowEntry(final IFlowEntry flowEntry);
+
+		@Adjacency(label="flow", direction=Direction.IN)
+		public void removeFlowEntry(final IFlowEntry flowEntry);
+
+		@JsonIgnore
+		@Property("matchEthernetFrameType")
+		public Short getMatchEthernetFrameType();
+
+		@Property("matchEthernetFrameType")
+		public void setMatchEthernetFrameType(Short matchEthernetFrameType);
+
+		@JsonIgnore
+		@Property("matchSrcMac")
+		public String getMatchSrcMac();
+
+		@Property("matchSrcMac")
+		public void setMatchSrcMac(String matchSrcMac);
+
+		@JsonIgnore
+		@Property("matchDstMac")
+		public String getMatchDstMac();
+
+		@Property("matchDstMac")
+		public void setMatchDstMac(String matchDstMac);
+
+		@JsonIgnore
+		@Property("matchSrcIPv4Net")
+		public String getMatchSrcIPv4Net();
+
+		@Property("matchSrcIPv4Net")
+		public void setMatchSrcIPv4Net(String matchSrcIPv4Net);
+
+		@JsonIgnore
+		@Property("matchDstIPv4Net")
+		public String getMatchDstIPv4Net();
+
+		@Property("matchDstIPv4Net")
+		public void setMatchDstIPv4Net(String matchDstIPv4Net);
+		
+		@JsonIgnore
+		@GremlinGroovy("_().in('flow').out('switch')")
+		public Iterable<ISwitchObject> getSwitches();
+		
+		@JsonIgnore
+		@Property("state")
+		public String getState();
+
+		@JsonIgnore
+		@Property("user_state")
+		public String getUserState();
+
+		@Property("user_state")
+		public void setUserState(String userState);
+	}
+
+public interface IFlowEntry extends IBaseObject {
+		@Property("flow_entry_id")
+		public String getFlowEntryId();
+
+		@Property("flow_entry_id")
+		public void setFlowEntryId(String flowEntryId);
+
+		@Property("switch_dpid")
+		public String getSwitchDpid();
+
+		@Property("switch_dpid")
+		public void setSwitchDpid(String switchDpid);
+
+		@Property("user_state")
+		public String getUserState();
+
+		@Property("user_state")
+		public void setUserState(String userState);
+
+		@Property("switch_state")
+		public String getSwitchState();
+
+		@Property("switch_state")
+		public void setSwitchState(String switchState);
+
+		@Property("error_state_type")
+		public String getErrorStateType();
+
+		@Property("error_state_type")
+		public void setErrorStateType(String errorStateType);
+
+		@Property("error_state_code")
+		public String getErrorStateCode();
+
+		@Property("error_state_code")
+		public void setErrorStateCode(String errorStateCode);
+
+		@Property("matchInPort")
+		public Short getMatchInPort();
+
+		@Property("matchInPort")
+		public void setMatchInPort(Short matchInPort);
+
+		@Property("matchEthernetFrameType")
+		public Short getMatchEthernetFrameType();
+
+		@Property("matchEthernetFrameType")
+		public void setMatchEthernetFrameType(Short matchEthernetFrameType);
+
+		@Property("matchSrcMac")
+		public String getMatchSrcMac();
+
+		@Property("matchSrcMac")
+		public void setMatchSrcMac(String matchSrcMac);
+
+		@Property("matchDstMac")
+		public String getMatchDstMac();
+
+		@Property("matchDstMac")
+		public void setMatchDstMac(String matchDstMac);
+
+		@Property("matchSrcIPv4Net")
+		public String getMatchSrcIPv4Net();
+
+		@Property("matchSrcIPv4Net")
+		public void setMatchSrcIPv4Net(String matchSrcIPv4Net);
+
+		@Property("matchDstIPv4Net")
+		public String getMatchDstIPv4Net();
+
+		@Property("matchDstIPv4Net")
+		public void setMatchDstIPv4Net(String matchDstIPv4Net);
+
+		@Property("actionOutput")
+		public Short getActionOutput();
+
+		@Property("actionOutput")
+		public void setActionOutput(Short actionOutput);
+
+		@Adjacency(label="flow")
+		public IFlowPath getFlow();
+
+		@Adjacency(label="flow")
+		public void setFlow(IFlowPath flow);
+
+		@Adjacency(label="switch")
+		public ISwitchObject getSwitch();
+
+		@Adjacency(label="switch")
+		public void setSwitch(ISwitchObject sw);
+
+		@Adjacency(label="inport")
+		public IPortObject getInPort();
+
+		@Adjacency(label="inport")
+		public void setInPort(IPortObject port);
+
+		@Adjacency(label="outport")
+		public IPortObject getOutPort();
+
+		@Adjacency(label="outport")
+		public void setOutPort(IPortObject port);
+	}
+}
diff --git a/src/main/java/net/onrc/onos/ofcontroller/core/INetMapTopologyService.java b/src/main/java/net/onrc/onos/ofcontroller/core/INetMapTopologyService.java
new file mode 100644
index 0000000..b67ca95
--- /dev/null
+++ b/src/main/java/net/onrc/onos/ofcontroller/core/INetMapTopologyService.java
@@ -0,0 +1,123 @@
+package net.onrc.onos.ofcontroller.core;
+
+import java.util.List;
+import java.util.Map;
+
+import net.floodlightcontroller.core.module.IFloodlightService;
+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;
+
+public interface INetMapTopologyService extends INetMapService {
+
+	public interface ITopoSwitchService {
+		Iterable<ISwitchObject> getActiveSwitches();
+		Iterable<ISwitchObject> getAllSwitches();
+		Iterable<ISwitchObject> getInactiveSwitches();
+		Iterable<IPortObject> getPortsOnSwitch(String dpid);
+		IPortObject getPortOnSwitch(String dpid, short port_num);
+		void close();
+
+	}
+	
+	public interface ITopoLinkService {
+		List<Link> getActiveLinks();
+		List<Link> getLinksOnSwitch(String dpid);
+		void close();
+	}
+	public interface ITopoDeviceService {
+		Iterable<IDeviceObject> getActiveDevices();
+		Iterable<IDeviceObject> getDevicesOnSwitch(String dpid);
+		Iterable<IDeviceObject> getDevicesOnSwitch(String dpid, short port_num);
+	}
+	
+	public interface ITopoRouteService extends IFloodlightService {
+	    /**
+	     * Get the shortest path from a source to a destination.
+	     *
+	     * @param src the source in the shortest path computation.
+	     * @param dest the destination in the shortest path computation.
+	     * @return the data path with the computed shortest path if
+	     * found, otherwise null.
+	     */
+	    DataPath getShortestPath(SwitchPort src, SwitchPort dest);
+
+	    /**
+	     * Fetch the Switch and Ports info from the Titan Graph
+	     * and return it for fast access during the shortest path
+	     * computation.
+	     *
+	     * After fetching the state, method @ref getTopoShortestPath()
+	     * can be used for fast shortest path computation.
+	     *
+	     * Note: There is certain cost to fetch the state, hence it should
+	     * be used only when there is a large number of shortest path
+	     * computations that need to be done on the same topology.
+	     * Typically, a single call to @ref prepareShortestPathTopo()
+	     * should be followed by a large number of calls to
+	     * method @ref getTopoShortestPath().
+	     * After the last @ref getTopoShortestPath() call,
+	     * method @ref dropShortestPathTopo() should be used to release
+	     * the internal state that is not needed anymore:
+	     *
+	     *       Map<Long, ?> shortestPathTopo;
+	     *       shortestPathTopo = prepareShortestPathTopo();
+	     *       for (int i = 0; i < 10000; i++) {
+	     *           dataPath = getTopoShortestPath(shortestPathTopo, ...);
+	     *           ...
+	     *        }
+	     *        dropShortestPathTopo(shortestPathTopo);
+	     *
+	     * @return the Shortest Path info handler stored in a map.
+	     */
+	    Map<Long, ?> prepareShortestPathTopo();
+
+	    /**
+	     * Release the state that was populated by
+	     * method @ref prepareShortestPathTopo().
+	     *
+	     * See the documentation for method @ref prepareShortestPathTopo()
+	     * for additional information and usage.
+	     *
+	     * @shortestPathTopo the Shortest Path info handler to release.
+	     */
+	    void dropShortestPathTopo(Map<Long, ?> shortestPathTopo);
+
+	    /**
+	     * Get the shortest path from a source to a destination by
+	     * using the pre-populated local topology state prepared
+	     * by method @ref prepareShortestPathTopo().
+	     *
+	     * See the documentation for method @ref prepareShortestPathTopo()
+	     * for additional information and usage.
+	     *
+	     * @paran shortestPathTopoHandler the Shortest Path info handler
+	     * to use.
+	     * @param src the source in the shortest path computation.
+	     * @param dest the destination in the shortest path computation.
+	     * @return the data path with the computed shortest path if
+	     * found, otherwise null.
+	     */
+	    DataPath getTopoShortestPath(Map<Long, ?> shortestPathTopo,
+					 SwitchPort src, SwitchPort dest);
+
+	    /**
+	     * Test whether a route exists from a source to a destination.
+	     *
+	     * @param src the source node for the test.
+	     * @param dest the destination node for the test.
+	     * @return true if a route exists, otherwise false.
+	     */
+	    Boolean routeExists(SwitchPort src, SwitchPort dest);
+	}
+	
+	public interface ITopoFlowService {
+		Boolean flowExists(NodePortTuple src, NodePortTuple dest);
+		List<NodePortTuple> getShortestFlowPath(NodePortTuple src, NodePortTuple dest);
+		
+	}
+}
diff --git a/src/main/java/net/onrc/onos/ofcontroller/core/ISwitchStorage.java b/src/main/java/net/onrc/onos/ofcontroller/core/ISwitchStorage.java
new file mode 100644
index 0000000..d008220
--- /dev/null
+++ b/src/main/java/net/onrc/onos/ofcontroller/core/ISwitchStorage.java
@@ -0,0 +1,59 @@
+package net.onrc.onos.ofcontroller.core;
+
+import java.util.Collection;
+
+
+import org.openflow.protocol.OFPhysicalPort;
+
+public interface ISwitchStorage extends INetMapStorage {
+	
+	public enum SwitchState {
+		INACTIVE,
+		ACTIVE
+	}
+	
+	/*
+	 * Update the switch details
+	 */
+	public void update(String dpid,SwitchState state, DM_OPERATION op);
+	/*
+	 * Associate a port on switch
+	 */
+	public void addPort(String dpid, OFPhysicalPort port);
+	/*
+	 * Get all ports associated on a switch
+	 */
+	public Collection<OFPhysicalPort> getPorts(long dpid);
+	/*
+	 * Get Port by Number
+	 */
+	public OFPhysicalPort getPort(String dpid, short portnum);
+	/*
+	 * Get port by name
+	 */
+	public OFPhysicalPort getPort(String dpid, String portName);
+	/*
+	 * Add a switch
+	 */
+	public void addSwitch(String dpid);
+	/*
+	 * Delete switch and associated ports
+	 */
+	public void deleteSwitch(String dpid);
+	/*
+	 * Delete a port on a switch by num
+	 */
+	public void deletePort(String dpid, short port);
+	/*
+	 * Delete port on a switch by name
+	 */
+	public void deletePort(String dpid, String portName);
+	
+	
+	/*
+	 * Initialize
+	 */
+	public void init(String conf);
+	
+
+}
diff --git a/src/main/java/net/onrc/onos/util/GraphDBUtils.java b/src/main/java/net/onrc/onos/util/GraphDBUtils.java
index 2522765..134dc12 100644
--- a/src/main/java/net/onrc/onos/util/GraphDBUtils.java
+++ b/src/main/java/net/onrc/onos/util/GraphDBUtils.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 com.thinkaurelius.titan.core.TitanGraph;
 import com.tinkerpop.blueprints.Vertex;
diff --git a/src/main/java/net/onrc/onos/util/IDBUtils.java b/src/main/java/net/onrc/onos/util/IDBUtils.java
index 35803d2..0fe8f25 100644
--- a/src/main/java/net/onrc/onos/util/IDBUtils.java
+++ b/src/main/java/net/onrc/onos/util/IDBUtils.java
@@ -1,12 +1,12 @@
 package net.onrc.onos.util;
 
-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.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;
 
 public interface IDBUtils {	
 	public ISwitchObject searchSwitch(GraphDBConnection conn, String dpid);
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;