Adding openflow protocol set support in onos for device

Change-Id: Id796e54b536eda19d511a1978657abd6e149f117
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 b36032b..6056be2 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
@@ -29,6 +29,7 @@
 import org.onlab.packet.IpAddress;
 import org.onosproject.net.DeviceId;
 import org.onosproject.net.PortNumber;
+import org.onosproject.net.behaviour.ControlProtocolVersion;
 import org.onosproject.net.behaviour.ControllerInfo;
 import org.onosproject.net.behaviour.MirroringName;
 import org.onosproject.net.behaviour.MirroringStatistics;
@@ -485,6 +486,12 @@
             bridge.setDatapathType(datapathType);
         }
 
+        if (ovsdbBridge.controlProtocols().isPresent()) {
+            bridge.setProtocols(ovsdbBridge.controlProtocols().get().stream()
+                    .map(ControlProtocolVersion::toString)
+                    .collect(Collectors.toCollection(HashSet::new)));
+        }
+
         String bridgeUuid = getBridgeUuid(ovsdbBridge.name());
         if (bridgeUuid == null) {
             bridge.setName(ovsdbBridge.name());