BUG 1131: Introduced sealing of builder, initial clean up of ModuleBuilder. 98/7898/11
authorTomas Olvecky <tolvecky@cisco.com>
Tue, 24 Jun 2014 11:09:12 +0000 (13:09 +0200)
committerMartin Vitez <mvitez@cisco.com>
Mon, 30 Jun 2014 09:39:29 +0000 (09:39 +0000)
commitae814a949d486245bdc4d20df9752d74ee9d541a
tree10f1ae4fec2734e46935b61083278897d077e6e4
parent79682669e4e54af1fa2f98aafbdebba55ff184f9
BUG 1131: Introduced sealing of builder, initial clean up of ModuleBuilder.

Introduced sealing of builders, which makes sure builder is not
modified once the product of build was created.

Logic in parser prevented this already, but it was external
check to builders, not internal.

Sealing of builders is critical for implementing safe
instantiation since once you create copy of builder
(eg.instantiation of grouping) you do NOT want
to have grouping definition accidentally change.

This should prevent introducing regressions as described above.

Change-Id: Iad2dfc8036d27f3538e48315eb1fc17a5481f67b
Signed-off-by: Tony Tkacik <ttkacik@cisco.com>
Signed-off-by: Tomas Olvecky <tolvecky@cisco.com>
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/impl/ModuleBuilder.java
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/impl/ModuleImpl.java [new file with mode: 0644]
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/impl/RefineUtils.java
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/util/AbstractBuilder.java
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/util/AbstractDocumentedDataNodeContainerBuilder.java
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/builder/util/AbstractDocumentedNode.java
yang/yang-parser-impl/src/main/java/org/opendaylight/yangtools/yang/parser/impl/YangParserImpl.java