Make empty lists and choices disappear 83/35583/40
authorRobert Varga <robert.varga@pantheon.tech>
Tue, 31 Jul 2018 00:10:03 +0000 (02:10 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Mon, 6 Aug 2018 12:01:44 +0000 (14:01 +0200)
commit665b3152483fc348ca779953735f6ff89dff9e1e
tree354b8b54461cf7059888fb7c0ae09a2ff769538e
parent3a2e6c535671aa77ac686fa86bd8bce6eb21604e
Make empty lists and choices disappear

This achieves automatic lifecycle behavior, so that lists disappear
as soon as they have zero elements.

Bug4454 test is updated to account for the list disappearing under
normal operation.

JIRA: YANGTOOLS-585
Change-Id: I68220043c0f335324e5a8788b2872f57b750aae9
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
Signed-off-by: Igor Foltin <ifoltin@cisco.com>
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
13 files changed:
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AutomaticLifecycleMixin.java [new file with mode: 0644]
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ChoiceModificationStrategy.java
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModifiedNode.java
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/OrderedMapModificationStrategy.java
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/SchemaAwareApplyOperation.java
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/StructuralContainerModificationStrategy.java
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UnkeyedListModificationStrategy.java
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UnorderedMapModificationStrategy.java
yang/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug4454Test.java
yang/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModificationMetadataTreeTest.java
yang/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/StructuralApplyModificationTest.java [new file with mode: 0644]
yang/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/TestModel.java
yang/yang-data-impl/src/test/resources/odl-datastore-test.yang