import org.opendaylight.yangtools.yang.common.Uint32;
import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates;
+import org.opendaylight.yangtools.yang.data.api.schema.ChoiceNode;
import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
-import org.opendaylight.yangtools.yang.data.api.schema.DataContainerNode;
import org.opendaylight.yangtools.yang.data.spi.node.ImmutableNodes;
import org.osgi.service.component.annotations.Activate;
import org.osgi.service.component.annotations.Component;
}
final var body = input.input();
- final var target = (DataContainerNode) body.childByArg(SUBSCRIPTION_TARGET);
+ final var target = (ChoiceNode) body.childByArg(SUBSCRIPTION_TARGET);
if (target == null) {
// means there is no stream information present
request.completeWith(new ServerException(ErrorType.APPLICATION, ErrorTag.MISSING_ELEMENT,
nodeTargetBuilder.withChild(ImmutableNodes.leafNode(SubscriptionUtil.QNAME_STREAM, streamName));
// check stream filter
- final var streamFilter = (DataContainerNode) target.childByArg(SUBSCRIPTION_STREAM_FILTER);
+ final var streamFilter = (ChoiceNode) target.childByArg(SUBSCRIPTION_STREAM_FILTER);
if (streamFilter != null) {
final var streamFilterName = leaf(streamFilter, SUBSCRIPTION_STREAM_FILTER_NAME, String.class);
- final var nodeFilterBuilder = ImmutableNodes.newChoiceBuilder().withNodeIdentifier(NodeIdentifier
- .create(StreamFilter.QNAME));
+ final var nodeFilterBuilder = ImmutableNodes.newChoiceBuilder()
+ .withNodeIdentifier(NodeIdentifier.create(StreamFilter.QNAME));
+
if (streamFilterName != null) {
try {
if (!mdsalService.exist(SubscriptionUtil.FILTERS.node(NodeIdentifierWithPredicates.of(
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.subscribed.notifications.rev190909.DeleteSubscriptionOutput;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.subscribed.notifications.rev190909.subscriptions.Subscription;
import org.opendaylight.yangtools.yang.common.Uint32;
-import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
+import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier;
+import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates;
import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
import org.opendaylight.yangtools.yang.data.spi.node.ImmutableNodes;
class DeleteSubscriptionRpcTest {
private static final URI RESTCONF_URI = URI.create("/restconf/");
private static final Uint32 ID = Uint32.valueOf(2147483648L);
- private static final YangInstanceIdentifier.NodeIdentifierWithPredicates IDENTIFIER =
- YangInstanceIdentifier.NodeIdentifierWithPredicates.of(Subscription.QNAME, SubscriptionUtil.QNAME_ID, ID);
+ private static final NodeIdentifierWithPredicates IDENTIFIER =
+ NodeIdentifierWithPredicates.of(Subscription.QNAME, SubscriptionUtil.QNAME_ID, ID);
private static final ContainerNode INPUT = ImmutableNodes.newContainerBuilder()
- .withNodeIdentifier(YangInstanceIdentifier.NodeIdentifier.create(DeleteSubscriptionInput.QNAME))
+ .withNodeIdentifier(NodeIdentifier.create(DeleteSubscriptionInput.QNAME))
.withChild(ImmutableNodes.leafNode(SubscriptionUtil.QNAME_ID, ID))
.build();
@Test
void deleteSubscriptionTest() {
final var responseBuilder = ImmutableNodes.newContainerBuilder()
- .withNodeIdentifier(YangInstanceIdentifier.NodeIdentifier.create(DeleteSubscriptionOutput.QNAME))
+ .withNodeIdentifier(NodeIdentifier.create(DeleteSubscriptionOutput.QNAME))
.build();
doReturn(writeTx).when(dataBroker).newWriteOnlyTransaction();
import org.opendaylight.restconf.server.api.testlib.CompletingServerRequest;
import org.opendaylight.restconf.server.spi.OperationInput;
import org.opendaylight.restconf.server.spi.RestconfStream;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.subscribed.notifications.rev190909.EncodeJson$I;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.subscribed.notifications.rev190909.EstablishSubscriptionInput;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.subscribed.notifications.rev190909.EstablishSubscriptionOutput;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.subscribed.notifications.rev190909.filters.StreamFilter;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.subscribed.notifications.rev190909.subscription.policy.modifiable.Target;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.subscribed.notifications.rev190909.subscriptions.Subscription;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.subscribed.notifications.rev190909.subscriptions.subscription.receivers.Receiver;
import org.opendaylight.yangtools.util.concurrent.FluentFutures;
final var expectedNode = ImmutableNodes.newMapEntryBuilder()
.withNodeIdentifier(NodeIdentifierWithPredicates.of(Subscription.QNAME, SubscriptionUtil.QNAME_ID, ID))
.withChild(ImmutableNodes.leafNode(SubscriptionUtil.QNAME_ID, ID))
+ .withChild(ImmutableNodes.leafNode(SubscriptionUtil.QNAME_ENCODING, EncodeJson$I.QNAME))
.withChild(nodeReceivers)
.withChild(nodeTarget)
.build();
final var responseBuilder = ImmutableNodes.newContainerBuilder()
.withNodeIdentifier(NodeIdentifier.create(EstablishSubscriptionOutput.QNAME))
- .withChild(ImmutableNodes.leafNode(NodeIdentifier.create(QName.create(EstablishSubscriptionOutput.QNAME,
- "id").intern()), ID))
+ .withChild(ImmutableNodes.leafNode(QName.create(EstablishSubscriptionOutput.QNAME, "id"), ID))
.build();
doReturn(writeTx).when(dataBroker).newWriteOnlyTransaction();
void establishSubscriptionWrongFilterTest() {
final var input = ImmutableNodes.newContainerBuilder()
.withNodeIdentifier(NodeIdentifier.create(EstablishSubscriptionInput.QNAME))
- .withChild(ImmutableNodes.newContainerBuilder().withNodeIdentifier(NodeIdentifier
- .create(SubscriptionUtil.QNAME_TARGET))
+ .withChild(ImmutableNodes.newChoiceBuilder()
+ .withNodeIdentifier(NodeIdentifier.create(Target.QNAME))
.withChild(ImmutableNodes.leafNode(SubscriptionUtil.QNAME_STREAM, "NETCONF"))
- .withChild(ImmutableNodes.newContainerBuilder().withNodeIdentifier(NodeIdentifier
- .create(QName.create(Subscription.QNAME, "stream-filter")))
+ .withChild(ImmutableNodes.newChoiceBuilder()
+ .withNodeIdentifier(NodeIdentifier.create(StreamFilter.QNAME))
.withChild(ImmutableNodes.leafNode(SubscriptionUtil.QNAME_STREAM_FILTER, "filter"))
.build())
.build())
private static ContainerNode getInput() {
return ImmutableNodes.newContainerBuilder()
.withNodeIdentifier(NodeIdentifier.create(EstablishSubscriptionInput.QNAME))
- .withChild(ImmutableNodes.newContainerBuilder().withNodeIdentifier(NodeIdentifier
- .create(SubscriptionUtil.QNAME_TARGET))
+ .withChild(ImmutableNodes.leafNode(SubscriptionUtil.QNAME_ENCODING, EncodeJson$I.QNAME))
+ .withChild(ImmutableNodes.newChoiceBuilder()
+ .withNodeIdentifier(NodeIdentifier.create(Target.QNAME))
.withChild(ImmutableNodes.leafNode(SubscriptionUtil.QNAME_STREAM, "NETCONF"))
.build())
.build();