Bug 7037 - Improve mapping of YANG extensions 17/55717/11
authorPeter Kajsa <pkajsa@cisco.com>
Thu, 20 Apr 2017 09:49:14 +0000 (11:49 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Mon, 5 Jun 2017 07:55:05 +0000 (09:55 +0200)
commit4fe39dd37465c2bb87f920317849ca5eb044fc3d
tree2e8c862d573552664ea5342bcf7b82d085644e7e
parent84079727baba1e211444b1b4b8fe878911ec25fe
Bug 7037 - Improve mapping of YANG extensions

Each extension definition is able to create an unknown statement
form of a regular yang statement. Created definitions of regular yang
statements are created only once per each yang statement and extension
definition. So we do not create a new ModelDefinedStatementDefinition
and a corresponding UnknownStatementImpl.Definition for each instance
of a regular yang statement when it is placed in an unknown statement's
body.

Change-Id: I5613eb36273e6b512637fb14456c64b023df3f1f
Signed-off-by: Peter Kajsa <pkajsa@cisco.com>
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/spi/meta/StatementSupport.java
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/BuildGlobalContext.java
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/SourceSpecificContext.java
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/reactor/StatementDefinitionContext.java
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/ModelDefinedStatementDefinition.java
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/ModelDefinedStatementSupport.java
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/stmt/rfc6020/UnknownStatementImpl.java
yang/yang-parser-impl/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug1412Test.java
yang/yang-parser-impl/src/test/java/org/opendaylight/yangtools/yang/stmt/Bug7037Test.java [new file with mode: 0644]
yang/yang-parser-impl/src/test/resources/bugs/bug7037/bar.yang [new file with mode: 0644]
yang/yang-parser-impl/src/test/resources/bugs/bug7037/foo.yang [new file with mode: 0644]