Modified how to get DBOperator object
diff --git a/src/main/java/net/onrc/onos/graph/GraphDBManager.java b/src/main/java/net/onrc/onos/graph/GraphDBManager.java
index fb5c0d8..0709cc4 100644
--- a/src/main/java/net/onrc/onos/graph/GraphDBManager.java
+++ b/src/main/java/net/onrc/onos/graph/GraphDBManager.java
@@ -25,7 +25,7 @@
}
public static DBOperation getDBOperation(final String dbStore, final String dbConfigFile) {
- if (operation == null){
+ if (operation == null) {
if (dbStore.equals("ramcloud")) {
operation = new RamCloudDBOperation();
} else if (dbStore.equals("titan")) {
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 33280a6..3ff6058 100644
--- a/src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRoute.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/bgproute/BgpRoute.java
@@ -280,7 +280,7 @@
ScheduledExecutorService executor = Executors.newScheduledThreadPool(1);
topologyChangeDetectorTask = new SingletonTask(executor, new TopologyChangeDetector());
- topologyNetService = new TopologyManager("");
+ topologyNetService = new TopologyManager(context);
pathsWaitingOnArp = new HashMap<InetAddress, Path>();
prefixesWaitingOnArp = Multimaps.synchronizedSetMultimap(
diff --git a/src/main/java/net/onrc/onos/ofcontroller/core/internal/TopoSwitchServiceImpl.java b/src/main/java/net/onrc/onos/ofcontroller/core/internal/TopoSwitchServiceImpl.java
index fafcbc0..2ae8bd1 100644
--- a/src/main/java/net/onrc/onos/ofcontroller/core/internal/TopoSwitchServiceImpl.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/core/internal/TopoSwitchServiceImpl.java
@@ -11,15 +11,15 @@
public class TopoSwitchServiceImpl implements ITopoSwitchService {
- private DBOperation dbop;
+ private DBOperation op;
protected final static Logger log = LoggerFactory.getLogger(TopoSwitchServiceImpl.class);
public TopoSwitchServiceImpl(final String dbStore, String conf) {
- dbop = GraphDBManager.getDBOperation(dbStore, conf);
+ op = GraphDBManager.getDBOperation(dbStore, conf);;
}
public TopoSwitchServiceImpl() {
- this("titan","/tmp/cassandra.titan");
+ this("","");
}
public void finalize() {
@@ -28,34 +28,34 @@
@Override
public void close() {
- dbop.close();
+ op.close();
}
@Override
public Iterable<ISwitchObject> getActiveSwitches() {
// TODO Auto-generated method stub
- dbop.close(); //Commit to ensure we see latest data
- return dbop.getActiveSwitches();
+ op.close(); //Commit to ensure we see latest data
+ return op.getActiveSwitches();
}
@Override
public Iterable<ISwitchObject> getAllSwitches() {
// TODO Auto-generated method stub
- dbop.close(); //Commit to ensure we see latest data
- return dbop.getAllSwitches();
+ op.close(); //Commit to ensure we see latest data
+ return op.getAllSwitches();
}
@Override
public Iterable<ISwitchObject> getInactiveSwitches() {
// TODO Auto-generated method stub
- dbop.close(); //Commit to ensure we see latest data
- return dbop.getInactiveSwitches();
+ op.close(); //Commit to ensure we see latest data
+ return op.getInactiveSwitches();
}
@Override
public Iterable<IPortObject> getPortsOnSwitch(String dpid) {
- dbop.close(); //Commit to ensure we see latest data
- ISwitchObject switchObject = dbop.searchSwitch(dpid);
+ op.close(); //Commit to ensure we see latest data
+ ISwitchObject switchObject = op.searchSwitch(dpid);
if (switchObject != null) {
return switchObject.getPorts();
}
diff --git a/src/main/java/net/onrc/onos/ofcontroller/topology/TopologyManager.java b/src/main/java/net/onrc/onos/ofcontroller/topology/TopologyManager.java
index e4af36d..d605fc1 100644
--- a/src/main/java/net/onrc/onos/ofcontroller/topology/TopologyManager.java
+++ b/src/main/java/net/onrc/onos/ofcontroller/topology/TopologyManager.java
@@ -14,6 +14,7 @@
import net.onrc.onos.datagrid.IDatagridService;
import net.onrc.onos.graph.DBOperation;
import net.onrc.onos.graph.GraphDBManager;
+import net.onrc.onos.graph.GraphDBOperation;
import net.onrc.onos.ofcontroller.floodlightlistener.INetworkGraphService;
import net.onrc.onos.ofcontroller.util.DataPath;
import net.onrc.onos.ofcontroller.util.FlowEntry;
@@ -35,6 +36,9 @@
private final static Logger log = LoggerFactory.getLogger(TopologyManager.class);
protected IFloodlightProviderService floodlightProvider;
+ protected static final String DBConfigFile = "dbconf";
+ protected static final String GraphDBStore = "graph_db_store";
+
protected DBOperation dbHandler;
@@ -50,8 +54,11 @@
* @param config the database configuration file to use for
* the initialization.
*/
- public TopologyManager(String config) {
- this.init("",config);
+ public TopologyManager(FloodlightModuleContext context) {
+ Map<String, String> configMap = context.getConfigParams(this);
+ String conf = configMap.get(DBConfigFile);
+ String dbStore = configMap.get(GraphDBStore);
+ this.init(dbStore,conf);
}
/**
@@ -146,9 +153,10 @@
public void init(FloodlightModuleContext context)
throws FloodlightModuleException {
floodlightProvider = context.getServiceImpl(IFloodlightProviderService.class);
-
- String conf = "";
- this.init("",conf);
+ Map<String, String> configMap = context.getConfigParams(this);
+ String conf = configMap.get(DBConfigFile);
+ String dbStore = configMap.get(GraphDBStore);
+ this.init(dbStore, conf);
}
/**