Details
-
Bug
-
Status: Resolved
-
Resolution: Done
-
None
-
None
-
None
-
None
-
Operating System: All
Platform: All
-
4414
Description
If I use a shorthand version of a case statement (in choice statement server-or-user, case server), as described in https://tools.ietf.org/html/rfc6020#section-7.9.2, and try to write generated class to normalized node I get this exception:
org.opendaylight.yangtools.binding.data.codec.impl.IncorrectNestingException: Supplied class interface org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.notifications.rev120206.changed.by.parms.changed.by.server.or.user.Server is not valid case
at org.opendaylight.yangtools.binding.data.codec.impl.IncorrectNestingException.create(IncorrectNestingException.java:28)[94:org.opendaylight.mdsal.binding-dom-codec:0.8.0.SNAPSHOT]
at org.opendaylight.yangtools.binding.data.codec.impl.DataContainerCodecContext.childNonNull(DataContainerCodecContext.java:180)[94:org.opendaylight.mdsal.binding-dom-codec:0.8.0.SNAPSHOT]
at org.opendaylight.yangtools.binding.data.codec.impl.ChoiceNodeCodecContext.streamChild(ChoiceNodeCodecContext.java:111)[94:org.opendaylight.mdsal.binding-dom-codec:0.8.0.SNAPSHOT]
at org.opendaylight.yangtools.binding.data.codec.impl.BindingToNormalizedStreamWriter.enter(BindingToNormalizedStreamWriter.java:67)[94:org.opendaylight.mdsal.binding-dom-codec:0.8.0.SNAPSHOT]
at org.opendaylight.yangtools.binding.data.codec.impl.BindingToNormalizedStreamWriter.startCase(BindingToNormalizedStreamWriter.java:134)[94:org.opendaylight.mdsal.binding-dom-codec:0.8.0.SNAPSHOT]
at org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.notifications.rev120206.changed.by.parms.changed.by.server.or.user.Server$StreamWriter.serialize(DataObjectSerializerPrototype.java)[118:org.opendaylight.netconf.ietf-netconf-notifications:1.0.0.SNAPSHOT]
at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry$DataObjectSerializerProxy.serialize(BindingNormalizedNodeCodecRegistry.java:295)[94:org.opendaylight.mdsal.binding-dom-codec:0.8.0.SNAPSHOT]
at org.opendaylight.yangtools.binding.data.codec.util.ChoiceDispatchSerializer.serialize(ChoiceDispatchSerializer.java:47)[94:org.opendaylight.mdsal.binding-dom-codec:0.8.0.SNAPSHOT]
at org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.notifications.rev120206.changed.by.parms.ChangedBy$StreamWriter.serialize(DataObjectSerializerPrototype.java)[118:org.opendaylight.netconf.ietf-netconf-notifications:1.0.0.SNAPSHOT]
at org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.netconf.notifications.rev120206.NetconfCapabilityChange$StreamWriter.serialize(DataObjectSerializerPrototype.java)[118:org.opendaylight.netconf.ietf-netconf-notifications:1.0.0.SNAPSHOT]
at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry$DataObjectSerializerProxy.serialize(BindingNormalizedNodeCodecRegistry.java:295)[94:org.opendaylight.mdsal.binding-dom-codec:0.8.0.SNAPSHOT]
at org.opendaylight.yangtools.binding.data.codec.impl.BindingNormalizedNodeCodecRegistry.toNormalizedNodeNotification(BindingNormalizedNodeCodecRegistry.java:125)[94:org.opendaylight.mdsal.binding-dom-codec:0.8.0.SNAPSHOT]
at org.opendaylight.netconf.notifications.impl.ops.NotificationsTransformUtil.transform(NotificationsTransformUtil.java:99)[132:org.opendaylight.netconf.notifications-impl:1.0.0.SNAPSHOT]
at org.opendaylight.netconf.notifications.impl.ops.NotificationsTransformUtil.transform(NotificationsTransformUtil.java:91)[132:org.opendaylight.netconf.notifications-impl:1.0.0.SNAPSHOT]
at org.opendaylight.netconf.notifications.impl.NetconfNotificationManager$BaseNotificationPublisherReg.serializeNotification(NetconfNotificationManager.java:259)[132:org.opendaylight.netconf.notifications-impl:1.0.0.SNAPSHOT]
at org.opendaylight.netconf.notifications.impl.NetconfNotificationManager$BaseNotificationPublisherReg.onCapabilityChanged(NetconfNotificationManager.java:264)[132:org.opendaylight.netconf.notifications-impl:1.0.0.SNAPSHOT]
However, if I use the normal version of case statement serialization to normalized node is successful.