*/
package org.opendaylight.netconf.sal.connect.netconf.util;
+import static org.opendaylight.netconf.sal.connect.netconf.util.NetconfMessageTransformUtil.NETCONF_CONFIG_NODEID;
import static org.opendaylight.netconf.sal.connect.netconf.util.NetconfMessageTransformUtil.NETCONF_CONFIG_QNAME;
+import static org.opendaylight.netconf.sal.connect.netconf.util.NetconfMessageTransformUtil.NETCONF_DATA_NODEID;
+import static org.opendaylight.netconf.sal.connect.netconf.util.NetconfMessageTransformUtil.NETCONF_DATA_QNAME;
-import com.google.common.base.Optional;
import com.google.common.base.Preconditions;
import java.util.Collections;
import java.util.List;
+import java.util.Locale;
import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Optional;
import javax.xml.transform.dom.DOMSource;
-import org.opendaylight.controller.config.util.xml.DocumentedException;
-import org.opendaylight.controller.config.util.xml.XmlElement;
-import org.opendaylight.controller.config.util.xml.XmlUtil;
+import org.opendaylight.netconf.api.DocumentedException;
+import org.opendaylight.netconf.api.xml.XmlElement;
+import org.opendaylight.netconf.api.xml.XmlUtil;
import org.opendaylight.yangtools.yang.common.QName;
import org.opendaylight.yangtools.yang.data.api.ModifyAction;
import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
Preconditions.checkArgument(data instanceof AnyXmlNode);
final List<XmlElement> xmlElements = selectMatchingNodes(getSourceElement(((AnyXmlNode)data).getValue()), path);
final Document result = XmlUtil.newDocument();
- final QName dataQName = NetconfMessageTransformUtil.NETCONF_DATA_QNAME;
final Element dataElement =
- result.createElementNS(dataQName.getNamespace().toString(), dataQName.getLocalName());
+ result.createElementNS(NETCONF_DATA_QNAME.getNamespace().toString(), NETCONF_DATA_QNAME.getLocalName());
result.appendChild(dataElement);
for (XmlElement xmlElement : xmlElements) {
dataElement.appendChild(result.importNode(xmlElement.getDomElement(), true));
}
final AnyXmlNode resultAnyxml = Builders.anyXmlBuilder()
- .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(dataQName))
+ .withNodeIdentifier(NETCONF_DATA_NODEID)
.withValue(new DOMSource(result))
.build();
return Optional.of(resultAnyxml);
}
//append data
parentXmlStructure.appendChild(document.importNode(dataNode, true));
- return Builders.anyXmlBuilder()
- .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(NETCONF_CONFIG_QNAME))
+ return Builders.anyXmlBuilder().withNodeIdentifier(NETCONF_CONFIG_NODEID)
.withValue(new DOMSource(document.getDocumentElement()))
.build();
}
final YangInstanceIdentifier.NodeIdentifierWithPredicates keyedId =
(YangInstanceIdentifier.NodeIdentifierWithPredicates) lastPathArgument;
final Map<QName, Object> keyValues = keyedId.getKeyValues();
- for (QName qualifiedName : keyValues.keySet()) {
+ for (Entry<QName, Object> entry : keyValues.entrySet()) {
+ QName qualifiedName = entry.getKey();
final List<XmlElement> key =
dataElement.getChildElementsWithinNamespace(qualifiedName.getLocalName(),
qualifiedName.getNamespace().toString());
try {
textContent = key.get(0).getTextContent();
} catch (DocumentedException e) {
- throw new IllegalStateException("Key value not present in key element");
+ throw new IllegalStateException("Key value not present in key element", e);
}
- if (!keyValues.get(qualifiedName).equals(textContent)) {
+ if (!entry.getValue().equals(textContent)) {
throw new IllegalStateException("Key value in path not equal to key value in xml");
}
}
}
private static String toOperationString(final ModifyAction operation) {
- return operation.name().toLowerCase();
+ return operation.name().toLowerCase(Locale.ROOT);
}
private static Element getSourceElement(final DOMSource source) {