[MDSAL-278] Unable to generate binding v2 sources from yang Created: 31/Jul/17  Updated: 09/Mar/18  Resolved: 31/Jul/17

Status: Resolved
Project: mdsal
Component/s: Binding V2 codegen
Affects Version/s: None
Fix Version/s: None

Type: Bug
Reporter: Andrej Záň Assignee: Unassigned
Resolution: Cannot Reproduce Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


External issue ID: 8908

 Description   

Binding v2 generator throws exception while generating code for this yang model:

module test {

yang-version 1;
namespace "urn:opendaylight:params:xml:ns:yang:test";
prefix "test";

revision "2017-02-24"

{ description "Initial revision of test model."; }

container test-container {
list test-list {
leaf test-leaf {
type enumeration {
enum enum1

{ value 1; }

enum enum2

{ value 2; }

}
}
}
}

container test-leafref-container {
leaf test-leafref {
type leafref

{ path "/test:test-container/test:test-list/test:test-leaf"; }

}
}

}

Exception is:

[ERROR] yang-to-sources: Unable to generate sources with org.opendaylight.mdsal.binding.javav2.maven.api.gen.plugin.CodeGeneratorImpl generator
java.lang.IllegalArgumentException: Type parameter MUST be specified and cannot be NULL!
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:122)
at org.opendaylight.mdsal.binding.javav2.java.api.generator.renderers.BaseRenderer.putTypeIntoImports(BaseRenderer.java:150)
at org.opendaylight.mdsal.binding.javav2.java.api.generator.renderers.BaseRenderer.importedName(BaseRenderer.java:72)
at org.opendaylight.mdsal.binding.javav2.java.api.generator.renderers.BuilderRenderer.body(BuilderRenderer.java:256)
at org.opendaylight.mdsal.binding.javav2.java.api.generator.renderers.BaseRenderer.generateTemplate(BaseRenderer.java:363)
at org.opendaylight.mdsal.binding.javav2.java.api.generator.BuilderGenerator.generate(BuilderGenerator.java:39)
at org.opendaylight.mdsal.binding.javav2.java.api.generator.GeneratorJavaFile.generateTypeToJavaFile(GeneratorJavaFile.java:192)
at org.opendaylight.mdsal.binding.javav2.java.api.generator.GeneratorJavaFile.generateToFile(GeneratorJavaFile.java:106)
at org.opendaylight.mdsal.binding.javav2.maven.api.gen.plugin.CodeGeneratorImpl.generateSources(CodeGeneratorImpl.java:91)
at org.opendaylight.yangtools.yang2sources.plugin.YangToSourcesProcessor.generateSourcesWithOneGenerator(YangToSourcesProcessor.java:333)
at org.opendaylight.yangtools.yang2sources.plugin.YangToSourcesProcessor.generateSources(YangToSourcesProcessor.java:275)
at org.opendaylight.yangtools.yang2sources.plugin.YangToSourcesProcessor.execute(YangToSourcesProcessor.java:96)
at org.opendaylight.yangtools.yang2sources.plugin.YangToSourcesProcessor.conditionalExecute(YangToSourcesProcessor.java:117)
at org.opendaylight.yangtools.yang2sources.plugin.YangToSourcesMojo.execute(YangToSourcesMojo.java:121)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call(MultiThreadedBuilder.java:200)
at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call(MultiThreadedBuilder.java:196)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
[ERROR] yang-to-sources: One or more code generators failed, including failed list(generatorClass=exception)

{org.opendaylight.mdsal.binding.javav2.maven.ap i.gen.plugin.CodeGeneratorImpl=java.lang.IllegalArgumentException}

Binding v1 converts this yang model without problems


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