blob: b7825f983e694e3f418d13f1e5c966ecdaefc0c6 [file] [log] [blame]
HIGUCHI Yuta20514902013-06-12 11:24:16 -07001package net.onrc.onos.ofcontroller.core;
Pankaj Berdee73452c2013-01-03 14:57:07 -08002
Pankaj Berdebbd38612013-06-22 05:59:12 -07003import net.floodlightcontroller.core.IOFSwitch;
4
Pankaj Berdee73452c2013-01-03 14:57:07 -08005import org.openflow.protocol.OFPhysicalPort;
6
7public interface ISwitchStorage extends INetMapStorage {
8
Pankaj Berde28cc61c2013-01-08 18:19:33 -08009 public enum SwitchState {
Pankaj Berde8557a462013-01-07 08:59:31 -080010 INACTIVE,
11 ACTIVE
12 }
13
Pankaj Berdee73452c2013-01-03 14:57:07 -080014 /*
Naoki Shiotab2d17e82013-10-18 18:08:16 -070015 * Initialize
16 */
17 public void init(String conf);
18 /*
Pankaj Berdee73452c2013-01-03 14:57:07 -080019 * Update the switch details
20 */
Naoki Shiota987a5722013-10-23 11:59:36 -070021 public boolean updateSwitch(String dpid, SwitchState state, DM_OPERATION op);
Naoki Shiotab2d17e82013-10-18 18:08:16 -070022 /*
Pankaj Berdebbd38612013-06-22 05:59:12 -070023 * Add a switch and all its associated ports
24 */
Naoki Shiota987a5722013-10-23 11:59:36 -070025 public boolean addSwitch(IOFSwitch sw);
Pankaj Berdebbd38612013-06-22 05:59:12 -070026 /*
27 * Add a switch
Pankaj Berdee73452c2013-01-03 14:57:07 -080028 */
Naoki Shiota987a5722013-10-23 11:59:36 -070029 public boolean addSwitch(String dpid);
Pankaj Berdee73452c2013-01-03 14:57:07 -080030 /*
31 * Delete switch and associated ports
32 */
Naoki Shiota987a5722013-10-23 11:59:36 -070033 public boolean deleteSwitch(String dpid);
34 /*
35 * Update the port details
36 */
37 public boolean updatePort(String dpid, short port, int state, String desc);
38 /*
39 * Associate a port on switch
40 */
41 public boolean addPort(String dpid, OFPhysicalPort port);
42 /*
43 * Delete a port on a switch by num
44 */
45 public boolean deletePort(String dpid, short port);
Pankaj Berdee73452c2013-01-03 14:57:07 -080046}