refactor SwitchStorageImpl to use GraphDBOperation class.
diff --git a/src/main/java/net/floodlightcontroller/core/internal/SwitchStorageImpl.java b/src/main/java/net/floodlightcontroller/core/internal/SwitchStorageImpl.java
index b8197b7..04a3307 100644
--- a/src/main/java/net/floodlightcontroller/core/internal/SwitchStorageImpl.java
+++ b/src/main/java/net/floodlightcontroller/core/internal/SwitchStorageImpl.java
@@ -6,8 +6,7 @@
import net.floodlightcontroller.core.INetMapTopologyObjects.ISwitchObject;
import net.floodlightcontroller.core.ISwitchStorage;
import net.onrc.onos.util.GraphDBConnection;
-import net.onrc.onos.util.GraphDBConnection.GenerateEvent;
-import net.onrc.onos.util.GraphDBConnection.Transaction;
+import net.onrc.onos.util.GraphDBOperation;
import org.openflow.protocol.OFPhysicalPort;
import org.openflow.protocol.OFPhysicalPort.OFPortConfig;
@@ -16,7 +15,7 @@
import org.slf4j.LoggerFactory;
public class SwitchStorageImpl implements ISwitchStorage {
- protected GraphDBConnection conn;
+ protected GraphDBOperation op;
protected static Logger log = LoggerFactory.getLogger(SwitchStorageImpl.class);
@Override
@@ -41,13 +40,13 @@
}
private void setStatus(String dpid, SwitchState state) {
- ISwitchObject sw = conn.utils().searchSwitch(conn, dpid);
+ ISwitchObject sw = op.searchSwitch(dpid);
if (sw != null) {
sw.setState(state.toString());
- conn.endTx(Transaction.COMMIT);
+ op.commit();
log.info("SwitchStorage:setStatus dpid:{} state: {} done", dpid, state);
} else {
- conn.endTx(Transaction.ROLLBACK);
+ op.rollback();
log.info("SwitchStorage:setStatus dpid:{} state: {} failed: switch not found", dpid, state);
}
}
@@ -64,24 +63,20 @@
}
try {
- ISwitchObject sw = conn.utils().searchSwitch(conn, dpid);
+ ISwitchObject sw = op.searchSwitch(dpid);
if (sw != null) {
- IPortObject p = conn.utils().searchPort(conn, dpid, port.getPortNumber());
+ IPortObject p = op.searchPort(dpid, port.getPortNumber());
log.info("SwitchStorage:addPort dpid:{} port:{}", dpid, port.getPortNumber());
if (p != null) {
log.error("SwitchStorage:addPort dpid:{} port:{} exists", dpid, port.getPortNumber());
} else {
- p = conn.utils().newPort(conn);
-
- p.setType("port");
- p.setNumber(port.getPortNumber());
+ p = op.newPort(port.getPortNumber());
p.setState("ACTIVE");
p.setPortState(port.getState());
p.setDesc(port.getName());
sw.addPort(p);
- conn.endTx(Transaction.COMMIT);
-
+ op.commit();
}
} else {
log.error("SwitchStorage:addPort dpid:{} port:{} : failed switch does not exist", dpid, port.getPortNumber());
@@ -89,7 +84,7 @@
} catch (Exception e) {
// TODO: handle exceptions
e.printStackTrace();
- conn.endTx(Transaction.ROLLBACK);
+ op.rollback();
log.error("SwitchStorage:addPort dpid:{} port:{} failed", dpid, port.getPortNumber());
}
@@ -119,7 +114,7 @@
log.info("SwitchStorage:addSwitch(): dpid {} ", dpid);
try {
- ISwitchObject sw = conn.utils().searchSwitch(conn, dpid);
+ ISwitchObject sw = op.searchSwitch(dpid);
if (sw != null) {
/*
* Do nothing or throw exception?
@@ -127,15 +122,13 @@
log.info("SwitchStorage:addSwitch dpid:{} already exists", dpid);
sw.setState(SwitchState.ACTIVE.toString());
- conn.endTx(Transaction.COMMIT);
+ op.commit();
} else {
- sw = conn.utils().newSwitch(conn);
+ sw = op.newSwitch(dpid);
if (sw != null) {
- sw.setType("switch");
- sw.setDPID(dpid);
sw.setState(SwitchState.ACTIVE.toString());
- conn.endTx(Transaction.COMMIT);
+ op.commit();
log.info("SwitchStorage:addSwitch dpid:{} added", dpid);
} else {
log.error("switchStorage:addSwitch dpid:{} failed -> newSwitch failed", dpid);
@@ -146,7 +139,7 @@
* retry?
*/
e.printStackTrace();
- conn.endTx(Transaction.ROLLBACK);
+ op.rollback();
log.info("SwitchStorage:addSwitch dpid:{} failed", dpid);
}
@@ -159,17 +152,17 @@
try {
- ISwitchObject sw = conn.utils().searchSwitch(conn, dpid);
+ ISwitchObject sw = op.searchSwitch(dpid);
if (sw != null) {
- conn.utils().removeSwitch(conn, sw);
+ op.removeSwitch(sw);
- conn.endTx(Transaction.COMMIT);
+ op.commit();
log.info("SwitchStorage:DeleteSwitch dpid:{} done", dpid);
}
} catch (Exception e) {
// TODO: handle exceptions
e.printStackTrace();
- conn.endTx(Transaction.ROLLBACK);
+ op.rollback();
log.error("SwitchStorage:deleteSwitch {} failed", dpid);
}
@@ -179,21 +172,21 @@
public void deletePort(String dpid, short port) {
// TODO Auto-generated method stub
try {
- ISwitchObject sw = conn.utils().searchSwitch(conn, dpid);
+ ISwitchObject sw = op.searchSwitch(dpid);
if (sw != null) {
- IPortObject p = conn.utils().searchPort(conn, dpid, port);
+ IPortObject p = op.searchPort(dpid, port);
if (p != null) {
log.info("SwitchStorage:deletePort dpid:{} port:{} found and deleted", dpid, port);
sw.removePort(p);
- conn.utils().removePort(conn, p);
- conn.endTx(Transaction.COMMIT);
+ op.removePort(p);
+ op.commit();
}
}
} catch (Exception e) {
// TODO: handle exceptions
e.printStackTrace();
- conn.endTx(Transaction.ROLLBACK);
+ op.rollback();
log.info("SwitchStorage:deletePort dpid:{} port:{} failed", dpid, port);
}
}
@@ -208,9 +201,8 @@
@Override
public void init(String conf) {
-
- conn = GraphDBConnection.getInstance(conf);
-
+ GraphDBConnection conn = GraphDBConnection.getInstance(conf);
+ op = new GraphDBOperation(conn);
}
@@ -221,7 +213,7 @@
@Override
public void close() {
- conn.close();
+ op.close();
}