[MDSAL-345] Augmentation targeting root choice fails Created: 28/May/18  Updated: 28/May/18  Resolved: 28/May/18

Status: Resolved
Project: mdsal
Component/s: Binding codegen, Binding runtime
Affects Version/s: Oxygen SR1
Fix Version/s: Fluorine, Oxygen SR2

Type: Bug Priority: High
Reporter: Robert Varga Assignee: Robert Varga
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

When an augment statement target a choice which is a direct child of a module, producing:

java.util.NoSuchElementException
    at com.google.common.collect.AbstractIndexedListIterator.next (AbstractIndexedListIterator.java:75)
    at org.opendaylight.yangtools.yang.model.util.SchemaContextUtil.findNodeInSchemaContext (SchemaContextUtil.java:232)
    at org.opendaylight.yangtools.yang.model.util.SchemaContextUtil.findDataSchemaNode (SchemaContextUtil.java:96)
    at org.opendaylight.mdsal.binding.generator.impl.AbstractTypeGenerator.generateTypesFromAugmentedChoiceCases (AbstractTypeGenerator.java:1174)
    at org.opendaylight.mdsal.binding.generator.impl.AbstractTypeGenerator.augmentationToGenTypes (AbstractTypeGenerator.java:722)
    at org.opendaylight.mdsal.binding.generator.impl.AbstractTypeGenerator.allAugmentsToGenTypes (AbstractTypeGenerator.java:343)
    at java.util.ArrayList.forEach (ArrayList.java:1257)
    at org.opendaylight.mdsal.binding.generator.impl.AbstractTypeGenerator.<init> (AbstractTypeGenerator.java:178)
    at org.opendaylight.mdsal.binding.generator.impl.CodegenTypeGenerator.<init> (CodegenTypeGenerator.java:30)
    at org.opendaylight.mdsal.binding.generator.impl.BindingGeneratorImpl.generateTypes (BindingGeneratorImpl.java:55)
    at org.opendaylight.mdsal.binding.maven.api.gen.plugin.CodeGeneratorImpl.generateSources (CodeGeneratorImpl.java:61)
    at org.opendaylight.yangtools.yang2sources.plugin.YangToSourcesProcessor.generateSourcesWithOneGenerator (YangToSourcesProcessor.java:379)
    at org.opendaylight.yangtools.yang2sources.plugin.YangToSourcesProcessor.generateSources (YangToSourcesProcessor.java:329)
    at org.opendaylight.yangtools.yang2sources.plugin.YangToSourcesProcessor.conditionalExecute (YangToSourcesProcessor.java:156)
    at org.opendaylight.yangtools.yang2sources.plugin.YangToSourcesMojo.execute (YangToSourcesMojo.java:123)

Generated at Wed Feb 07 20:09:34 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.