From 400558756c5e1561c5328a608f806ba056b65653 Mon Sep 17 00:00:00 2001 From: Tony Tkacik Date: Wed, 13 Nov 2013 18:58:40 +0100 Subject: [PATCH] Added fix for InstanceIdentifier breakage in SAL-Compatibility Change-Id: Ib2ac2f87c34c22a08094b085aa20d44121755751 Signed-off-by: Tony Tkacik --- .../controller/sal/compatibility/NodeMapping.xtend | 5 +++-- .../sal/binding/impl/connect/dom/BindingMapping.xtend | 5 ++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/opendaylight/md-sal/compatibility/sal-compatibility/src/main/java/org/opendaylight/controller/sal/compatibility/NodeMapping.xtend b/opendaylight/md-sal/compatibility/sal-compatibility/src/main/java/org/opendaylight/controller/sal/compatibility/NodeMapping.xtend index b180d86c32..4c9a9e6658 100644 --- a/opendaylight/md-sal/compatibility/sal-compatibility/src/main/java/org/opendaylight/controller/sal/compatibility/NodeMapping.xtend +++ b/opendaylight/md-sal/compatibility/sal-compatibility/src/main/java/org/opendaylight/controller/sal/compatibility/NodeMapping.xtend @@ -50,14 +50,15 @@ public class NodeMapping { public static def toNodeRef(Node node) { checkArgument(MD_SAL_TYPE.equals(node.getType())); val nodeKey = node.ID.checkInstanceOf(NodeKey); - val nodePath = InstanceIdentifier.builder().node(Nodes).node(NODE_CLASS, nodeKey).toInstance(); + val nodePath = InstanceIdentifier.builder().node(Nodes).child(NODE_CLASS, nodeKey).toInstance(); return new NodeRef(nodePath); } public static def toNodeConnectorRef(NodeConnector nodeConnector) { val node = nodeConnector.node.toNodeRef(); + val nodePath = node.getValue() as InstanceIdentifier val connectorKey = nodeConnector.ID.checkInstanceOf(NodeConnectorKey); - val path = InstanceIdentifier.builder(node.getValue()).node(NODECONNECTOR_CLASS, connectorKey).toInstance(); + val path = InstanceIdentifier.builder(nodePath).child(NODECONNECTOR_CLASS, connectorKey).toInstance(); return new NodeConnectorRef(path); } diff --git a/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/sal/binding/impl/connect/dom/BindingMapping.xtend b/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/sal/binding/impl/connect/dom/BindingMapping.xtend index 9a6330ea0f..0a8a7df41c 100644 --- a/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/sal/binding/impl/connect/dom/BindingMapping.xtend +++ b/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/sal/binding/impl/connect/dom/BindingMapping.xtend @@ -324,7 +324,10 @@ class BindingMapping { val keyType = type.keyTypeProperties; val args = new ArrayList(); for (key : schema.keyDefinition) { - val keyProperty = keyType.get(BindingGeneratorUtil.parseToClassName(key.localName)); + var keyProperty = keyType.get(BindingGeneratorUtil.parseToClassName(key.localName)); + if (keyProperty == null) { + keyProperty = keyType.get(BindingGeneratorUtil.parseToValidParamName(key.localName)); + } val domKeyValue = node.getFirstSimpleByName(key); val keyValue = domKeyValue.deserializeSimpleValue(loader, keyProperty.returnType, schema.getDataChildByName(key)); -- 2.36.6