Fix DefaultOvsdbClient Class's getBridges's improper return value
When tableStore or rowStore is null, getBridges() should not return (null),
that will cause NullPointerException in its two usages:
(getBRidges only has these two usages now, but it is very foundational.)
1. OvsdbBridgeConfig.java, line 113-115:
Set<OvsdbBridge> bridges = client.getBridges();
return bridges.stream()......
2. OvsdbControllerConfig.java, line 92:
.filter(cs ->
cs.getBridges().stream()
.anyMatch(b -> dpidMatches(b, ofDeviceId)))
......
Change-Id: Ice14a8991f5022a5041cf48f5c8431712f946228
diff --git a/protocols/ovsdb/api/src/main/java/org/onosproject/ovsdb/controller/driver/DefaultOvsdbClient.java b/protocols/ovsdb/api/src/main/java/org/onosproject/ovsdb/controller/driver/DefaultOvsdbClient.java
index f5b0811..26904d5 100644
--- a/protocols/ovsdb/api/src/main/java/org/onosproject/ovsdb/controller/driver/DefaultOvsdbClient.java
+++ b/protocols/ovsdb/api/src/main/java/org/onosproject/ovsdb/controller/driver/DefaultOvsdbClient.java
@@ -923,11 +923,11 @@
Set<OvsdbBridge> ovsdbBridges = new HashSet<>();
OvsdbTableStore tableStore = getTableStore(DATABASENAME);
if (tableStore == null) {
- return null;
+ return ovsdbBridges;
}
OvsdbRowStore rowStore = tableStore.getRows(BRIDGE);
if (rowStore == null) {
- return null;
+ return ovsdbBridges;
}
ConcurrentMap<String, Row> rows = rowStore.getRowStore();
for (String uuid : rows.keySet()) {