Improve QNAME field definition 36/71836/8
authorRobert Varga <robert.varga@pantheon.tech>
Tue, 24 Apr 2018 09:26:46 +0000 (11:26 +0200)
committerRobert Varga <nite@hq.sk>
Thu, 24 May 2018 09:58:08 +0000 (09:58 +0000)
commitad4b0d54923516fb479d7f45ff490b5c98611530
tree9c54b816ffb14e79d85d7e3d72fb0bce65b8ecce
parente07c0ccf96b6266b0fd51b87aa4bbf4f4c2f1447
Improve QNAME field definition

The constant field that contains the QName corresponding to the
generated construct can rely on YangModuleInfo associated with
the generated module. Since that class already contains the module's
QName, we can lift it from there and use it to define the constant.

This has the benefit of not duplicating strings in classes, leading
to smaller footprint and improves startup time, as the strings do not
have to be parsed when the class is loaded.

JIRA: MDSAL-339
Change-Id: Ia7d336e3d386955f83648543b1e98f820ebbaf40
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
12 files changed:
binding/mdsal-binding-generator-impl/src/main/java/org/opendaylight/mdsal/binding/generator/impl/AbstractTypeGenerator.java
binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/BaseTemplate.xtend
binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/JavaFileTemplate.java
binding/mdsal-binding-java-api-generator/src/main/java/org/opendaylight/mdsal/binding/java/api/generator/YangModuleInfoTemplate.xtend
binding/mdsal-binding-java-api-generator/src/test/java/org/opendaylight/mdsal/binding/java/api/generator/test/AugmentToUsesInAugmentCompilationTest.java
binding/mdsal-binding-java-api-generator/src/test/java/org/opendaylight/mdsal/binding/java/api/generator/test/BaseCompilationTest.java
binding/mdsal-binding-java-api-generator/src/test/java/org/opendaylight/mdsal/binding/java/api/generator/test/Bug5151Test.java
binding/mdsal-binding-java-api-generator/src/test/java/org/opendaylight/mdsal/binding/java/api/generator/test/CascadeUsesCompilationTest.java
binding/mdsal-binding-java-api-generator/src/test/java/org/opendaylight/mdsal/binding/java/api/generator/test/CompilationTest.java
binding/mdsal-binding-java-api-generator/src/test/java/org/opendaylight/mdsal/binding/java/api/generator/test/NestedGroupingCompilationTest.java
binding/mdsal-binding-java-api-generator/src/test/java/org/opendaylight/mdsal/binding/java/api/generator/test/TypedefCompilationTest.java
binding/yang-binding/src/main/java/org/opendaylight/yangtools/yang/binding/BindingMapping.java