Add the bridge datapath_type to the operational MDSAL 38/17138/1
authorEric Multanen <eric.w.multanen@intel.com>
Wed, 25 Mar 2015 16:24:52 +0000 (09:24 -0700)
committerEric Multanen <eric.w.multanen@intel.com>
Wed, 25 Mar 2015 16:26:27 +0000 (09:26 -0700)
Update the operational MDSAL with the bridge datapath_type.

Change-Id: I68664746daf771535c5bc157badb4e216e62aba4
Signed-off-by: Eric Multanen <eric.w.multanen@intel.com>
southbound/southbound-impl/src/main/java/org/opendaylight/ovsdb/southbound/SouthboundMapper.java
southbound/southbound-impl/src/main/java/org/opendaylight/ovsdb/southbound/transactions/md/OvsdbBridgeUpdateCommand.java

index 1d3b2f8c9c665a1a803c35143f4f80e75efdaee7..4d07ad5dfaba50649df0e7fc9f6ccf29861f456f 100644 (file)
@@ -31,6 +31,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.PortNumber;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Uri;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.DatapathId;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.DatapathTypeBase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.InterfaceTypeBase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.DatapathTypeSystem;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeAugmentation;
@@ -227,6 +228,16 @@ public class SouthboundMapper {
         return datapathtype;
     }
 
+    public static  Class<? extends DatapathTypeBase> createDatapathType(String type) {
+        Preconditions.checkNotNull(type);
+        if (type.isEmpty()) {
+               return DatapathTypeSystem.class;
+        } else {
+            ImmutableBiMap<String, Class<? extends DatapathTypeBase>> mapper = SouthboundConstants.DATAPATH_TYPE_MAP.inverse();
+            return mapper.get(type);
+        }
+    }
+
     public static DatapathId createDatapathId(String dpid) {
         Preconditions.checkNotNull(dpid);
         DatapathId datapath;
index 60697e019af0e4362effefd55b30754fc2e83f0f..03595f3f3c9b73ca6a2f4939b0d75b5ddd6f0041 100644 (file)
@@ -70,6 +70,7 @@ public class OvsdbBridgeUpdateCommand extends AbstractTransactionCommand {
                 if(dpid != null) {
                     ovsdbManagedNodeBuilder.setDatapathId(dpid);
                 }
+                ovsdbManagedNodeBuilder.setDatapathType(SouthboundMapper.createDatapathType(bridge.getDatapathTypeColumn().getData()));
                 if(SouthboundMapper.createMdsalProtocols(bridge) != null
                         && SouthboundMapper.createMdsalProtocols(bridge).size() > 0) {
                     ovsdbManagedNodeBuilder.setProtocolEntry(SouthboundMapper.createMdsalProtocols(bridge));