Fixed issue which made it very slow to add switches because of refactored code which included a GremlinGroovy query
diff --git a/src/main/java/net/onrc/onos/ofcontroller/core/internal/DeviceStorageImpl.java b/src/main/java/net/onrc/onos/ofcontroller/core/internal/DeviceStorageImpl.java
index e9e2bd1..fd9d535 100644
--- a/src/main/java/net/onrc/onos/ofcontroller/core/internal/DeviceStorageImpl.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/core/internal/DeviceStorageImpl.java
@@ -121,19 +121,24 @@
 	public void removeDevice(IDeviceObject deviceObject) {
 		String deviceMac = deviceObject.getMACAddress();
 
-		for (IIpv4Address ipv4AddressVertex : deviceObject.getIpv4Addresses()) {
-			ope.removeIpv4Address(ipv4AddressVertex);
-		}
+		removeDeviceImpl(deviceObject);
 
 		try {
-			ope.removeDevice(deviceObject);
 			ope.commit();
-			log.error("DeviceStorage:removeDevice mac:{} done", deviceMac);
+			log.debug("DeviceStorage:removeDevice mac:{} done", deviceMac);
 		} catch (TitanException e) {
 			ope.rollback();
 			log.error("DeviceStorage:removeDevice mac:{} failed", deviceMac);
 		}
 	}
+	
+	public void removeDeviceImpl(IDeviceObject deviceObject) {
+		for (IIpv4Address ipv4AddressVertex : deviceObject.getIpv4Addresses()) {
+			ope.removeIpv4Address(ipv4AddressVertex);
+		}
+		
+		ope.removeDevice(deviceObject);
+	}
 
 	/***
 	 * This function is for getting the Device from the DB by Mac address of the device.