newSwitch() and newPort() require DPID and port number respectively.
diff --git a/src/main/java/net/onrc/onos/util/GraphDBOperation.java b/src/main/java/net/onrc/onos/util/GraphDBOperation.java
index 8e6a74d..1699bde 100644
--- a/src/main/java/net/onrc/onos/util/GraphDBOperation.java
+++ b/src/main/java/net/onrc/onos/util/GraphDBOperation.java
@@ -26,10 +26,13 @@
 	}
 	
 	@Override
-	public ISwitchObject newSwitch() {
+	public ISwitchObject newSwitch(String dpid) {
 		FramedGraph<TitanGraph> fg = conn.getFramedGraph();	
 		ISwitchObject obj = fg.addVertex(null,ISwitchObject.class);
-		if (obj != null) obj.setType("switch");
+		if (obj != null) {
+			obj.setType("switch");
+			obj.setDPID(dpid);
+		}
 		return obj;
 	}
 
@@ -88,10 +91,13 @@
 	}
 
 	@Override
-	public IPortObject newPort() {
+	public IPortObject newPort(Short portNumber) {
 		FramedGraph<TitanGraph> fg = conn.getFramedGraph();	
 		IPortObject obj = fg.addVertex(null,IPortObject.class);
-		if (obj != null) obj.setType("port");
+		if (obj != null) {
+			obj.setType("port");
+			obj.setNumber(portNumber);
+		}
 		return obj;
 	}
 	
diff --git a/src/main/java/net/onrc/onos/util/IDBOperation.java b/src/main/java/net/onrc/onos/util/IDBOperation.java
index 4cf0f7c..6a0d52d 100644
--- a/src/main/java/net/onrc/onos/util/IDBOperation.java
+++ b/src/main/java/net/onrc/onos/util/IDBOperation.java
@@ -9,28 +9,32 @@
 import net.floodlightcontroller.util.FlowId;
 
 public interface IDBOperation {	
+	public ISwitchObject newSwitch(String dpid);
 	public ISwitchObject searchSwitch(String dpid);
 	public ISwitchObject searchActiveSwitch(String dpid);
 	public Iterable<ISwitchObject> getActiveSwitches();
 	public Iterable<ISwitchObject> getAllSwitches();
 	public Iterable<ISwitchObject> getInactiveSwitches();
-	public IDeviceObject searchDevice(String macAddr);
-	public IDeviceObject newDevice();
-	public void removeDevice(IDeviceObject dev);
+	public Iterable<IFlowEntry> getAllSwitchNotUpdatedFlowEntries();
+	public void removeSwitch(ISwitchObject sw);
+	
+	public IPortObject newPort(Short portNumber);
 	public IPortObject searchPort(String dpid, short number);
+	public void removePort(IPortObject port);
+	
+	public IDeviceObject newDevice();
+	public IDeviceObject searchDevice(String macAddr);
 	public Iterable<IDeviceObject> getDevices();
-	public IFlowPath searchFlowPath(FlowId flowId);
+	public void removeDevice(IDeviceObject dev);
+
 	public IFlowPath newFlowPath();
-	public void removeFlowPath(IFlowPath flowPath);
+	public IFlowPath searchFlowPath(FlowId flowId);
 	public IFlowPath getFlowPathByFlowEntry(IFlowEntry flowEntry);
 	public Iterable<IFlowPath> getAllFlowPaths();
-	public IFlowEntry searchFlowEntry(FlowEntryId flowEntryId);
+	public void removeFlowPath(IFlowPath flowPath);
+
 	public IFlowEntry newFlowEntry();
-	public void removeFlowEntry(IFlowEntry flowEntry);
+	public IFlowEntry searchFlowEntry(FlowEntryId flowEntryId);
 	public Iterable<IFlowEntry> getAllFlowEntries();
-	public IPortObject newPort();
-	public ISwitchObject newSwitch();
-	public void removePort(IPortObject port);
-	public void removeSwitch(ISwitchObject sw);
-	public Iterable<IFlowEntry> getAllSwitchNotUpdatedFlowEntries();
+	public void removeFlowEntry(IFlowEntry flowEntry);
 }