blob: f2316b9a55a2bef25ec78c7605726b1c0e16c706 [file] [log] [blame]
Pankaj Berded1259e82013-01-23 14:10:00 -08001package net.floodlightcontroller.core.internal;
2
Pankaj Berde2497e542013-02-19 18:51:24 -08003import net.floodlightcontroller.core.INetMapTopologyObjects.IPortObject;
Pankaj Berde1e2f7312013-02-15 08:25:31 -08004import net.floodlightcontroller.core.INetMapTopologyObjects.ISwitchObject;
Pankaj Berded1259e82013-01-23 14:10:00 -08005import net.floodlightcontroller.core.INetMapTopologyService.ITopoSwitchService;
Pankaj Berde15193092013-03-21 17:30:14 -07006import net.onrc.onos.util.GraphDBConnection;
Toshio Koide63622ea2013-06-13 13:34:28 -07007import net.onrc.onos.util.GraphDBOperation;
Pankaj Berded1259e82013-01-23 14:10:00 -08008
Pankaj Berde62016142013-04-09 15:35:50 -07009import org.slf4j.Logger;
10import org.slf4j.LoggerFactory;
11
Pankaj Berded1259e82013-01-23 14:10:00 -080012public class TopoSwitchServiceImpl implements ITopoSwitchService {
13
Toshio Koide63622ea2013-06-13 13:34:28 -070014 private GraphDBOperation op;
Pankaj Berde15193092013-03-21 17:30:14 -070015 protected static Logger log = LoggerFactory.getLogger(TopoSwitchServiceImpl.class);
16
Toshio Koide63622ea2013-06-13 13:34:28 -070017 public TopoSwitchServiceImpl(String conf) {
18 op = new GraphDBOperation(GraphDBConnection.getInstance(conf));
19 }
Pankaj Berde15193092013-03-21 17:30:14 -070020
Toshio Koide63622ea2013-06-13 13:34:28 -070021 public TopoSwitchServiceImpl() {
22 this("/tmp/cassandra.titan");
23 }
24
Pankaj Berde15193092013-03-21 17:30:14 -070025 public void finalize() {
26 close();
27 }
Pankaj Berded1259e82013-01-23 14:10:00 -080028
Pankaj Berde15193092013-03-21 17:30:14 -070029 @Override
30 public void close() {
Toshio Koide63622ea2013-06-13 13:34:28 -070031 op.close();
Pankaj Berde15193092013-03-21 17:30:14 -070032 }
Pankaj Berded1259e82013-01-23 14:10:00 -080033
34 @Override
Pankaj Berde2497e542013-02-19 18:51:24 -080035 public Iterable<ISwitchObject> getActiveSwitches() {
Pankaj Berded1259e82013-01-23 14:10:00 -080036 // TODO Auto-generated method stub
Toshio Koide63622ea2013-06-13 13:34:28 -070037 op.close(); //Commit to ensure we see latest data
38 return op.getActiveSwitches();
Pankaj Berded1259e82013-01-23 14:10:00 -080039 }
40
41 @Override
Pankaj Berde2497e542013-02-19 18:51:24 -080042 public Iterable<ISwitchObject> getAllSwitches() {
Pankaj Berde15193092013-03-21 17:30:14 -070043 // TODO Auto-generated method stub
Toshio Koide63622ea2013-06-13 13:34:28 -070044 op.close(); //Commit to ensure we see latest data
45 return op.getAllSwitches();
Pankaj Berded1259e82013-01-23 14:10:00 -080046 }
47
48 @Override
Pankaj Berde2497e542013-02-19 18:51:24 -080049 public Iterable<ISwitchObject> getInactiveSwitches() {
Pankaj Berded1259e82013-01-23 14:10:00 -080050 // TODO Auto-generated method stub
Toshio Koide63622ea2013-06-13 13:34:28 -070051 op.close(); //Commit to ensure we see latest data
52 return op.getInactiveSwitches();
Pankaj Berded1259e82013-01-23 14:10:00 -080053 }
54
55 @Override
Pankaj Berde2497e542013-02-19 18:51:24 -080056 public Iterable<IPortObject> getPortsOnSwitch(String dpid) {
57 // TODO Auto-generated method stub
58 return null;
59 }
60
61 @Override
62 public IPortObject getPortOnSwitch(String dpid, short port_num) {
Pankaj Berded1259e82013-01-23 14:10:00 -080063 // TODO Auto-generated method stub
64 return null;
Pankaj Berded18c7622013-02-04 10:28:35 -080065 }
Pankaj Berded1259e82013-01-23 14:10:00 -080066}