+/*
+ * Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
package org.opendaylight.controller.sal.dom.broker.util
import org.opendaylight.yangtools.yang.data.api.CompositeNode
throw new IllegalArgumentException("Supplied node is not data node container.");
}
- private def static checkConfigurational(DataSchemaNode node, boolean config) {
- if (config) {
- checkArgument(node.configuration, "Supplied composite node is not configurational.");
- }
- }
-
private static dispatch def Iterable<? extends Node<?>> mergeMultiple(LeafSchemaNode node, List<Node<?>> original,
List<Node<?>> modified, boolean configurational) {
checkArgument(original.size === 1);
if(node.keyDefinition === null || node.keyDefinition.empty) {
return modified;
- }
+ }
val originalMap = (original as List).toIndexMap(node.keyDefinition);
val modifiedMap = (modified as List).toIndexMap(node.keyDefinition);
if(originalEntry != null) {
originalMap.remove(entry.key);
mergedNodes.add(merge(node,originalEntry,entry.value,configurational));
-
+ } else {
+ mergedNodes.add(entry.value);
}
}
mergedNodes.addAll(originalMap.values);