Initial impl for NetMap service
diff --git a/src/main/java/net/floodlightcontroller/core/INetMapTopologyService.java b/src/main/java/net/floodlightcontroller/core/INetMapTopologyService.java
new file mode 100644
index 0000000..da00e0f
--- /dev/null
+++ b/src/main/java/net/floodlightcontroller/core/INetMapTopologyService.java
@@ -0,0 +1,36 @@
+package net.floodlightcontroller.core;
+
+import java.util.List;
+
+import net.floodlightcontroller.routing.Link;
+import net.floodlightcontroller.topology.NodePortTuple;
+
+public interface INetMapTopologyService extends INetMapService {
+
+	public interface ITopoSwitchService {
+		List<String> GetActiveSwitches();
+		List<String> GetAllSwitches();
+		List<String> GetInactiveSwitches();
+		List<String> GetPortsOnSwitch(String dpid);
+	}
+	
+	public interface ITopoLinkService {
+		List<Link> GetActiveLinks();
+		List<Link> GetLinksOnSwitch(String dpid);
+	}
+	public interface ITopoDeviceService {
+		List<Link> GetActiveDevices();
+		List<Link> GetDevicesOnSwitch(String dpid);
+	}
+	
+	public interface ITopoRouteService {
+		List<NodePortTuple> GetShortestpath(NodePortTuple src, NodePortTuple dest);
+		Boolean RouteExists(NodePortTuple src, NodePortTuple dest);
+	}
+	
+	public interface ITopoFlowService {
+		Boolean FlowExists(NodePortTuple src, NodePortTuple dest);
+		List<NodePortTuple> GetShortestFlowPath(NodePortTuple src, NodePortTuple dest);
+		
+	}
+}