Get rid of all e.printStackTrace() statements and cleanup some exception handling.
[ovsdb.git] / ovsdb / src / main / java / org / opendaylight / ovsdb / lib / database / OVSInstance.java
1 package org.opendaylight.ovsdb.lib.database;\r
2 \r
3 \r
4 import org.opendaylight.ovsdb.plugin.Connection;\r
5 import org.opendaylight.ovsdb.plugin.OvsdbMessage;\r
6 \r
7 import java.util.ArrayList;\r
8 import java.util.HashMap;\r
9 import java.util.List;\r
10 import java.util.Map;\r
11 \r
12 public class OVSInstance {\r
13     private String uuid;\r
14 \r
15     public OVSInstance(){\r
16         this.uuid = null;\r
17     }\r
18 \r
19     public OVSInstance(String uuid){\r
20         this.uuid = uuid;\r
21     }\r
22 \r
23     @SuppressWarnings("unchecked")\r
24     public static OVSInstance monitorOVS(Connection connection){\r
25         List<String> columns = new ArrayList<String>();\r
26         columns.add("_uuid");\r
27         columns.add("bridges");\r
28 \r
29         Map<String, List<String>> row = new HashMap<String, List<String>>();\r
30         row.put("columns", columns);\r
31 \r
32         Map<String, Map> tables = new HashMap<String, Map>();\r
33         tables.put("Open_vSwitch", row);\r
34 \r
35         Object[] params = {"Open_vSwitch", null, tables};\r
36 \r
37         OvsdbMessage msg = new OvsdbMessage("monitor", params);\r
38         Map<String, Object> monitorResponse = new HashMap<String, Object>();\r
39 \r
40         Map<String, Object> vSwitchTable = (Map) monitorResponse.get("Open_vSwitch");\r
41         if(vSwitchTable != null){\r
42             String uuid = (String) vSwitchTable.keySet().toArray()[0];\r
43             return new OVSInstance(uuid);\r
44         }\r
45         return null;\r
46     }\r
47 \r
48     public String getUuid(){\r
49         return this.uuid;\r
50     }\r
51 \r
52 }\r