import org.opendaylight.netconf.sal.connect.util.MessageCounter;
import org.opendaylight.yangtools.yang.common.QName;
import org.opendaylight.yangtools.yang.common.YangConstants;
-import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
import org.opendaylight.yangtools.yang.data.api.schema.AnyXmlNode;
import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
.build();
normalizedNode = Builders.containerBuilder()
- .withNodeIdentifier(new YangInstanceIdentifier
- .NodeIdentifier(NetconfMessageTransformUtil.NETCONF_RPC_REPLY_QNAME))
+ .withNodeIdentifier(NetconfMessageTransformUtil.NETCONF_RPC_REPLY_NODEID)
.withChild(xmlDataNode).build();
} else {
//other base rpcs don't have any output, we can simply construct the payload here
*/
package org.opendaylight.netconf.sal.connect.netconf.schema.mapping;
+import static org.opendaylight.netconf.sal.connect.netconf.util.NetconfMessageTransformUtil.CREATE_SUBSCRIPTION_RPC_QNAME;
import static org.opendaylight.netconf.sal.connect.netconf.util.NetconfMessageTransformUtil.IETF_NETCONF_NOTIFICATIONS;
+import static org.opendaylight.netconf.sal.connect.netconf.util.NetconfMessageTransformUtil.NETCONF_RPC_REPLY_NODEID;
import static org.opendaylight.netconf.sal.connect.netconf.util.NetconfMessageTransformUtil.NETCONF_URI;
import static org.opendaylight.netconf.sal.connect.netconf.util.NetconfMessageTransformUtil.toPath;
import org.opendaylight.yangtools.yang.common.Revision;
import org.opendaylight.yangtools.yang.common.RpcError;
import org.opendaylight.yangtools.yang.common.YangConstants;
-import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter;
private static boolean isBaseOrNotificationRpc(final QName rpc) {
return rpc.getNamespace().equals(NETCONF_URI)
|| rpc.getNamespace().equals(IETF_NETCONF_NOTIFICATIONS.getNamespace())
- || rpc.getNamespace().equals(NetconfMessageTransformUtil.CREATE_SUBSCRIPTION_RPC_QNAME.getNamespace());
+ || rpc.getNamespace().equals(CREATE_SUBSCRIPTION_RPC_QNAME.getNamespace());
}
@Override
}
normalizedNode = Builders.containerBuilder()
- .withNodeIdentifier(new YangInstanceIdentifier
- .NodeIdentifier(NetconfMessageTransformUtil.NETCONF_RPC_REPLY_QNAME))
+ .withNodeIdentifier(NETCONF_RPC_REPLY_NODEID)
.withChild(dataNode).build();
} else {
import org.opendaylight.netconf.sal.connect.netconf.util.NetconfMessageTransformUtil;
import org.opendaylight.netconf.sal.connect.util.MessageCounter;
import org.opendaylight.yangtools.yang.common.QName;
-import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
+import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
import org.opendaylight.yangtools.yang.data.api.schema.AnyXmlNode;
import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
* Transforms anyxml rpcs for schemaless netconf devices.
*/
public class SchemalessMessageTransformer implements MessageTransformer<NetconfMessage> {
-
- private static final YangInstanceIdentifier.NodeIdentifier REPLY_ID =
- new YangInstanceIdentifier.NodeIdentifier(NetconfMessageTransformUtil.NETCONF_RPC_REPLY_QNAME);
// TODO maybe we should move this somewhere else as this
// might be used in applications using schemaless mountpoints
- public static final YangInstanceIdentifier.NodeIdentifier SCHEMALESS_NOTIFICATION_PAYLOAD =
+ public static final NodeIdentifier SCHEMALESS_NOTIFICATION_PAYLOAD =
// FIXME: assign proper namespace
- new YangInstanceIdentifier.NodeIdentifier(QName.create("", "schemaless-notification-payload"));
+ new NodeIdentifier(QName.create("", "schemaless-notification-payload"));
private final MessageCounter counter;
}
final AnyXmlNode notificationPayload = Builders.anyXmlBuilder()
- .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(notificationNoRev))
+ .withNodeIdentifier(new NodeIdentifier(notificationNoRev))
.withValue(new DOMSource(stripped.getValue().getDomElement()))
.build();
result = null;
} else {
result = Builders.anyXmlBuilder()
- .withNodeIdentifier(REPLY_ID)
+ .withNodeIdentifier(NetconfMessageTransformUtil.NETCONF_RPC_REPLY_NODEID)
.withValue(new DOMSource(rpcReply.getDocument()))
.build();
}
public static final NodeIdentifier NETCONF_DATA_NODEID = NodeIdentifier.create(NETCONF_DATA_QNAME);
public static final QName NETCONF_RPC_REPLY_QNAME = QName.create(NETCONF_QNAME, "rpc-reply").intern();
+ public static final NodeIdentifier NETCONF_RPC_REPLY_NODEID = NodeIdentifier.create(NETCONF_RPC_REPLY_QNAME);
+
public static final QName NETCONF_OK_QNAME = QName.create(NETCONF_QNAME, "ok").intern();
public static final QName NETCONF_ERROR_OPTION_QNAME = QName.create(NETCONF_QNAME, "error-option").intern();
public static final NodeIdentifier NETCONF_ERROR_OPTION_NODEID = NodeIdentifier.create(NETCONF_ERROR_OPTION_QNAME);
public static final ContainerNode CREATE_SUBSCRIPTION_RPC_CONTENT = Builders.containerBuilder()
.withNodeIdentifier(NodeIdentifier.create(CREATE_SUBSCRIPTION_RPC_QNAME)).build();
- private static final NodeIdentifier NETCONF_FILTER_NODEID = NodeIdentifier.create(NETCONF_FILTER_QNAME);
+ public static final NodeIdentifier NETCONF_FILTER_NODEID = NodeIdentifier.create(NETCONF_FILTER_QNAME);
public static final DataContainerChild<?, ?> EMPTY_FILTER;
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 static org.opendaylight.netconf.sal.connect.netconf.util.NetconfMessageTransformUtil.NETCONF_FILTER_NODEID;
+import static org.opendaylight.netconf.sal.connect.netconf.util.NetconfMessageTransformUtil.NETCONF_FILTER_QNAME;
+import static org.opendaylight.netconf.sal.connect.netconf.util.NetconfMessageTransformUtil.NETCONF_OPERATION_QNAME;
import com.google.common.base.Preconditions;
import java.util.Collections;
@Override
public DataContainerChild<?, ?> toFilterStructure(final YangInstanceIdentifier path) {
final Document document = XmlUtil.newDocument();
- final QName filterQname = NetconfMessageTransformUtil.NETCONF_FILTER_QNAME;
- final Element filter =
- document.createElementNS(filterQname.getNamespace().toString(), filterQname.getLocalName());
- final Attr a = document.createAttributeNS(filterQname.getNamespace().toString(), "type");
+ final String filterNs = NETCONF_FILTER_QNAME.getNamespace().toString();
+ final Element filter = document.createElementNS(filterNs, NETCONF_FILTER_QNAME.getLocalName());
+ final Attr a = document.createAttributeNS(filterNs, "type");
a.setTextContent("subtree");
filter.setAttributeNode(a);
document.appendChild(filter);
instanceIdToXmlStructure(path.getPathArguments(), filter);
return Builders.anyXmlBuilder()
- .withNodeIdentifier(new YangInstanceIdentifier.NodeIdentifier(filterQname))
+ .withNodeIdentifier(NETCONF_FILTER_NODEID)
.withValue(new DOMSource(document.getDocumentElement()))
.build();
}
private static void setOperationAttribute(final Optional<ModifyAction> operation, final Document document,
final Element dataNode) {
- final QName operationQname = NetconfMessageTransformUtil.NETCONF_OPERATION_QNAME;
- final Attr operationAttribute =
- document.createAttributeNS(operationQname.getNamespace().toString(), operationQname.getLocalName());
+ final Attr operationAttribute = document.createAttributeNS(NETCONF_OPERATION_QNAME.getNamespace().toString(),
+ NETCONF_OPERATION_QNAME.getLocalName());
operationAttribute.setTextContent(toOperationString(operation.get()));
dataNode.setAttributeNode(operationAttribute);
}