Uploaded image for project: 'yangtools'
  1. yangtools
  2. YANGTOOLS-1313

Error when module is imported with different prefixes

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: High High
    • 8.0.0, 7.0.9, 6.0.9
    • 6.0.6
    • None

       

      There are 2 modules, which import 3rd module. Each of them uses different prefix.

      import openconfig-mpls-types { prefix "oc-mplst"; }
      import openconfig-mpls-types { prefix "oc-mpls-types"; }
      

      Code generation fails with following error.

      Caused by: java.lang.IllegalArgumentException: Multiple entries with same key: QNameModule{ns=http://openconfig.net/yang/mpls-types, rev=2018-11-21}=oc-mplst and QNameModule{ns=http://openconfig.net/yang/mpls-types, rev=2018-11-21}=oc-mpls-types
          at com.google.common.collect.ImmutableMap.conflictException (ImmutableMap.java:215)
          at com.google.common.collect.ImmutableMap.checkNoConflict (ImmutableMap.java:209)
          at com.google.common.collect.RegularImmutableMap.checkNoConflictInKeyBucket (RegularImmutableMap.java:146)
          at com.google.common.collect.RegularImmutableMap.fromEntryArray (RegularImmutableMap.java:109)
          at com.google.common.collect.ImmutableMap$Builder.build (ImmutableMap.java:394)
          at org.opendaylight.yangtools.yang.model.export.StatementPrefixResolver.forModule (StatementPrefixResolver.java:120)
          at org.opendaylight.yangtools.yang.model.export.DeclaredStatementFormatter.toYangTextSnippet (DeclaredStatementFormatter.java:51)
          at org.opendaylight.mdsal.binding.java.api.generator.BaseTemplate.appendYangSnippet (BaseTemplate.java:474)
          at org.opendaylight.mdsal.binding.java.api.generator.BaseTemplate.appendSnippet (BaseTemplate.java:442)
          at org.opendaylight.mdsal.binding.java.api.generator.BaseTemplate.formatDataForJavaDoc (BaseTemplate.java:393)
          at org.opendaylight.mdsal.binding.java.api.generator.InterfaceTemplate.body (InterfaceTemplate.java:87)
          at org.opendaylight.mdsal.binding.java.api.generator.BaseTemplate.generate (BaseTemplate.java:103)
          at org.opendaylight.mdsal.binding.java.api.generator.InterfaceGenerator.generate (InterfaceGenerator.java:34)
          at org.opendaylight.mdsal.binding.java.api.generator.GeneratorJavaFile$GeneratorStringSupplier.get (GeneratorJavaFile.java:52)
          at org.opendaylight.mdsal.binding.java.api.generator.GeneratorJavaFile$GeneratorStringSupplier.get (GeneratorJavaFile.java:41)
          at org.opendaylight.mdsal.binding.maven.api.gen.plugin.CodeGeneratorImpl$GenerationTask.generateFile (CodeGeneratorImpl.java:282)
      

       

            dominik.vrbovsky Dominik Vrbovský
            andmak Andrej Mak
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: