From b2f005eb9fc5efb892d824e367b54cc23c7903cb Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Fri, 10 Dec 2021 10:07:26 +0100 Subject: [PATCH] Split out yang-data-tree-{api,spi} In order to split out InMemoryDataTree, we need to first split out its API components. This patch introduces yang-data-tree-{api,spi}, which hold the basic components defining the API and implementation helper bits. JIRA: YANGTOOLS-1242 Change-Id: Ida5383ed6c8820d539f72f8cd5192ccb4a93548a Signed-off-by: Robert Varga --- artifacts/pom.xml | 10 + .../impl/tree/InMemoryDataTreeBenchmark.java | 12 +- .../src/main/java/module-info.java | 2 + .../binfmt/AbstractDataTreeCandidateNode.java | 7 +- .../binfmt/DataTreeCandidateInputOutput.java | 10 +- .../binfmt/DeletedDataTreeCandidateNode.java | 4 +- .../binfmt/ModifiedDataTreeCandidateNode.java | 4 +- .../UnmodifiedRootDataTreeCandidateNode.java | 4 +- .../DataTreeCandidateInputOutputTest.java | 12 +- data/pom.xml | 4 + .../SynchronizedDataTreeModification.java | 72 ----- data/yang-data-impl/pom.xml | 8 + .../src/main/java/module-info.java | 4 +- .../data/impl/leafref/LeafRefValidation.java | 6 +- .../data/impl/schema/tree/AbstractCursor.java | 2 +- .../tree/AbstractDataTreeCandidate.java | 2 +- .../impl/schema/tree/AbstractDataTreeTip.java | 8 +- ...bstractModifiedNodeBasedCandidateNode.java | 6 +- ...ractNodeContainerModificationStrategy.java | 12 +- .../impl/schema/tree/AbstractValidation.java | 2 +- .../AugmentationModificationStrategy.java | 2 +- .../schema/tree/AutomaticLifecycleMixin.java | 2 +- .../data/impl/schema/tree/CaseEnforcer.java | 4 +- .../tree/ChoiceModificationStrategy.java | 2 +- .../tree/ContainerModificationStrategy.java | 2 +- ...DataNodeContainerModificationStrategy.java | 2 +- .../impl/schema/tree/InMemoryDataTree.java | 6 +- .../tree/InMemoryDataTreeCandidate.java | 2 +- .../schema/tree/InMemoryDataTreeFactory.java | 12 +- .../tree/InMemoryDataTreeModification.java | 4 +- .../InMemoryDataTreeModificationCursor.java | 2 +- .../schema/tree/InMemoryDataTreeSnapshot.java | 4 +- .../tree/LeafSetModificationStrategy.java | 2 +- .../schema/tree/ListModificationStrategy.java | 4 +- .../impl/schema/tree/LogicalOperation.java | 2 +- .../schema/tree/MandatoryLeafEnforcer.java | 4 +- .../tree/MapEntryModificationStrategy.java | 2 +- .../schema/tree/MapModificationStrategy.java | 2 +- .../schema/tree/MinMaxElementsValidation.java | 2 +- ...nMaxElementsValidationFailedException.java | 2 +- .../tree/ModificationApplyOperation.java | 2 +- .../data/impl/schema/tree/ModifiedNode.java | 2 +- .../schema/tree/NoopDataTreeCandidate.java | 4 +- .../impl/schema/tree/RootApplyStrategy.java | 4 +- .../tree/SchemaAwareApplyOperation.java | 12 +- ...ructuralContainerModificationStrategy.java | 2 +- .../impl/schema/tree/UniqueValidation.java | 4 +- .../tree/UniqueValidationFailedException.java | 2 +- .../tree/ValueNodeModificationStrategy.java | 4 +- .../yang/data/impl/leafref/YT821Test.java | 8 +- .../yang/data/impl/leafref/YT891Test.java | 8 +- .../yang/data/impl/leafref/YT892Test.java | 8 +- .../impl/leafref/context/Bug8713Test.java | 8 +- .../DataTreeCandidateValidatorTest.java | 10 +- .../DataTreeCandidateValidatorTest2.java | 10 +- .../DataTreeCandidateValidatorTest3.java | 10 +- .../data/impl/schema/tree/Bug2690Test.java | 12 +- .../data/impl/schema/tree/Bug3674Test.java | 14 +- .../data/impl/schema/tree/Bug4295Test.java | 8 +- .../data/impl/schema/tree/Bug4454Test.java | 12 +- .../data/impl/schema/tree/Bug5830Test.java | 10 +- .../impl/schema/tree/Bug5968MergeTest.java | 10 +- .../data/impl/schema/tree/Bug5968Test.java | 10 +- .../data/impl/schema/tree/Bug8291Test.java | 12 +- .../impl/schema/tree/CaseAugmentTest.java | 10 +- .../impl/schema/tree/CaseExclusionTest.java | 10 +- .../tree/ConcurrentTreeModificationTest.java | 14 +- .../tree/ConfigStatementValidationTest.java | 10 +- .../schema/tree/DataTreeCandidatesTest.java | 20 +- .../schema/tree/DataTreeTransactionTest.java | 8 +- .../impl/schema/tree/ErrorReportingTest.java | 12 +- .../tree/ListConstraintsValidation.java | 12 +- .../impl/schema/tree/MandatoryLeafTest.java | 12 +- .../impl/schema/tree/MapEntryRootTest.java | 6 +- .../tree/ModificationMetadataTreeTest.java | 6 +- .../impl/schema/tree/OrderedListTest.java | 12 +- .../impl/schema/tree/StoreTreeNodesTest.java | 2 +- .../tree/StructuralApplyModificationTest.java | 10 +- .../schema/tree/UniqueConstraintTest.java | 10 +- .../data/impl/schema/tree/YT1104Test.java | 8 +- .../data/impl/schema/tree/YT1276Test.java | 8 +- .../yang/data/impl/schema/tree/YT776Test.java | 8 +- data/yang-data-tree-api/pom.xml | 42 +++ .../src/main/java/module-info.java | 18 ++ .../tree/api}/BackendFailedException.java | 6 +- ...nflictingModificationAppliedException.java | 2 +- .../api}/CursorAwareDataTreeModification.java | 2 +- .../api}/CursorAwareDataTreeSnapshot.java | 2 +- .../yang/data/tree/api}/DataTree.java | 2 +- .../data/tree/api}/DataTreeCandidate.java | 12 +- .../data/tree/api}/DataTreeCandidateNode.java | 2 +- .../data/tree/api}/DataTreeCandidateTip.java | 2 +- .../data/tree/api}/DataTreeConfiguration.java | 10 +- .../yang/data/tree/api}/DataTreeFactory.java | 11 +- .../data/tree/api}/DataTreeModification.java | 25 +- .../tree/api}/DataTreeModificationCursor.java | 17 +- .../yang/data/tree/api}/DataTreeSnapshot.java | 2 +- .../tree/api}/DataTreeSnapshotCursor.java | 2 +- .../yang/data/tree/api}/DataTreeTip.java | 2 +- .../api}/DataValidationFailedException.java | 2 +- .../api}/IncorrectDataStructureException.java | 2 +- .../yang/data/tree/api}/ModificationType.java | 2 +- .../ModifiedNodeDoesNotExistException.java | 2 +- .../yang/data/tree/api}/ReadOnlyDataTree.java | 2 +- .../api}/RequiredElementCountException.java | 2 +- .../yang/data/tree/api}/TreeType.java | 2 +- .../tree/api}/UniqueConstraintException.java | 2 +- data/yang-data-tree-spi/pom.xml | 42 +++ .../src/main/java/module-info.java | 18 ++ .../AbstractAvailableLeafCandidateNode.java | 2 +- .../spi}/AbstractDataTreeCandidateNode.java | 3 +- .../tree/spi}/AbstractLeafCandidateNode.java | 3 +- .../spi}/AbstractRecursiveCandidateNode.java | 3 +- .../tree/spi}/AbstractWriteCandidate.java | 3 +- .../tree/spi}/DataTreeCandidateNodes.java | 4 +- .../data/tree/spi}/DataTreeCandidates.java | 12 +- .../tree/spi}/DefaultDataTreeCandidate.java | 4 +- .../tree/spi}/DeleteLeafCandidateNode.java | 3 +- .../tree/spi}/EmptyDataTreeCandidateNode.java | 4 +- .../NormalizedNodeDataTreeCandidateNode.java | 4 +- .../spi}/RecursiveDeleteCandidateNode.java | 4 +- .../spi}/RecursiveReplaceCandidateNode.java | 4 +- .../RecursiveUnmodifiedCandidateNode.java | 4 +- .../spi}/RecursiveWriteCandidateNode.java | 4 +- .../tree/spi}/ReplaceLeafCandidateNode.java | 2 +- .../spi}/TerminalDataTreeCandidateNode.java | 4 +- .../spi}/UnmodifiedLeafCandidateNode.java | 3 +- .../tree/spi}/WriteLeafCandidateNode.java | 2 +- .../tree/spi}/DataTreeCandidateNodesTest.java | 16 +- .../spi}/DataTreeCandidatesAggregateTest.java | 266 +++++++++--------- .../tree/spi}/DataTreeCandidatesTest.java | 17 +- .../tree/spi}/DataTreeConfigurationTest.java | 6 +- ...rmalizedNodeDataTreeCandidateNodeTest.java | 5 +- docs/pom.xml | 8 + features/odl-yangtools-data-api/pom.xml | 8 + 135 files changed, 682 insertions(+), 570 deletions(-) delete mode 100644 data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/SynchronizedDataTreeModification.java create mode 100644 data/yang-data-tree-api/pom.xml create mode 100644 data/yang-data-tree-api/src/main/java/module-info.java rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/BackendFailedException.java (76%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/ConflictingModificationAppliedException.java (94%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/CursorAwareDataTreeModification.java (96%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/CursorAwareDataTreeSnapshot.java (96%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/DataTree.java (94%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/DataTreeCandidate.java (78%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/DataTreeCandidateNode.java (97%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/DataTreeCandidateTip.java (93%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/DataTreeConfiguration.java (95%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/DataTreeFactory.java (92%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/DataTreeModification.java (65%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/DataTreeModificationCursor.java (73%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/DataTreeSnapshot.java (95%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/DataTreeSnapshotCursor.java (98%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/DataTreeTip.java (97%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/DataValidationFailedException.java (96%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/IncorrectDataStructureException.java (94%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/ModificationType.java (97%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/ModifiedNodeDoesNotExistException.java (95%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/ReadOnlyDataTree.java (94%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/RequiredElementCountException.java (98%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/TreeType.java (96%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api}/UniqueConstraintException.java (97%) create mode 100644 data/yang-data-tree-spi/pom.xml create mode 100644 data/yang-data-tree-spi/src/main/java/module-info.java rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/AbstractAvailableLeafCandidateNode.java (91%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/AbstractDataTreeCandidateNode.java (91%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/AbstractLeafCandidateNode.java (91%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/AbstractRecursiveCandidateNode.java (92%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/AbstractWriteCandidate.java (84%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/DataTreeCandidateNodes.java (98%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/DataTreeCandidates.java (97%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/DefaultDataTreeCandidate.java (86%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/DeleteLeafCandidateNode.java (87%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/EmptyDataTreeCandidateNode.java (88%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/NormalizedNodeDataTreeCandidateNode.java (92%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/RecursiveDeleteCandidateNode.java (87%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/RecursiveReplaceCandidateNode.java (89%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/RecursiveUnmodifiedCandidateNode.java (87%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/RecursiveWriteCandidateNode.java (87%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/ReplaceLeafCandidateNode.java (93%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/TerminalDataTreeCandidateNode.java (96%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/UnmodifiedLeafCandidateNode.java (86%) rename data/{yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi}/WriteLeafCandidateNode.java (91%) rename data/{yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi}/DataTreeCandidateNodesTest.java (93%) rename data/{yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi}/DataTreeCandidatesAggregateTest.java (87%) rename data/{yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi}/DataTreeCandidatesTest.java (93%) rename data/{yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi}/DataTreeConfigurationTest.java (91%) rename data/{yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree => yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi}/NormalizedNodeDataTreeCandidateNodeTest.java (94%) diff --git a/artifacts/pom.xml b/artifacts/pom.xml index be510cc3e5..dc93710708 100644 --- a/artifacts/pom.xml +++ b/artifacts/pom.xml @@ -59,6 +59,16 @@ yang-data-transform 8.0.0-SNAPSHOT + + org.opendaylight.yangtools + yang-data-tree-api + 8.0.0-SNAPSHOT + + + org.opendaylight.yangtools + yang-data-tree-spi + 8.0.0-SNAPSHOT + org.opendaylight.yangtools yang-data-codec-binfmt diff --git a/benchmarks/src/main/java/org/opendaylight/yangtools/yang/data/impl/tree/InMemoryDataTreeBenchmark.java b/benchmarks/src/main/java/org/opendaylight/yangtools/yang/data/impl/tree/InMemoryDataTreeBenchmark.java index 5bbc823ecc..c415d9dd5a 100644 --- a/benchmarks/src/main/java/org/opendaylight/yangtools/yang/data/impl/tree/InMemoryDataTreeBenchmark.java +++ b/benchmarks/src/main/java/org/opendaylight/yangtools/yang/data/impl/tree/InMemoryDataTreeBenchmark.java @@ -19,15 +19,15 @@ import org.opendaylight.yangtools.yang.data.api.schema.MapNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.SystemMapNode; import org.opendaylight.yangtools.yang.data.api.schema.builder.CollectionNodeBuilder; -import org.opendaylight.yangtools.yang.data.api.schema.tree.CursorAwareDataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModificationCursor; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder; import org.opendaylight.yangtools.yang.data.impl.schema.tree.InMemoryDataTreeFactory; +import org.opendaylight.yangtools.yang.data.tree.api.CursorAwareDataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModificationCursor; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.openjdk.jmh.annotations.Benchmark; import org.openjdk.jmh.annotations.BenchmarkMode; import org.openjdk.jmh.annotations.Fork; diff --git a/codec/yang-data-codec-binfmt/src/main/java/module-info.java b/codec/yang-data-codec-binfmt/src/main/java/module-info.java index f920247f4f..03b464bd44 100644 --- a/codec/yang-data-codec-binfmt/src/main/java/module-info.java +++ b/codec/yang-data-codec-binfmt/src/main/java/module-info.java @@ -12,6 +12,8 @@ module org.opendaylight.yangtools.yang.data.codec.binfmt { requires transitive org.opendaylight.yangtools.yang.common; requires transitive org.opendaylight.yangtools.yang.model.api; requires transitive org.opendaylight.yangtools.yang.data.api; + requires transitive org.opendaylight.yangtools.yang.data.tree.api; + requires transitive org.opendaylight.yangtools.yang.data.tree.spi; requires java.xml; requires org.opendaylight.yangtools.yang.data.impl; requires org.opendaylight.yangtools.rfc8528.data.api; diff --git a/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/AbstractDataTreeCandidateNode.java b/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/AbstractDataTreeCandidateNode.java index b03aa10c78..1dea7316fb 100644 --- a/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/AbstractDataTreeCandidateNode.java +++ b/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/AbstractDataTreeCandidateNode.java @@ -10,10 +10,11 @@ package org.opendaylight.yangtools.yang.data.codec.binfmt; import static java.util.Objects.requireNonNull; import java.util.Optional; +import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; /** * Abstract base class for our internal implementation of {@link DataTreeCandidateNode}, @@ -23,7 +24,7 @@ import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; * this component. */ abstract class AbstractDataTreeCandidateNode implements DataTreeCandidateNode { - private final ModificationType type; + private final @NonNull ModificationType type; AbstractDataTreeCandidateNode(final ModificationType type) { this.type = requireNonNull(type); diff --git a/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/DataTreeCandidateInputOutput.java b/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/DataTreeCandidateInputOutput.java index d85cb49141..2754f36221 100644 --- a/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/DataTreeCandidateInputOutput.java +++ b/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/DataTreeCandidateInputOutput.java @@ -16,12 +16,12 @@ import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.stream.ReusableStreamReceiver; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNodes; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidates; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; import org.opendaylight.yangtools.yang.data.impl.schema.ReusableImmutableNormalizedNodeStreamWriter; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; +import org.opendaylight.yangtools.yang.data.tree.spi.DataTreeCandidateNodes; +import org.opendaylight.yangtools.yang.data.tree.spi.DataTreeCandidates; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/DeletedDataTreeCandidateNode.java b/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/DeletedDataTreeCandidateNode.java index 9e9d9d1f5d..0accce5088 100644 --- a/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/DeletedDataTreeCandidateNode.java +++ b/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/DeletedDataTreeCandidateNode.java @@ -11,8 +11,8 @@ import java.util.Collection; import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; /** * A deserialized {@link DataTreeCandidateNode} which represents a deletion. diff --git a/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/ModifiedDataTreeCandidateNode.java b/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/ModifiedDataTreeCandidateNode.java index 2d24dc3ee5..1048459300 100644 --- a/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/ModifiedDataTreeCandidateNode.java +++ b/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/ModifiedDataTreeCandidateNode.java @@ -13,8 +13,8 @@ import java.util.Collection; import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; /** * A deserialized {@link DataTreeCandidateNode} which represents a modification in diff --git a/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/UnmodifiedRootDataTreeCandidateNode.java b/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/UnmodifiedRootDataTreeCandidateNode.java index 82c1a709d1..9dfce27a33 100644 --- a/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/UnmodifiedRootDataTreeCandidateNode.java +++ b/codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/UnmodifiedRootDataTreeCandidateNode.java @@ -11,8 +11,8 @@ import java.util.Collection; import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; final class UnmodifiedRootDataTreeCandidateNode extends AbstractDataTreeCandidateNode { static final UnmodifiedRootDataTreeCandidateNode INSTANCE = new UnmodifiedRootDataTreeCandidateNode(); diff --git a/codec/yang-data-codec-binfmt/src/test/java/org/opendaylight/yangtools/yang/data/codec/binfmt/DataTreeCandidateInputOutputTest.java b/codec/yang-data-codec-binfmt/src/test/java/org/opendaylight/yangtools/yang/data/codec/binfmt/DataTreeCandidateInputOutputTest.java index 0bc4a0a976..5e770c9073 100644 --- a/codec/yang-data-codec-binfmt/src/test/java/org/opendaylight/yangtools/yang/data/codec/binfmt/DataTreeCandidateInputOutputTest.java +++ b/codec/yang-data-codec-binfmt/src/test/java/org/opendaylight/yangtools/yang/data/codec/binfmt/DataTreeCandidateInputOutputTest.java @@ -24,14 +24,14 @@ import org.junit.Test; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.tree.InMemoryDataTreeFactory; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.model.api.SchemaContext; import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils; diff --git a/data/pom.xml b/data/pom.xml index 2ce3562395..c39a059e97 100644 --- a/data/pom.xml +++ b/data/pom.xml @@ -34,6 +34,10 @@ yang-data-transform yang-data-util + + yang-data-tree-api + yang-data-tree-spi + rfc7952-data-api rfc7952-data-util diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/SynchronizedDataTreeModification.java b/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/SynchronizedDataTreeModification.java deleted file mode 100644 index 1e7e7fa4d5..0000000000 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/SynchronizedDataTreeModification.java +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License v1.0 which accompanies this distribution, - * and is available at http://www.eclipse.org/legal/epl-v10.html - */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; - -import static java.util.Objects.requireNonNull; - -import java.util.Optional; -import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; -import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; - -/** - * A {@link DataTreeModification} implementation which delegates all calls to - * another instance, making sure no method is being invoked from multiple threads - * concurrently. - */ -public final class SynchronizedDataTreeModification implements DataTreeModification { - private final DataTreeModification delegate; - - private SynchronizedDataTreeModification(final DataTreeModification delegate) { - this.delegate = requireNonNull(delegate); - } - - public static DataTreeModification create(final DataTreeModification delegate) { - return new SynchronizedDataTreeModification(delegate); - } - - @Override - public synchronized Optional readNode(final YangInstanceIdentifier path) { - return delegate.readNode(path); - } - - @Override - public synchronized DataTreeModification newModification() { - return delegate.newModification(); - } - - @Override - public synchronized void delete(final YangInstanceIdentifier path) { - delegate.delete(path); - } - - @Override - public synchronized void merge(final YangInstanceIdentifier path, final NormalizedNode data) { - delegate.merge(path, data); - } - - @Override - public synchronized void write(final YangInstanceIdentifier path, final NormalizedNode data) { - delegate.write(path, data); - } - - @Override - public synchronized void ready() { - delegate.ready(); - } - - @Override - public synchronized void applyToCursor(final DataTreeModificationCursor cursor) { - delegate.applyToCursor(cursor); - } - - @Override - public synchronized EffectiveModelContext getEffectiveModelContext() { - return delegate.getEffectiveModelContext(); - } -} diff --git a/data/yang-data-impl/pom.xml b/data/yang-data-impl/pom.xml index 5a2a473486..0c05a47812 100644 --- a/data/yang-data-impl/pom.xml +++ b/data/yang-data-impl/pom.xml @@ -64,6 +64,14 @@ org.opendaylight.yangtools yang-data-spi + + org.opendaylight.yangtools + yang-data-tree-api + + + org.opendaylight.yangtools + yang-data-tree-spi + org.opendaylight.yangtools yang-data-util diff --git a/data/yang-data-impl/src/main/java/module-info.java b/data/yang-data-impl/src/main/java/module-info.java index 10024a233d..03d7728e1a 100644 --- a/data/yang-data-impl/src/main/java/module-info.java +++ b/data/yang-data-impl/src/main/java/module-info.java @@ -5,8 +5,8 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeFactory; import org.opendaylight.yangtools.yang.data.impl.schema.tree.InMemoryDataTreeFactory; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeFactory; module org.opendaylight.yangtools.yang.data.impl { // FIXME: do not export data.impl.* @@ -27,6 +27,7 @@ module org.opendaylight.yangtools.yang.data.impl { requires transitive org.opendaylight.yangtools.yang.data.api; requires transitive org.opendaylight.yangtools.yang.data.spi; requires transitive org.opendaylight.yangtools.yang.data.util; + requires transitive org.opendaylight.yangtools.yang.data.tree.api; requires transitive org.opendaylight.yangtools.yang.model.api; requires transitive org.opendaylight.yangtools.yang.model.spi; requires transitive org.opendaylight.yangtools.rfc7952.data.api; @@ -34,6 +35,7 @@ module org.opendaylight.yangtools.yang.data.impl { requires transitive org.opendaylight.yangtools.rfc8528.data.api; requires org.opendaylight.yangtools.rfc8528.data.util; + requires org.opendaylight.yangtools.yang.data.tree.spi; requires org.opendaylight.yangtools.yang.model.util; requires org.opendaylight.yangtools.yang.parser.api; requires org.opendaylight.yangtools.yang.xpath.api; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/leafref/LeafRefValidation.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/leafref/LeafRefValidation.java index 5dc9938b69..e869f1046a 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/leafref/LeafRefValidation.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/leafref/LeafRefValidation.java @@ -40,9 +40,9 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodes; import org.opendaylight.yangtools.yang.data.api.schema.UnkeyedListEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.ValueNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractCursor.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractCursor.java index e114a08f63..a26094ed33 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractCursor.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractCursor.java @@ -14,7 +14,7 @@ import java.util.Arrays; import java.util.concurrent.atomic.AtomicIntegerFieldUpdater; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeSnapshotCursor; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeSnapshotCursor; abstract class AbstractCursor implements DataTreeSnapshotCursor { @SuppressWarnings("rawtypes") diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractDataTreeCandidate.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractDataTreeCandidate.java index bd6d6b1a56..b66838fa85 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractDataTreeCandidate.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractDataTreeCandidate.java @@ -11,7 +11,7 @@ import static java.util.Objects.requireNonNull; import org.eclipse.jdt.annotation.NonNullByDefault; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateTip; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateTip; @NonNullByDefault abstract class AbstractDataTreeCandidate extends AbstractDataTreeTip implements DataTreeCandidateTip { diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractDataTreeTip.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractDataTreeTip.java index e3a144afd7..f7c974a563 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractDataTreeTip.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractDataTreeTip.java @@ -13,11 +13,11 @@ import static com.google.common.base.Preconditions.checkState; import java.util.Optional; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateTip; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeTip; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateTip; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeTip; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; abstract class AbstractDataTreeTip implements DataTreeTip { /** diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractModifiedNodeBasedCandidateNode.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractModifiedNodeBasedCandidateNode.java index b8426e08a1..00830945a9 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractModifiedNodeBasedCandidateNode.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractModifiedNodeBasedCandidateNode.java @@ -20,10 +20,10 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgum import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodeContainer; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNodes; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; +import org.opendaylight.yangtools.yang.data.tree.spi.DataTreeCandidateNodes; abstract class AbstractModifiedNodeBasedCandidateNode implements DataTreeCandidateNode { private final ModifiedNode mod; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractNodeContainerModificationStrategy.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractNodeContainerModificationStrategy.java index 2accd980be..0152788cf1 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractNodeContainerModificationStrategy.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractNodeContainerModificationStrategy.java @@ -22,16 +22,16 @@ import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.builder.NormalizedNodeContainerBuilder; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ConflictingModificationAppliedException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModifiedNodeDoesNotExistException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.TreeType; import org.opendaylight.yangtools.yang.data.spi.tree.MutableTreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNodeFactory; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.ConflictingModificationAppliedException; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; +import org.opendaylight.yangtools.yang.data.tree.api.ModifiedNodeDoesNotExistException; +import org.opendaylight.yangtools.yang.data.tree.api.TreeType; import org.opendaylight.yangtools.yang.model.api.DocumentedNode.WithStatus; abstract class AbstractNodeContainerModificationStrategy diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractValidation.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractValidation.java index 484ed3a206..1441db7361 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractValidation.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AbstractValidation.java @@ -15,9 +15,9 @@ import java.util.Optional; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AugmentationModificationStrategy.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AugmentationModificationStrategy.java index 4f0d1d944a..56b4add05c 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AugmentationModificationStrategy.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AugmentationModificationStrategy.java @@ -10,11 +10,11 @@ package org.opendaylight.yangtools.yang.data.impl.schema.tree; import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.AugmentationNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableAugmentationNodeBuilder; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; import org.opendaylight.yangtools.yang.data.util.DataSchemaContextNode; import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode; import org.opendaylight.yangtools.yang.model.api.DataNodeContainer; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AutomaticLifecycleMixin.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AutomaticLifecycleMixin.java index 30d774c452..c1f1ab0a51 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AutomaticLifecycleMixin.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/AutomaticLifecycleMixin.java @@ -12,10 +12,10 @@ import static com.google.common.base.Preconditions.checkState; import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodeContainer; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNodeFactory; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; /** * Mixin-type support class for subclasses of {@link ModificationApplyOperation} which need to provide automatic diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/CaseEnforcer.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/CaseEnforcer.java index 14dcd267e0..44a4e78c29 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/CaseEnforcer.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/CaseEnforcer.java @@ -20,8 +20,8 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.Augmentat import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.TreeType; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.TreeType; import org.opendaylight.yangtools.yang.data.util.DataSchemaContextNode; import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode; import org.opendaylight.yangtools.yang.model.api.CaseSchemaNode; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ChoiceModificationStrategy.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ChoiceModificationStrategy.java index c2f128dbed..32faf91014 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ChoiceModificationStrategy.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ChoiceModificationStrategy.java @@ -27,12 +27,12 @@ import org.opendaylight.yangtools.yang.data.api.schema.ChoiceNode; import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodes; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableChoiceNodeBuilder; import org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.Visible; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode; import org.opendaylight.yangtools.yang.model.api.CaseSchemaNode; import org.opendaylight.yangtools.yang.model.api.ChoiceSchemaNode; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ContainerModificationStrategy.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ContainerModificationStrategy.java index 6dabc80544..9ef2ddea0a 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ContainerModificationStrategy.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ContainerModificationStrategy.java @@ -13,10 +13,10 @@ import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; import org.opendaylight.yangtools.yang.model.api.ContainerLike; import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/DataNodeContainerModificationStrategy.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/DataNodeContainerModificationStrategy.java index f3c08e9e44..5e7780c3d1 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/DataNodeContainerModificationStrategy.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/DataNodeContainerModificationStrategy.java @@ -18,8 +18,8 @@ import org.eclipse.jdt.annotation.Nullable; import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; import org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.Visible; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; import org.opendaylight.yangtools.yang.model.api.AugmentationTarget; import org.opendaylight.yangtools.yang.model.api.DataNodeContainer; import org.opendaylight.yangtools.yang.model.api.DataSchemaNode; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTree.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTree.java index ce5d13cbd2..3f78ff4800 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTree.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTree.java @@ -17,10 +17,10 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodes; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; import org.opendaylight.yangtools.yang.data.util.DataSchemaContextNode; import org.opendaylight.yangtools.yang.data.util.DataSchemaContextTree; import org.opendaylight.yangtools.yang.model.api.ContainerLike; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeCandidate.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeCandidate.java index 9e260b5b74..71421ce41c 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeCandidate.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeCandidate.java @@ -10,8 +10,8 @@ package org.opendaylight.yangtools.yang.data.impl.schema.tree; import com.google.common.base.MoreObjects; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNode; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; final class InMemoryDataTreeCandidate extends AbstractDataTreeCandidate { diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeFactory.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeFactory.java index 066d5de8fd..d988a7b7cd 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeFactory.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeFactory.java @@ -20,16 +20,16 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeFactory; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNodeFactory; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeFactory; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.util.DataSchemaContextNode; import org.opendaylight.yangtools.yang.data.util.DataSchemaContextTree; import org.opendaylight.yangtools.yang.model.api.ContainerLike; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeModification.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeModification.java index 708189a692..f0338ebf65 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeModification.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeModification.java @@ -20,11 +20,11 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodes; -import org.opendaylight.yangtools.yang.data.api.schema.tree.CursorAwareDataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModificationCursor; import org.opendaylight.yangtools.yang.data.api.schema.tree.StoreTreeNodes; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.CursorAwareDataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModificationCursor; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContextProvider; import org.slf4j.Logger; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeModificationCursor.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeModificationCursor.java index 85be8f84f5..dbebe450a9 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeModificationCursor.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeModificationCursor.java @@ -19,7 +19,7 @@ import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModificationCursor; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModificationCursor; final class InMemoryDataTreeModificationCursor extends AbstractCursor implements DataTreeModificationCursor { diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeSnapshot.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeSnapshot.java index a2be4d8fcc..9238a0cebd 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeSnapshot.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeSnapshot.java @@ -16,9 +16,9 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodes; -import org.opendaylight.yangtools.yang.data.api.schema.tree.CursorAwareDataTreeSnapshot; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeSnapshotCursor; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; +import org.opendaylight.yangtools.yang.data.tree.api.CursorAwareDataTreeSnapshot; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeSnapshotCursor; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContextProvider; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/LeafSetModificationStrategy.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/LeafSetModificationStrategy.java index 409a9a67b9..4b0710939c 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/LeafSetModificationStrategy.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/LeafSetModificationStrategy.java @@ -13,10 +13,10 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgum import org.opendaylight.yangtools.yang.data.api.schema.LeafSetEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.SystemLeafSetNode; import org.opendaylight.yangtools.yang.data.api.schema.UserLeafSetNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableLeafSetNodeBuilder; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableUserLeafSetNodeBuilder; import org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.Invisible; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; import org.opendaylight.yangtools.yang.model.api.LeafListSchemaNode; final class LeafSetModificationStrategy extends Invisible { diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ListModificationStrategy.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ListModificationStrategy.java index 88f82b97f4..fc5e8d93ed 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ListModificationStrategy.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ListModificationStrategy.java @@ -15,8 +15,6 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.UnkeyedListEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.UnkeyedListNode; import org.opendaylight.yangtools.yang.data.api.schema.builder.NormalizedNodeContainerBuilder; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.IncorrectDataStructureException; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableUnkeyedListEntryNodeBuilder; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableUnkeyedListNodeBuilder; @@ -24,6 +22,8 @@ import org.opendaylight.yangtools.yang.data.spi.tree.MutableTreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNodeFactory; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.IncorrectDataStructureException; import org.opendaylight.yangtools.yang.model.api.ListSchemaNode; final class ListModificationStrategy extends SchemaAwareApplyOperation { diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/LogicalOperation.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/LogicalOperation.java index bdaa954a49..4850529d28 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/LogicalOperation.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/LogicalOperation.java @@ -7,7 +7,7 @@ */ package org.opendaylight.yangtools.yang.data.impl.schema.tree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; /** * Enumeration of all possible node modification states. These are used in diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MandatoryLeafEnforcer.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MandatoryLeafEnforcer.java index e1100f4e59..b43a421232 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MandatoryLeafEnforcer.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MandatoryLeafEnforcer.java @@ -17,9 +17,9 @@ import org.opendaylight.yangtools.concepts.Immutable; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.TreeType; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.TreeType; import org.opendaylight.yangtools.yang.data.util.DataSchemaContextNode; import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode; import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MapEntryModificationStrategy.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MapEntryModificationStrategy.java index c386925488..3771996584 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MapEntryModificationStrategy.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MapEntryModificationStrategy.java @@ -14,10 +14,10 @@ import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableMapEntryNodeBuilder; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; import org.opendaylight.yangtools.yang.model.api.ListSchemaNode; class MapEntryModificationStrategy extends DataNodeContainerModificationStrategy { diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MapModificationStrategy.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MapModificationStrategy.java index 373c90c455..35a81f3d70 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MapModificationStrategy.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MapModificationStrategy.java @@ -17,13 +17,13 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgum import org.opendaylight.yangtools.yang.data.api.schema.MapNode; import org.opendaylight.yangtools.yang.data.api.schema.SystemMapNode; import org.opendaylight.yangtools.yang.data.api.schema.UserMapNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableMapNodeBuilder; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableUserMapNodeBuilder; import org.opendaylight.yangtools.yang.data.impl.schema.tree.AbstractNodeContainerModificationStrategy.Invisible; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; import org.opendaylight.yangtools.yang.model.api.ListSchemaNode; final class MapModificationStrategy extends Invisible { diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MinMaxElementsValidation.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MinMaxElementsValidation.java index 62e4cf4762..bd60e629cc 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MinMaxElementsValidation.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MinMaxElementsValidation.java @@ -15,7 +15,7 @@ import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.NonNullByDefault; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodeContainer; -import org.opendaylight.yangtools.yang.data.api.schema.tree.RequiredElementCountException; +import org.opendaylight.yangtools.yang.data.tree.api.RequiredElementCountException; import org.opendaylight.yangtools.yang.model.api.DataSchemaNode; import org.opendaylight.yangtools.yang.model.api.ElementCountConstraint; import org.opendaylight.yangtools.yang.model.api.ElementCountConstraintAware; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MinMaxElementsValidationFailedException.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MinMaxElementsValidationFailedException.java index 214ecad6ee..8b095f5c53 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MinMaxElementsValidationFailedException.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MinMaxElementsValidationFailedException.java @@ -11,7 +11,7 @@ import java.util.List; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangNetconfError; import org.opendaylight.yangtools.yang.data.api.YangNetconfErrorAware; -import org.opendaylight.yangtools.yang.data.api.schema.tree.RequiredElementCountException; +import org.opendaylight.yangtools.yang.data.tree.api.RequiredElementCountException; /** * Exception thrown when unique constraints would be violated and we cannot throw a diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModificationApplyOperation.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModificationApplyOperation.java index 72426bfde9..ca35f69e86 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModificationApplyOperation.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModificationApplyOperation.java @@ -12,10 +12,10 @@ import com.google.common.base.MoreObjects.ToStringHelper; import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.api.schema.tree.StoreTreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; /** * An operation responsible for applying {@link ModifiedNode} on tree. The operation is a hierachical composite - diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModifiedNode.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModifiedNode.java index bd5543e50e..a76fc9ac36 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModifiedNode.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModifiedNode.java @@ -22,11 +22,11 @@ import org.eclipse.jdt.annotation.Nullable; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; import org.opendaylight.yangtools.yang.data.api.schema.tree.StoreTreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNodeFactory; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; /** * Node Modification Node and Tree. diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/NoopDataTreeCandidate.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/NoopDataTreeCandidate.java index 08f1c42d84..525e09e690 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/NoopDataTreeCandidate.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/NoopDataTreeCandidate.java @@ -17,9 +17,9 @@ import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; /** * Internal utility class for an empty candidate. We instantiate this class diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/RootApplyStrategy.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/RootApplyStrategy.java index 3ea9826586..b12da849e8 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/RootApplyStrategy.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/RootApplyStrategy.java @@ -48,9 +48,9 @@ import java.util.Objects; * *

* Note: This is helpful for implementing - * {@link org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification} + * {@link org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification} * which may be derived from - * {@link org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree} before + * {@link org.opendaylight.yangtools.yang.data.tree.api.DataTree} before * update of schema and user actually writes data after schema update. During * update user did not invoked any operation. */ diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/SchemaAwareApplyOperation.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/SchemaAwareApplyOperation.java index 3c28ba11aa..feeead27c1 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/SchemaAwareApplyOperation.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/SchemaAwareApplyOperation.java @@ -21,13 +21,13 @@ import org.opendaylight.yangtools.yang.data.api.schema.AnydataNode; import org.opendaylight.yangtools.yang.data.api.schema.AnyxmlNode; import org.opendaylight.yangtools.yang.data.api.schema.LeafNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ConflictingModificationAppliedException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; -import org.opendaylight.yangtools.yang.data.api.schema.tree.TreeType; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.ConflictingModificationAppliedException; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; +import org.opendaylight.yangtools.yang.data.tree.api.TreeType; import org.opendaylight.yangtools.yang.model.api.AnydataSchemaNode; import org.opendaylight.yangtools.yang.model.api.AnyxmlSchemaNode; import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode; @@ -295,7 +295,7 @@ abstract class SchemaAwareApplyOperation extends Modificat * @param modification Node modification which should be applied. * @param current Current state of data tree * @throws ConflictingModificationAppliedException If subtree was changed in conflicting way - * @throws org.opendaylight.yangtools.yang.data.api.schema.tree.IncorrectDataStructureException If subtree + * @throws org.opendaylight.yangtools.yang.data.tree.api.IncorrectDataStructureException If subtree * modification is not applicable (e.g. leaf node). */ protected abstract void checkTouchApplicable(ModificationPath path, NodeModification modification, diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/StructuralContainerModificationStrategy.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/StructuralContainerModificationStrategy.java index ab99537499..d9a1272e7c 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/StructuralContainerModificationStrategy.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/StructuralContainerModificationStrategy.java @@ -9,10 +9,10 @@ package org.opendaylight.yangtools.yang.data.impl.schema.tree; import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; import org.opendaylight.yangtools.yang.model.api.ContainerLike; /** diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UniqueValidation.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UniqueValidation.java index 158d792586..0030217a91 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UniqueValidation.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UniqueValidation.java @@ -28,8 +28,8 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent import org.opendaylight.yangtools.yang.data.api.schema.DataContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodeContainer; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.UniqueConstraintException; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.UniqueConstraintException; import org.opendaylight.yangtools.yang.model.api.DataNodeContainer; import org.opendaylight.yangtools.yang.model.api.DataSchemaNode; import org.opendaylight.yangtools.yang.model.api.ListSchemaNode; diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UniqueValidationFailedException.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UniqueValidationFailedException.java index 3a034ff311..c857d4dfd7 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UniqueValidationFailedException.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UniqueValidationFailedException.java @@ -14,7 +14,7 @@ import org.opendaylight.yangtools.yang.common.ErrorType; import org.opendaylight.yangtools.yang.data.api.ImmutableYangNetconfError; import org.opendaylight.yangtools.yang.data.api.YangNetconfError; import org.opendaylight.yangtools.yang.data.api.YangNetconfErrorAware; -import org.opendaylight.yangtools.yang.data.api.schema.tree.UniqueConstraintException; +import org.opendaylight.yangtools.yang.data.tree.api.UniqueConstraintException; /** * Exception thrown when unique constraints would be violated and we cannot throw a {@link UniqueConstraintException}. diff --git a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ValueNodeModificationStrategy.java b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ValueNodeModificationStrategy.java index 97131b78ea..b7cff62a35 100644 --- a/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ValueNodeModificationStrategy.java +++ b/data/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ValueNodeModificationStrategy.java @@ -15,11 +15,11 @@ import java.util.Optional; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.IncorrectDataStructureException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNodeFactory; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.IncorrectDataStructureException; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; import org.opendaylight.yangtools.yang.model.api.DataSchemaNode; final class ValueNodeModificationStrategy diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/YT821Test.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/YT821Test.java index 03f751d111..7f1c54b471 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/YT821Test.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/YT821Test.java @@ -18,13 +18,13 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.Augmentat import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.tree.InMemoryDataTreeFactory; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/YT891Test.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/YT891Test.java index 0e9412b535..ea1ce1b296 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/YT891Test.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/YT891Test.java @@ -16,13 +16,13 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.tree.InMemoryDataTreeFactory; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/YT892Test.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/YT892Test.java index d20e3530be..15261b4076 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/YT892Test.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/YT892Test.java @@ -17,13 +17,13 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.tree.InMemoryDataTreeFactory; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/Bug8713Test.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/Bug8713Test.java index c6d1dc706d..beedb84874 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/Bug8713Test.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/Bug8713Test.java @@ -12,15 +12,15 @@ import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; import org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefContext; import org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefValidation; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.tree.InMemoryDataTreeFactory; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/DataTreeCandidateValidatorTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/DataTreeCandidateValidatorTest.java index 747e59e0f3..b09aa41d2e 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/DataTreeCandidateValidatorTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/DataTreeCandidateValidatorTest.java @@ -29,17 +29,17 @@ import org.opendaylight.yangtools.yang.data.api.schema.LeafSetEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.LeafSetNode; import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.SystemMapNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefContext; import org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefDataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefValidation; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.tree.InMemoryDataTreeFactory; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.model.api.ListSchemaNode; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/DataTreeCandidateValidatorTest2.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/DataTreeCandidateValidatorTest2.java index f8a6af710e..fe1616aa2a 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/DataTreeCandidateValidatorTest2.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/DataTreeCandidateValidatorTest2.java @@ -20,17 +20,17 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefContext; import org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefDataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefValidation; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.tree.InMemoryDataTreeFactory; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.model.api.Module; import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/DataTreeCandidateValidatorTest3.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/DataTreeCandidateValidatorTest3.java index 957e78b817..768a2c040c 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/DataTreeCandidateValidatorTest3.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/leafref/context/DataTreeCandidateValidatorTest3.java @@ -21,17 +21,17 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefContext; import org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefDataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.leafref.LeafRefValidation; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.tree.InMemoryDataTreeFactory; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.model.api.Module; import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug2690Test.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug2690Test.java index e44f6d6ed5..272a73ad33 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug2690Test.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug2690Test.java @@ -19,14 +19,14 @@ import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.SystemMapNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeSnapshot; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeSnapshot; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; public class Bug2690Test extends AbstractTestModelTest { private DataTree inMemoryDataTree; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug3674Test.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug3674Test.java index cd9c35f577..9bb50ab513 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug3674Test.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug3674Test.java @@ -11,14 +11,14 @@ import static org.junit.Assert.assertEquals; import org.junit.Before; import org.junit.Test; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; /** * BUG-3674: issuing a delete on a non-existent entry must be preserved in diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug4295Test.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug4295Test.java index 6fca5b08fe..978d46e11a 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug4295Test.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug4295Test.java @@ -22,12 +22,12 @@ import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.SystemMapNode; import org.opendaylight.yangtools.yang.data.api.schema.builder.CollectionNodeBuilder; import org.opendaylight.yangtools.yang.data.api.schema.builder.DataContainerNodeBuilder; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils; public class Bug4295Test { diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug4454Test.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug4454Test.java index 36abd50e0e..995ec11b2d 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug4454Test.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug4454Test.java @@ -37,16 +37,16 @@ import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.SystemMapNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeSnapshot; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableLeafSetEntryNodeBuilder; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableLeafSetNodeBuilder; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableMapEntryNodeBuilder; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeSnapshot; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug5830Test.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug5830Test.java index b83340ba13..9b0703e54b 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug5830Test.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug5830Test.java @@ -23,13 +23,13 @@ import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild; import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.SystemMapNode; import org.opendaylight.yangtools.yang.data.api.schema.builder.DataContainerNodeBuilder; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; public class Bug5830Test { diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug5968MergeTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug5968MergeTest.java index 5bf570c249..4bb5c886ae 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug5968MergeTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug5968MergeTest.java @@ -23,13 +23,13 @@ import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.SystemMapNode; import org.opendaylight.yangtools.yang.data.api.schema.builder.CollectionNodeBuilder; import org.opendaylight.yangtools.yang.data.api.schema.builder.DataContainerNodeBuilder; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; public class Bug5968MergeTest { diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug5968Test.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug5968Test.java index c6d8b4021b..83beaf1beb 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug5968Test.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug5968Test.java @@ -22,13 +22,13 @@ import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.SystemMapNode; import org.opendaylight.yangtools.yang.data.api.schema.builder.DataContainerNodeBuilder; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; public class Bug5968Test { diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug8291Test.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug8291Test.java index 2199d48917..b0584717f3 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug8291Test.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/Bug8291Test.java @@ -17,14 +17,14 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.TreeType; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; +import org.opendaylight.yangtools.yang.data.tree.api.TreeType; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; public class Bug8291Test { diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/CaseAugmentTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/CaseAugmentTest.java index 77ba8bb60a..dba6499c3e 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/CaseAugmentTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/CaseAugmentTest.java @@ -19,12 +19,12 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.Augmentat import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.AugmentationNode; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; public class CaseAugmentTest { diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/CaseExclusionTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/CaseExclusionTest.java index f92572fe16..fdb881b65c 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/CaseExclusionTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/CaseExclusionTest.java @@ -18,13 +18,13 @@ import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.ChoiceNode; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; public class CaseExclusionTest { diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ConcurrentTreeModificationTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ConcurrentTreeModificationTest.java index d71bd22776..d7fae6516e 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ConcurrentTreeModificationTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ConcurrentTreeModificationTest.java @@ -21,15 +21,15 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ConflictingModificationAppliedException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeSnapshot; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder; +import org.opendaylight.yangtools.yang.data.tree.api.ConflictingModificationAppliedException; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeSnapshot; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ConfigStatementValidationTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ConfigStatementValidationTest.java index 6c099df742..276fa7ea13 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ConfigStatementValidationTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ConfigStatementValidationTest.java @@ -17,14 +17,14 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.ChoiceNode; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; // TODO: expand these tests to catch some more obscure cases public class ConfigStatementValidationTest extends AbstractTestModelTest { diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/DataTreeCandidatesTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/DataTreeCandidatesTest.java index e5f0817da9..a3bcae68e4 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/DataTreeCandidatesTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/DataTreeCandidatesTest.java @@ -19,19 +19,19 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.LeafNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidateNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidates; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModificationCursor; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModificationType; -import org.opendaylight.yangtools.yang.data.api.schema.tree.TreeType; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableLeafNodeBuilder; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModificationCursor; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; +import org.opendaylight.yangtools.yang.data.tree.api.TreeType; +import org.opendaylight.yangtools.yang.data.tree.spi.DataTreeCandidates; import org.opendaylight.yangtools.yang.model.api.SchemaContext; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/DataTreeTransactionTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/DataTreeTransactionTest.java index b2ba0afb6b..84d240730a 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/DataTreeTransactionTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/DataTreeTransactionTest.java @@ -9,10 +9,10 @@ package org.opendaylight.yangtools.yang.data.impl.schema.tree; import org.junit.Before; import org.junit.Test; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; public class DataTreeTransactionTest extends AbstractTestModelTest { private DataTree tree; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ErrorReportingTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ErrorReportingTest.java index 771cdfbf3a..383249551a 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ErrorReportingTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ErrorReportingTest.java @@ -12,13 +12,13 @@ import static org.junit.Assert.fail; import org.junit.Before; import org.junit.Test; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ConflictingModificationAppliedException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ModifiedNodeDoesNotExistException; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; +import org.opendaylight.yangtools.yang.data.tree.api.ConflictingModificationAppliedException; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; +import org.opendaylight.yangtools.yang.data.tree.api.ModifiedNodeDoesNotExistException; public class ErrorReportingTest extends AbstractTestModelTest { diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ListConstraintsValidation.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ListConstraintsValidation.java index e295f01ab3..d9564a8176 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ListConstraintsValidation.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ListConstraintsValidation.java @@ -39,17 +39,17 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.UnkeyedListEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.UnkeyedListNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeSnapshot; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableLeafSetEntryNodeBuilder; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableLeafSetNodeBuilder; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableUnkeyedListEntryNodeBuilder; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableUnkeyedListNodeBuilder; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeSnapshot; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MandatoryLeafTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MandatoryLeafTest.java index 99eb78755b..f250a37316 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MandatoryLeafTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MandatoryLeafTest.java @@ -17,13 +17,13 @@ import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.ChoiceNode; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.TreeType; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; +import org.opendaylight.yangtools.yang.data.tree.api.TreeType; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; public class MandatoryLeafTest { diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MapEntryRootTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MapEntryRootTest.java index ea3854b445..9d3284af49 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MapEntryRootTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/MapEntryRootTest.java @@ -13,9 +13,9 @@ import static org.junit.Assert.assertTrue; import org.junit.Test; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.TreeType; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.TreeType; public class MapEntryRootTest extends AbstractTestModelTest { diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModificationMetadataTreeTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModificationMetadataTreeTest.java index 5dae30e6e3..2cf2414371 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModificationMetadataTreeTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModificationMetadataTreeTest.java @@ -24,13 +24,13 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNodeFactory; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; import org.opendaylight.yangtools.yang.model.api.SchemaContext; /* diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/OrderedListTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/OrderedListTest.java index 17c0d2c92c..9817550519 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/OrderedListTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/OrderedListTest.java @@ -25,13 +25,13 @@ import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.UserMapNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.ConflictingModificationAppliedException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeSnapshot; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; +import org.opendaylight.yangtools.yang.data.tree.api.ConflictingModificationAppliedException; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeSnapshot; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/StoreTreeNodesTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/StoreTreeNodesTest.java index e2e76cf617..b986b22af2 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/StoreTreeNodesTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/StoreTreeNodesTest.java @@ -25,12 +25,12 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; import org.opendaylight.yangtools.yang.data.api.schema.tree.StoreTreeNodes; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNode; import org.opendaylight.yangtools.yang.data.spi.tree.TreeNodeFactory; import org.opendaylight.yangtools.yang.data.spi.tree.Version; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; import org.opendaylight.yangtools.yang.model.api.SchemaContext; import org.slf4j.Logger; import org.slf4j.LoggerFactory; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/StructuralApplyModificationTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/StructuralApplyModificationTest.java index 1adb18187a..60677b511b 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/StructuralApplyModificationTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/StructuralApplyModificationTest.java @@ -18,13 +18,13 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeSnapshot; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeSnapshot; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; public final class StructuralApplyModificationTest extends AbstractTestModelTest { private DataTree inMemoryDataTree; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UniqueConstraintTest.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UniqueConstraintTest.java index 75d9312ee0..d08f1fb79c 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UniqueConstraintTest.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/UniqueConstraintTest.java @@ -28,13 +28,13 @@ import org.opendaylight.yangtools.yang.data.api.YangNetconfError; import org.opendaylight.yangtools.yang.data.api.YangNetconfErrorAware; import org.opendaylight.yangtools.yang.data.api.schema.MapEntryNode; import org.opendaylight.yangtools.yang.data.api.schema.MapNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; -import org.opendaylight.yangtools.yang.data.api.schema.tree.TreeType; -import org.opendaylight.yangtools.yang.data.api.schema.tree.UniqueConstraintException; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; +import org.opendaylight.yangtools.yang.data.tree.api.TreeType; +import org.opendaylight.yangtools.yang.data.tree.api.UniqueConstraintException; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; public class UniqueConstraintTest { diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/YT1104Test.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/YT1104Test.java index 1873705d90..49f7ad65f1 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/YT1104Test.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/YT1104Test.java @@ -20,10 +20,10 @@ import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.DataContainerChild; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; public class YT1104Test { diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/YT1276Test.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/YT1276Test.java index 55223f854e..c519f274e5 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/YT1276Test.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/YT1276Test.java @@ -18,13 +18,13 @@ import org.opendaylight.yangtools.yang.common.QName; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.AugmentationIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; import org.opendaylight.yangtools.yang.data.impl.schema.Builders; import org.opendaylight.yangtools.yang.data.impl.schema.ImmutableNodes; import org.opendaylight.yangtools.yang.data.impl.schema.builder.impl.ImmutableContainerNodeBuilder; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils; diff --git a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/YT776Test.java b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/YT776Test.java index 4545aa016b..938bacf217 100644 --- a/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/YT776Test.java +++ b/data/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/YT776Test.java @@ -29,10 +29,10 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdent import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifierWithPredicates; import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode; import org.opendaylight.yangtools.yang.data.api.schema.LeafNode; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTree; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeConfiguration; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataValidationFailedException; +import org.opendaylight.yangtools.yang.data.tree.api.DataTree; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataValidationFailedException; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; public class YT776Test { diff --git a/data/yang-data-tree-api/pom.xml b/data/yang-data-tree-api/pom.xml new file mode 100644 index 0000000000..a83a1247a9 --- /dev/null +++ b/data/yang-data-tree-api/pom.xml @@ -0,0 +1,42 @@ + + + + + 4.0.0 + + org.opendaylight.yangtools + bundle-parent + 8.0.0-SNAPSHOT + ../../bundle-parent + + + yang-data-tree-api + bundle + ${project.artifactId} + ${project.artifactId} + + + + com.google.guava + guava + + + org.opendaylight.yangtools + concepts + + + org.opendaylight.yangtools + yang-data-api + + + org.opendaylight.yangtools + yang-model-api + + + diff --git a/data/yang-data-tree-api/src/main/java/module-info.java b/data/yang-data-tree-api/src/main/java/module-info.java new file mode 100644 index 0000000000..5909b010b7 --- /dev/null +++ b/data/yang-data-tree-api/src/main/java/module-info.java @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2021 PANTHEON.tech, s.r.o. and others. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0 which accompanies this distribution, + * and is available at http://www.eclipse.org/legal/epl-v10.html + */ +module org.opendaylight.yangtools.yang.data.tree.api { + exports org.opendaylight.yangtools.yang.data.tree.api; + + requires transitive com.google.common; + requires transitive org.opendaylight.yangtools.concepts; + requires transitive org.opendaylight.yangtools.yang.data.api; + requires transitive org.opendaylight.yangtools.yang.model.api; + + // Annotations + requires static transitive org.eclipse.jdt.annotation; +} diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/BackendFailedException.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/BackendFailedException.java similarity index 76% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/BackendFailedException.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/BackendFailedException.java index e68394712c..78ce8016fd 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/BackendFailedException.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/BackendFailedException.java @@ -5,13 +5,13 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import com.google.common.annotations.Beta; /** - * Exception thrown when the backed of a {@link DataTreeSnapshotCursor} - * detects an errors which prevents it from completing the requested operation. + * Exception thrown when the backend of a {@link DataTreeSnapshotCursor} detects an errors which prevents it from + * completing the requested operation. */ @Beta public class BackendFailedException extends IllegalStateException { diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/ConflictingModificationAppliedException.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/ConflictingModificationAppliedException.java similarity index 94% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/ConflictingModificationAppliedException.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/ConflictingModificationAppliedException.java index c14ff17eb5..a0675dfa27 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/ConflictingModificationAppliedException.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/ConflictingModificationAppliedException.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/CursorAwareDataTreeModification.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/CursorAwareDataTreeModification.java similarity index 96% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/CursorAwareDataTreeModification.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/CursorAwareDataTreeModification.java index 3b0b743d35..3844717313 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/CursorAwareDataTreeModification.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/CursorAwareDataTreeModification.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import com.google.common.annotations.Beta; import java.util.Optional; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/CursorAwareDataTreeSnapshot.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/CursorAwareDataTreeSnapshot.java similarity index 96% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/CursorAwareDataTreeSnapshot.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/CursorAwareDataTreeSnapshot.java index 10a6dfdefc..930ff057c2 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/CursorAwareDataTreeSnapshot.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/CursorAwareDataTreeSnapshot.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import com.google.common.annotations.Beta; import java.util.Optional; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTree.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTree.java similarity index 94% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTree.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTree.java index 62c580b8e0..921643aade 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTree.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTree.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidate.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeCandidate.java similarity index 78% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidate.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeCandidate.java index 593e3a6b70..4fddbacd6c 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidate.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeCandidate.java @@ -5,19 +5,17 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import org.eclipse.jdt.annotation.NonNullByDefault; import org.eclipse.jdt.annotation.Nullable; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; /** - * An encapsulation of a validated data tree modification. This candidate - * is ready for atomic commit to the datastore. It allows access to before- - * and after-state as it will be seen in to subsequent commit. This capture - * can be accessed for reference, but cannot be modified and the content - * is limited to nodes which were affected by the modification from which - * this instance originated. + * An encapsulation of a validated data tree modification. This candidate is ready for atomic commit to the datastore. + * It allows access to before- and after-state as it will be seen in to subsequent commit. This capture can be accessed + * for reference, but cannot be modified and the content is limited to nodes which were affected by the modification + * from which this instance originated. */ @NonNullByDefault public interface DataTreeCandidate { diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidateNode.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeCandidateNode.java similarity index 97% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidateNode.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeCandidateNode.java index ac1b48a710..0354440e20 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidateNode.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeCandidateNode.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import java.util.Collection; import java.util.Optional; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidateTip.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeCandidateTip.java similarity index 93% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidateTip.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeCandidateTip.java index 7045a9edc9..4042c29278 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidateTip.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeCandidateTip.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import com.google.common.annotations.Beta; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeConfiguration.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeConfiguration.java similarity index 95% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeConfiguration.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeConfiguration.java index cfb2928ee4..21d2bc890a 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeConfiguration.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeConfiguration.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import static java.util.Objects.requireNonNull; @@ -27,8 +27,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; * * *

- * TreeConfig can be easily extended in order to support further data tree - * configuration options, like following: + * TreeConfig can be easily extended in order to support further data tree configuration options, like following: *

    *
  • enable/disable case exclusion validation
  • *
  • enable/disable other indexes
  • @@ -36,8 +35,7 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; *
* *

- * This can be useful when strict validation is not required or useful for some - * reasons. + * This can be useful when strict validation is not required or useful for some reasons. */ @Beta public class DataTreeConfiguration implements Immutable { @@ -112,7 +110,7 @@ public class DataTreeConfiguration implements Immutable { public Builder(final TreeType treeType) { this.treeType = requireNonNull(treeType); - this.rootPath = YangInstanceIdentifier.empty(); + rootPath = YangInstanceIdentifier.empty(); } public Builder setUniqueIndexes(final boolean uniqueIndexes) { diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeFactory.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeFactory.java similarity index 92% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeFactory.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeFactory.java index 5e5fd80946..c8f6644dc9 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeFactory.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeFactory.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer; @@ -26,8 +26,7 @@ public interface DataTreeFactory { * {@link #create(DataTreeConfiguration, EffectiveModelContext)} is recommended, as it does not suffer from this * shortcoming. * - * @param treeConfig - * Tree configuration. + * @param treeConfig Tree configuration. * @return A data tree instance. * @throws NullPointerException if treeConfig is null */ @@ -38,8 +37,7 @@ public interface DataTreeFactory { * of the configuration. Mandatory nodes whose enforcement point is the root node will not be enforced even if some * are present in the SchemaContext and validation is requested in configuration. * - * @param treeConfig - * Tree configuration. + * @param treeConfig Tree configuration. * @return A data tree instance. * @throws NullPointerException if any of the arguments are null * @throws IllegalArgumentException if tree configuration does not match the SchemaContext, for example by root path @@ -50,8 +48,7 @@ public interface DataTreeFactory { /** * Create a new data tree based on specified configuration, with the specified node. * - * @param treeConfig - * Tree configuration. + * @param treeConfig Tree configuration. * @return A data tree instance. * @throws DataValidationFailedException if initial root is not valid according to the schema context * @throws NullPointerException if any of the arguments are null diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeModification.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeModification.java similarity index 65% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeModification.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeModification.java index 586648cb77..8e9e397580 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeModification.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeModification.java @@ -5,16 +5,15 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; /** - * Class encapsulation of set of modifications to a base tree. This tree is backed - * by a read-only snapshot and tracks modifications on top of that. The modification - * has the ability to rebase itself to a new snapshot. + * Class encapsulation of set of modifications to a base tree. This tree is backed by a read-only snapshot and tracks + * modifications on top of that. The modification has the ability to rebase itself to a new snapshot. */ public interface DataTreeModification extends DataTreeSnapshot { /** @@ -25,8 +24,7 @@ public interface DataTreeModification extends DataTreeSnapshot { void delete(YangInstanceIdentifier path); /** - * Merge the specified data with the currently-present data - * at specified path. + * Merge the specified data with the currently-present data at specified path. * * @param path Node path * @param data Data to be merged @@ -42,19 +40,16 @@ public interface DataTreeModification extends DataTreeSnapshot { void write(YangInstanceIdentifier path, NormalizedNode data); /** - * Finish creation of a modification, making it ready for application - * to the data tree. Any calls to this object's methods except - * {@link #applyToCursor(DataTreeModificationCursor)} will result - * in undefined behavior, possibly with an - * {@link IllegalStateException} being thrown. + * Finish creation of a modification, making it ready for application to the data tree. Any calls to this object's + * methods except {@link #applyToCursor(DataTreeModificationCursor)} will result in undefined behavior, possibly + * with an {@link IllegalStateException} being thrown. */ void ready(); /** - * Apply the contents of this modification to a cursor. This can be used - * to replicate this modification onto another one. The cursor's position - * must match the root of this modification, otherwise performing this - * operation will result in undefined behavior. + * Apply the contents of this modification to a cursor. This can be used to replicate this modification onto another + * one. The cursor's position must match the root of this modification, otherwise performing this operation will + * result in undefined behavior. * * @param cursor cursor to which this modification */ diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeModificationCursor.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeModificationCursor.java similarity index 73% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeModificationCursor.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeModificationCursor.java index b64a62d302..57440e7fe7 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeModificationCursor.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeModificationCursor.java @@ -5,16 +5,16 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import com.google.common.annotations.Beta; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; /** - * Extension to the {@link DataTreeSnapshotCursor} which allows modifying the data tree. - * An instance of this interface can be obtained from {@link CursorAwareDataTreeModification} - * and modifications made through this interface are staged in the parent modification. + * Extension to the {@link DataTreeSnapshotCursor} which allows modifying the data tree. An instance of this interface + * can be obtained from {@link CursorAwareDataTreeModification} and modifications made through this interface are staged + * in the parent modification. */ @Beta public interface DataTreeModificationCursor extends DataTreeSnapshotCursor { @@ -22,8 +22,7 @@ public interface DataTreeModificationCursor extends DataTreeSnapshotCursor { * Delete the specified child. * * @param child Child identifier - * @throws BackendFailedException when implementation-specific errors occurs - * while servicing the request. + * @throws BackendFailedException when implementation-specific errors occurs while servicing the request. */ void delete(PathArgument child); @@ -33,8 +32,7 @@ public interface DataTreeModificationCursor extends DataTreeSnapshotCursor { * * @param child Child identifier * @param data Data to be merged - * @throws BackendFailedException when implementation-specific errors occurs - * while servicing the request. + * @throws BackendFailedException when implementation-specific errors occurs while servicing the request. */ void merge(PathArgument child, NormalizedNode data); @@ -43,8 +41,7 @@ public interface DataTreeModificationCursor extends DataTreeSnapshotCursor { * * @param child Child identifier * @param data New node data - * @throws BackendFailedException when implementation-specific errors occurs - * while servicing the request. + * @throws BackendFailedException when implementation-specific errors occurs while servicing the request. */ void write(PathArgument child, NormalizedNode data); } diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeSnapshot.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeSnapshot.java similarity index 95% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeSnapshot.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeSnapshot.java index a471d777b5..2e907ea769 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeSnapshot.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeSnapshot.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import java.util.Optional; import org.eclipse.jdt.annotation.NonNull; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeSnapshotCursor.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeSnapshotCursor.java similarity index 98% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeSnapshotCursor.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeSnapshotCursor.java index 36bd4531c3..81ad61c16e 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeSnapshotCursor.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeSnapshotCursor.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import com.google.common.annotations.Beta; import java.util.Optional; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeTip.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeTip.java similarity index 97% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeTip.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeTip.java index a46563e487..1d2a1b631c 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeTip.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataTreeTip.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import com.google.common.annotations.Beta; import org.eclipse.jdt.annotation.NonNullByDefault; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataValidationFailedException.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataValidationFailedException.java similarity index 96% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataValidationFailedException.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataValidationFailedException.java index 9d931e26df..50387a385b 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataValidationFailedException.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/DataValidationFailedException.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import static java.util.Objects.requireNonNull; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/IncorrectDataStructureException.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/IncorrectDataStructureException.java similarity index 94% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/IncorrectDataStructureException.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/IncorrectDataStructureException.java index 479f63250f..7b163de6e6 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/IncorrectDataStructureException.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/IncorrectDataStructureException.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/ModificationType.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/ModificationType.java similarity index 97% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/ModificationType.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/ModificationType.java index de4be252fe..d9f35cf021 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/ModificationType.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/ModificationType.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; /** * Enumeration of all possible node modification states. These are used in data tree modification context to quickly diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/ModifiedNodeDoesNotExistException.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/ModifiedNodeDoesNotExistException.java similarity index 95% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/ModifiedNodeDoesNotExistException.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/ModifiedNodeDoesNotExistException.java index 951463e490..03e5e2b22c 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/ModifiedNodeDoesNotExistException.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/ModifiedNodeDoesNotExistException.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/ReadOnlyDataTree.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/ReadOnlyDataTree.java similarity index 94% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/ReadOnlyDataTree.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/ReadOnlyDataTree.java index afe560b836..1e8effef62 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/ReadOnlyDataTree.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/ReadOnlyDataTree.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import com.google.common.annotations.Beta; import org.eclipse.jdt.annotation.NonNullByDefault; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/RequiredElementCountException.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/RequiredElementCountException.java similarity index 98% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/RequiredElementCountException.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/RequiredElementCountException.java index bb770e4e64..f830d7d15a 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/RequiredElementCountException.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/RequiredElementCountException.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import com.google.common.annotations.Beta; import java.util.List; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/TreeType.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/TreeType.java similarity index 96% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/TreeType.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/TreeType.java index 427096ad92..e0c1f0e238 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/TreeType.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/TreeType.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import com.google.common.annotations.Beta; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/UniqueConstraintException.java b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/UniqueConstraintException.java similarity index 97% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/UniqueConstraintException.java rename to data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/UniqueConstraintException.java index bd7d9f583b..88e47fa076 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/UniqueConstraintException.java +++ b/data/yang-data-tree-api/src/main/java/org/opendaylight/yangtools/yang/data/tree/api/UniqueConstraintException.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.api; import static java.util.Objects.requireNonNull; diff --git a/data/yang-data-tree-spi/pom.xml b/data/yang-data-tree-spi/pom.xml new file mode 100644 index 0000000000..a4a576e2e7 --- /dev/null +++ b/data/yang-data-tree-spi/pom.xml @@ -0,0 +1,42 @@ + + + + + 4.0.0 + + org.opendaylight.yangtools + bundle-parent + 8.0.0-SNAPSHOT + ../../bundle-parent + + + yang-data-tree-spi + bundle + ${project.artifactId} + ${project.artifactId} + + + + com.google.guava + guava + + + org.opendaylight.yangtools + yang-common + + + org.opendaylight.yangtools + yang-data-api + + + org.opendaylight.yangtools + yang-data-tree-api + + + diff --git a/data/yang-data-tree-spi/src/main/java/module-info.java b/data/yang-data-tree-spi/src/main/java/module-info.java new file mode 100644 index 0000000000..c2942590e7 --- /dev/null +++ b/data/yang-data-tree-spi/src/main/java/module-info.java @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2021 PANTHEON.tech, s.r.o. and others. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0 which accompanies this distribution, + * and is available at http://www.eclipse.org/legal/epl-v10.html + */ +module org.opendaylight.yangtools.yang.data.tree.spi { + exports org.opendaylight.yangtools.yang.data.tree.spi; + + requires transitive com.google.common; + requires transitive org.opendaylight.yangtools.yang.data.api; + requires transitive org.opendaylight.yangtools.yang.data.tree.api; + requires org.slf4j; + + // Annotations + requires static transitive org.eclipse.jdt.annotation; +} diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/AbstractAvailableLeafCandidateNode.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/AbstractAvailableLeafCandidateNode.java similarity index 91% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/AbstractAvailableLeafCandidateNode.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/AbstractAvailableLeafCandidateNode.java index ce0245b0a3..c447e82e42 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/AbstractAvailableLeafCandidateNode.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/AbstractAvailableLeafCandidateNode.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/AbstractDataTreeCandidateNode.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/AbstractDataTreeCandidateNode.java similarity index 91% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/AbstractDataTreeCandidateNode.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/AbstractDataTreeCandidateNode.java index c49578593e..a6f4f05568 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/AbstractDataTreeCandidateNode.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/AbstractDataTreeCandidateNode.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import static java.util.Objects.requireNonNull; @@ -14,6 +14,7 @@ import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; abstract class AbstractDataTreeCandidateNode implements DataTreeCandidateNode { private final DistinctNodeContainer data; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/AbstractLeafCandidateNode.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/AbstractLeafCandidateNode.java similarity index 91% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/AbstractLeafCandidateNode.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/AbstractLeafCandidateNode.java index 4cd2b936b5..ae2484a8f0 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/AbstractLeafCandidateNode.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/AbstractLeafCandidateNode.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import static java.util.Objects.requireNonNull; @@ -15,6 +15,7 @@ import java.util.Optional; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; abstract class AbstractLeafCandidateNode implements DataTreeCandidateNode { private final NormalizedNode data; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/AbstractRecursiveCandidateNode.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/AbstractRecursiveCandidateNode.java similarity index 92% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/AbstractRecursiveCandidateNode.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/AbstractRecursiveCandidateNode.java index 5cce9ea505..2c3eb1a972 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/AbstractRecursiveCandidateNode.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/AbstractRecursiveCandidateNode.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import com.google.common.collect.Collections2; import java.util.Collection; @@ -13,6 +13,7 @@ import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; abstract class AbstractRecursiveCandidateNode extends AbstractDataTreeCandidateNode { AbstractRecursiveCandidateNode(final DistinctNodeContainer data) { diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/AbstractWriteCandidate.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/AbstractWriteCandidate.java similarity index 84% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/AbstractWriteCandidate.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/AbstractWriteCandidate.java index f82003e019..0dcede729c 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/AbstractWriteCandidate.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/AbstractWriteCandidate.java @@ -5,9 +5,10 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; abstract class AbstractWriteCandidate extends AbstractAvailableLeafCandidateNode { AbstractWriteCandidate(final NormalizedNode dataAfter) { diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidateNodes.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeCandidateNodes.java similarity index 98% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidateNodes.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeCandidateNodes.java index 6671cba32f..4071970bae 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidateNodes.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeCandidateNodes.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import static java.util.Objects.requireNonNull; @@ -23,6 +23,8 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgum import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodeContainer; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModificationCursor; @Beta public final class DataTreeCandidateNodes { diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidates.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeCandidates.java similarity index 97% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidates.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeCandidates.java index bcd8ff80b0..b2a24fcedd 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidates.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeCandidates.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import static com.google.common.base.Preconditions.checkArgument; import static java.util.Objects.requireNonNull; @@ -21,6 +21,12 @@ import org.eclipse.jdt.annotation.Nullable; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.CursorAwareDataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModificationCursor; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -208,8 +214,8 @@ public final class DataTreeCandidates { PathArgument identifier = node.getIdentifier(); ModificationType nodeModification = node.getModificationType(); Collection childNodes = node.getChildNodes(); - for (Iterator iterator = childNodes.iterator(); iterator.hasNext(); ) { - cleanUpTree(finalNode, (TerminalDataTreeCandidateNode) iterator.next()); + for (DataTreeCandidateNode childNode : childNodes) { + cleanUpTree(finalNode, (TerminalDataTreeCandidateNode) childNode); } Optional dataBefore = finalNode.getDataBefore(identifier); diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DefaultDataTreeCandidate.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/DefaultDataTreeCandidate.java similarity index 86% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DefaultDataTreeCandidate.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/DefaultDataTreeCandidate.java index 90c3a1ba70..d09c69deb3 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DefaultDataTreeCandidate.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/DefaultDataTreeCandidate.java @@ -5,12 +5,14 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import static java.util.Objects.requireNonNull; import com.google.common.base.MoreObjects; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; /** * Default utility implementation of the {@link DataTreeCandidate} contract. diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DeleteLeafCandidateNode.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/DeleteLeafCandidateNode.java similarity index 87% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DeleteLeafCandidateNode.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/DeleteLeafCandidateNode.java index f71451db51..093b87d467 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DeleteLeafCandidateNode.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/DeleteLeafCandidateNode.java @@ -5,10 +5,11 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; final class DeleteLeafCandidateNode extends AbstractLeafCandidateNode { DeleteLeafCandidateNode(final NormalizedNode data) { diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/EmptyDataTreeCandidateNode.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/EmptyDataTreeCandidateNode.java similarity index 88% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/EmptyDataTreeCandidateNode.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/EmptyDataTreeCandidateNode.java index 18ab68b206..f786080ee2 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/EmptyDataTreeCandidateNode.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/EmptyDataTreeCandidateNode.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import static java.util.Objects.requireNonNull; @@ -14,6 +14,8 @@ import java.util.Collection; import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; final class EmptyDataTreeCandidateNode implements DataTreeCandidateNode { private final PathArgument identifier; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/NormalizedNodeDataTreeCandidateNode.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/NormalizedNodeDataTreeCandidateNode.java similarity index 92% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/NormalizedNodeDataTreeCandidateNode.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/NormalizedNodeDataTreeCandidateNode.java index 67d7ff0806..7e2c1205f6 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/NormalizedNodeDataTreeCandidateNode.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/NormalizedNodeDataTreeCandidateNode.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import static java.util.Objects.requireNonNull; @@ -17,6 +17,8 @@ import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; /** * Utility implementation of {@link DataTreeCandidateNode} which acts as if diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/RecursiveDeleteCandidateNode.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/RecursiveDeleteCandidateNode.java similarity index 87% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/RecursiveDeleteCandidateNode.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/RecursiveDeleteCandidateNode.java index 96b16cf36b..ae9839e0e5 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/RecursiveDeleteCandidateNode.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/RecursiveDeleteCandidateNode.java @@ -5,12 +5,14 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; final class RecursiveDeleteCandidateNode extends AbstractRecursiveCandidateNode { RecursiveDeleteCandidateNode(final DistinctNodeContainer data) { diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/RecursiveReplaceCandidateNode.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/RecursiveReplaceCandidateNode.java similarity index 89% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/RecursiveReplaceCandidateNode.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/RecursiveReplaceCandidateNode.java index bf21f711b5..87c6d1d11b 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/RecursiveReplaceCandidateNode.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/RecursiveReplaceCandidateNode.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import static java.util.Objects.requireNonNull; @@ -14,6 +14,8 @@ import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; final class RecursiveReplaceCandidateNode extends AbstractDataTreeCandidateNode { private final DistinctNodeContainer oldData; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/RecursiveUnmodifiedCandidateNode.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/RecursiveUnmodifiedCandidateNode.java similarity index 87% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/RecursiveUnmodifiedCandidateNode.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/RecursiveUnmodifiedCandidateNode.java index eec44a5bb3..99c8a9d189 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/RecursiveUnmodifiedCandidateNode.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/RecursiveUnmodifiedCandidateNode.java @@ -5,12 +5,14 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; final class RecursiveUnmodifiedCandidateNode extends AbstractRecursiveCandidateNode { RecursiveUnmodifiedCandidateNode(final DistinctNodeContainer data) { diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/RecursiveWriteCandidateNode.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/RecursiveWriteCandidateNode.java similarity index 87% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/RecursiveWriteCandidateNode.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/RecursiveWriteCandidateNode.java index a186d06751..ad8d446203 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/RecursiveWriteCandidateNode.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/RecursiveWriteCandidateNode.java @@ -5,12 +5,14 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; final class RecursiveWriteCandidateNode extends AbstractRecursiveCandidateNode { RecursiveWriteCandidateNode(final DistinctNodeContainer data) { diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/ReplaceLeafCandidateNode.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/ReplaceLeafCandidateNode.java similarity index 93% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/ReplaceLeafCandidateNode.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/ReplaceLeafCandidateNode.java index 921bdd8623..322cee8bfe 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/ReplaceLeafCandidateNode.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/ReplaceLeafCandidateNode.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import static java.util.Objects.requireNonNull; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/TerminalDataTreeCandidateNode.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/TerminalDataTreeCandidateNode.java similarity index 96% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/TerminalDataTreeCandidateNode.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/TerminalDataTreeCandidateNode.java index f4f4802a9c..d16587cc6a 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/TerminalDataTreeCandidateNode.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/TerminalDataTreeCandidateNode.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import static java.util.Objects.requireNonNull; import static org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; @@ -17,6 +17,8 @@ import java.util.HashSet; import java.util.Optional; import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; class TerminalDataTreeCandidateNode implements DataTreeCandidateNode { private ModificationType modificationType; diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/UnmodifiedLeafCandidateNode.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/UnmodifiedLeafCandidateNode.java similarity index 86% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/UnmodifiedLeafCandidateNode.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/UnmodifiedLeafCandidateNode.java index 0f4842c7d7..7b2fb5391b 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/UnmodifiedLeafCandidateNode.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/UnmodifiedLeafCandidateNode.java @@ -5,10 +5,11 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; final class UnmodifiedLeafCandidateNode extends AbstractAvailableLeafCandidateNode { UnmodifiedLeafCandidateNode(final NormalizedNode data) { diff --git a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/WriteLeafCandidateNode.java b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/WriteLeafCandidateNode.java similarity index 91% rename from data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/WriteLeafCandidateNode.java rename to data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/WriteLeafCandidateNode.java index 5959953424..b437877b89 100644 --- a/data/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/WriteLeafCandidateNode.java +++ b/data/yang-data-tree-spi/src/main/java/org/opendaylight/yangtools/yang/data/tree/spi/WriteLeafCandidateNode.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import java.util.Optional; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; diff --git a/data/yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidateNodesTest.java b/data/yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeCandidateNodesTest.java similarity index 93% rename from data/yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidateNodesTest.java rename to data/yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeCandidateNodesTest.java index 0203ec6ebe..0c8bfcc219 100644 --- a/data/yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidateNodesTest.java +++ b/data/yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeCandidateNodesTest.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import static org.hamcrest.CoreMatchers.containsString; import static org.hamcrest.MatcherAssert.assertThat; @@ -18,14 +18,16 @@ import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import com.google.common.collect.ImmutableList; import java.util.Collection; -import java.util.Collections; +import java.util.List; import java.util.Optional; import org.junit.Test; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModificationCursor; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; public class DataTreeCandidateNodesTest { @Test @@ -76,9 +78,9 @@ public class DataTreeCandidateNodesTest { doReturn(ModificationType.SUBTREE_MODIFIED).when(mockedChildNode3).getModificationType(); final DataTreeCandidateNode mockedChildNode3ChildNode = mock(DataTreeCandidateNode.class); doReturn(ModificationType.DELETE).when(mockedChildNode3ChildNode).getModificationType(); - doReturn(Collections.singletonList(mockedChildNode3ChildNode)).when(mockedChildNode3).getChildNodes(); + doReturn(List.of(mockedChildNode3ChildNode)).when(mockedChildNode3).getChildNodes(); - final Collection childNodes = ImmutableList.of(mockedChildNode1, mockedChildNode2, + final Collection childNodes = List.of(mockedChildNode1, mockedChildNode2, mockedChildNode3); doReturn(childNodes).when(mockedDataTreeCandidateNode).getChildNodes(); @@ -133,7 +135,7 @@ public class DataTreeCandidateNodesTest { final DataTreeCandidateNode mockedChildNode1 = mock(DataTreeCandidateNode.class); doReturn(ModificationType.DELETE).when(mockedChildNode1).getModificationType(); - doReturn(Collections.singletonList(mockedChildNode1)).when(mockedDataTreeCandidateNode).getChildNodes(); + doReturn(List.of(mockedChildNode1)).when(mockedDataTreeCandidateNode).getChildNodes(); DataTreeCandidateNodes.applyRootedNodeToCursor(mockedCursor, mockedRootPath, mockedDataTreeCandidateNode); verify(mockedCursor, times(1)).enter((PathArgument) isNull()); @@ -162,7 +164,7 @@ public class DataTreeCandidateNodesTest { final DataTreeCandidateNode mockedChildNode1 = mock(DataTreeCandidateNode.class); doReturn(ModificationType.DELETE).when(mockedChildNode1).getModificationType(); - doReturn(Collections.singletonList(mockedChildNode1)).when(mockedDataTreeCandidateNode).getChildNodes(); + doReturn(List.of(mockedChildNode1)).when(mockedDataTreeCandidateNode).getChildNodes(); DataTreeCandidateNodes.applyRootToCursor(mockedCursor, mockedDataTreeCandidateNode); verify(mockedCursor, times(1)).delete(isNull()); diff --git a/data/yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidatesAggregateTest.java b/data/yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeCandidatesAggregateTest.java similarity index 87% rename from data/yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidatesAggregateTest.java rename to data/yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeCandidatesAggregateTest.java index 1bd6287c51..cd87d502ba 100644 --- a/data/yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidatesAggregateTest.java +++ b/data/yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeCandidatesAggregateTest.java @@ -5,15 +5,13 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertThrows; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; -import java.util.Arrays; -import java.util.Collections; import java.util.List; import java.util.Optional; import org.junit.Test; @@ -22,6 +20,9 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.LeafNode; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; public class DataTreeCandidatesAggregateTest { private static final YangInstanceIdentifier ROOT_PATH = YangInstanceIdentifier.of(QName.create( @@ -45,7 +46,7 @@ public class DataTreeCandidatesAggregateTest { ModificationType.UNMODIFIED); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.UNMODIFIED, aggregationResult.getRootNode().getModificationType()); assertEquals("value1", aggregationResult.getRootNode().getDataBefore().get().body()); @@ -66,7 +67,7 @@ public class DataTreeCandidatesAggregateTest { ModificationType.WRITE); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.WRITE, aggregationResult.getRootNode().getModificationType()); assertEquals("value1", aggregationResult.getRootNode().getDataBefore().get().body()); @@ -86,7 +87,7 @@ public class DataTreeCandidatesAggregateTest { ModificationType.DELETE); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.DELETE, aggregationResult.getRootNode().getModificationType()); assertEquals("value1", aggregationResult.getRootNode().getDataBefore().get().body()); @@ -104,7 +105,7 @@ public class DataTreeCandidatesAggregateTest { DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); assertThrows(IllegalArgumentException.class, - () -> DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2))); + () -> DataTreeCandidates.aggregate(List.of(candidate1, candidate2))); } @Test @@ -118,7 +119,7 @@ public class DataTreeCandidatesAggregateTest { DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); assertThrows(IllegalArgumentException.class, - () -> DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2))); + () -> DataTreeCandidates.aggregate(List.of(candidate1, candidate2))); } @Test @@ -134,7 +135,7 @@ public class DataTreeCandidatesAggregateTest { ModificationType.UNMODIFIED); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.WRITE, aggregationResult.getRootNode().getModificationType()); assertEquals("value1", aggregationResult.getRootNode().getDataBefore().get().body()); @@ -155,7 +156,7 @@ public class DataTreeCandidatesAggregateTest { ModificationType.WRITE); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.WRITE, aggregationResult.getRootNode().getModificationType()); assertEquals("value1", aggregationResult.getRootNode().getDataBefore().get().body()); @@ -174,7 +175,7 @@ public class DataTreeCandidatesAggregateTest { ModificationType.DELETE); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.UNMODIFIED, aggregationResult.getRootNode().getModificationType()); assertEquals(Optional.empty(), aggregationResult.getRootNode().getDataBefore()); @@ -194,7 +195,7 @@ public class DataTreeCandidatesAggregateTest { ModificationType.DELETE); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.DELETE, aggregationResult.getRootNode().getModificationType()); assertEquals("value1", aggregationResult.getRootNode().getDataBefore().get().body()); @@ -213,7 +214,7 @@ public class DataTreeCandidatesAggregateTest { ModificationType.UNMODIFIED); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.DELETE, aggregationResult.getRootNode().getModificationType()); assertEquals("value", aggregationResult.getRootNode().getDataBefore().get().body()); @@ -233,7 +234,7 @@ public class DataTreeCandidatesAggregateTest { ModificationType.WRITE); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.WRITE, aggregationResult.getRootNode().getModificationType()); assertEquals("value1", aggregationResult.getRootNode().getDataBefore().get().body()); @@ -253,7 +254,7 @@ public class DataTreeCandidatesAggregateTest { DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); assertThrows(IllegalArgumentException.class, - () -> DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2))); + () -> DataTreeCandidates.aggregate(List.of(candidate1, candidate2))); } @Test @@ -269,7 +270,7 @@ public class DataTreeCandidatesAggregateTest { DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); assertThrows(IllegalArgumentException.class, - () -> DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2))); + () -> DataTreeCandidates.aggregate(List.of(candidate1, candidate2))); } @Test @@ -285,7 +286,7 @@ public class DataTreeCandidatesAggregateTest { DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); assertThrows(IllegalArgumentException.class, - () -> DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2))); + () -> DataTreeCandidates.aggregate(List.of(candidate1, candidate2))); } @Test @@ -297,17 +298,16 @@ public class DataTreeCandidatesAggregateTest { ModificationType.UNMODIFIED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode, childNode, ModificationType.UNMODIFIED); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode, parentNode, ModificationType.UNMODIFIED); - TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode, childNode, - ModificationType.UNMODIFIED); - setChildNodes(node2, Collections.singletonList(child2)); + TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode, childNode, ModificationType.UNMODIFIED); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.UNMODIFIED, aggregationResult.getRootNode().getModificationType()); } @@ -321,17 +321,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.UNMODIFIED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode, childNode, ModificationType.UNMODIFIED); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode, null, ModificationType.DELETE); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode, null, ModificationType.DELETE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.DELETE, aggregationResult.getRootNode().getModificationType()); } @@ -347,17 +347,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.UNMODIFIED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, childNode1, ModificationType.UNMODIFIED); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode1, parentNode2, ModificationType.WRITE); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode1, childNode2, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.WRITE, aggregationResult.getRootNode().getModificationType()); } @@ -371,18 +371,18 @@ public class DataTreeCandidatesAggregateTest { ModificationType.UNMODIFIED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(null, null, ModificationType.UNMODIFIED); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode, parentNode, ModificationType.SUBTREE_MODIFIED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(null, childNode, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); assertThrows(IllegalArgumentException.class, - () -> DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2))); + () -> DataTreeCandidates.aggregate(List.of(candidate1, candidate2))); } //FIXME @@ -397,17 +397,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.UNMODIFIED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, childNode1, ModificationType.UNMODIFIED); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode1, parentNode2, ModificationType.SUBTREE_MODIFIED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode1, childNode2, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.SUBTREE_MODIFIED, aggregationResult.getRootNode().getModificationType()); } @@ -423,18 +423,18 @@ public class DataTreeCandidatesAggregateTest { ModificationType.UNMODIFIED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, childNode1, ModificationType.UNMODIFIED); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode1, parentNode2, ModificationType.APPEARED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode1, childNode2, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); assertThrows(IllegalArgumentException.class, - () -> DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2))); + () -> DataTreeCandidates.aggregate(List.of(candidate1, candidate2))); } //FIXME @@ -447,17 +447,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.UNMODIFIED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(null, null, ModificationType.UNMODIFIED); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode, parentNode, ModificationType.APPEARED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(null, childNode, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.APPEARED, aggregationResult.getRootNode().getModificationType()); } @@ -471,18 +471,18 @@ public class DataTreeCandidatesAggregateTest { ModificationType.UNMODIFIED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(null, null, ModificationType.UNMODIFIED); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode, parentNode, ModificationType.DISAPPEARED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(null, childNode, ModificationType.DELETE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); assertThrows(IllegalArgumentException.class, - () -> DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2))); + () -> DataTreeCandidates.aggregate(List.of(candidate1, candidate2))); } @Test @@ -494,17 +494,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.UNMODIFIED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, childNode1, ModificationType.UNMODIFIED); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode1, null, ModificationType.DISAPPEARED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode1, null, ModificationType.DELETE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.DISAPPEARED, aggregationResult.getRootNode().getModificationType()); } @@ -518,17 +518,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.DELETE); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode, null, ModificationType.DELETE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(null, null, ModificationType.UNMODIFIED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(null, null, ModificationType.UNMODIFIED); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.DELETE, aggregationResult.getRootNode().getModificationType()); } @@ -544,17 +544,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.DELETE); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, null, ModificationType.DELETE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(null, parentNode2, ModificationType.WRITE); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(null, childNode2, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.WRITE, aggregationResult.getRootNode().getModificationType()); } @@ -570,17 +570,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.DELETE); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, null, ModificationType.DELETE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(null, parentNode2, ModificationType.APPEARED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(null, childNode2, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.WRITE, aggregationResult.getRootNode().getModificationType()); } @@ -594,17 +594,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.WRITE); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(null, childNode, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode, parentNode, ModificationType.UNMODIFIED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode, childNode, ModificationType.UNMODIFIED); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.WRITE, aggregationResult.getRootNode().getModificationType()); } @@ -618,17 +618,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.WRITE); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(null, childNode, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode, null, ModificationType.DELETE); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode, null, ModificationType.DELETE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.UNMODIFIED, aggregationResult.getRootNode().getModificationType()); } @@ -644,17 +644,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.WRITE); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, childNode2, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode2, null, ModificationType.DELETE); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode2, null, ModificationType.DELETE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.DELETE, aggregationResult.getRootNode().getModificationType()); } @@ -670,17 +670,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.WRITE); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(null, childNode1, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode1, parentNode2, ModificationType.WRITE); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode1, childNode2, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.WRITE, aggregationResult.getRootNode().getModificationType()); } @@ -698,17 +698,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.WRITE); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode, childNode1, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode1, parentNode2, ModificationType.SUBTREE_MODIFIED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode1, childNode2, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.WRITE, aggregationResult.getRootNode().getModificationType()); } @@ -725,18 +725,18 @@ public class DataTreeCandidatesAggregateTest { ModificationType.WRITE); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, childNode2, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode2, parentNode2, ModificationType.APPEARED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode2, childNode3, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); assertThrows(IllegalArgumentException.class, - () -> DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2))); + () -> DataTreeCandidates.aggregate(List.of(candidate1, candidate2))); } @Test @@ -748,17 +748,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.WRITE); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(null, childNode, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode, null, ModificationType.DISAPPEARED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode, null, ModificationType.DELETE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.UNMODIFIED, aggregationResult.getRootNode().getModificationType()); } @@ -774,17 +774,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.WRITE); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, childNode2, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode2, null, ModificationType.DISAPPEARED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode2, null, ModificationType.DELETE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.DISAPPEARED, aggregationResult.getRootNode().getModificationType()); } @@ -800,17 +800,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.SUBTREE_MODIFIED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, childNode2, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode2, parentNode2, ModificationType.UNMODIFIED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode2, childNode2, ModificationType.UNMODIFIED); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.SUBTREE_MODIFIED, aggregationResult.getRootNode().getModificationType()); } @@ -826,17 +826,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.SUBTREE_MODIFIED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, childNode2, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode2, null, ModificationType.DELETE); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode2, null, ModificationType.DELETE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.DELETE, aggregationResult.getRootNode().getModificationType()); } @@ -853,17 +853,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.SUBTREE_MODIFIED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode, childNode1, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode1, parentNode2, ModificationType.WRITE); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode1, childNode2, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.WRITE, aggregationResult.getRootNode().getModificationType()); } @@ -879,17 +879,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.SUBTREE_MODIFIED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode, childNode1, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode1, parentNode1, ModificationType.SUBTREE_MODIFIED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode1, childNode2, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.SUBTREE_MODIFIED, aggregationResult.getRootNode().getModificationType()); } @@ -906,18 +906,18 @@ public class DataTreeCandidatesAggregateTest { ModificationType.SUBTREE_MODIFIED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode, childNode1, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(null, parentNode2, ModificationType.APPEARED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(null, childNode2, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); assertThrows(IllegalArgumentException.class, - () -> DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2))); + () -> DataTreeCandidates.aggregate(List.of(candidate1, candidate2))); } @Test @@ -930,17 +930,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.SUBTREE_MODIFIED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode, childNode1, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode1, null, ModificationType.DISAPPEARED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode1, null, ModificationType.DELETE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.DISAPPEARED, aggregationResult.getRootNode().getModificationType()); } @@ -954,17 +954,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.APPEARED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(null, childNode1, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode1, parentNode1, ModificationType.UNMODIFIED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode1, childNode1, ModificationType.UNMODIFIED); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.APPEARED, aggregationResult.getRootNode().getModificationType()); } @@ -978,17 +978,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.APPEARED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(null, childNode1, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode1, null, ModificationType.DELETE); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode1, null, ModificationType.DELETE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.UNMODIFIED, aggregationResult.getRootNode().getModificationType()); } @@ -1004,17 +1004,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.APPEARED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(null, childNode1, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode1, parentNode2, ModificationType.WRITE); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode1, childNode2, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.WRITE, aggregationResult.getRootNode().getModificationType()); } @@ -1029,17 +1029,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.APPEARED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(null, childNode1, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode1, parentNode1, ModificationType.SUBTREE_MODIFIED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode1, childNode2, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.APPEARED, aggregationResult.getRootNode().getModificationType()); } @@ -1053,18 +1053,18 @@ public class DataTreeCandidatesAggregateTest { ModificationType.APPEARED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(null, childNode1, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(null, parentNode1, ModificationType.APPEARED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(null, childNode1, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); assertThrows(IllegalArgumentException.class, - () -> DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2))); + () -> DataTreeCandidates.aggregate(List.of(candidate1, candidate2))); } @Test @@ -1076,17 +1076,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.APPEARED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(null, childNode1, ModificationType.WRITE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(parentNode1, null, ModificationType.DISAPPEARED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(childNode1, null, ModificationType.DELETE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.UNMODIFIED, aggregationResult.getRootNode().getModificationType()); } @@ -1100,17 +1100,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.DISAPPEARED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, null, ModificationType.DELETE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(null, null, ModificationType.UNMODIFIED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(null, null, ModificationType.UNMODIFIED); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.DISAPPEARED, aggregationResult.getRootNode().getModificationType()); } @@ -1124,18 +1124,18 @@ public class DataTreeCandidatesAggregateTest { ModificationType.DISAPPEARED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, null, ModificationType.DELETE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(null, null, ModificationType.DELETE); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(null, null, ModificationType.DELETE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); assertThrows(IllegalArgumentException.class, - () -> DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2))); + () -> DataTreeCandidates.aggregate(List.of(candidate1, candidate2))); } @Test @@ -1149,17 +1149,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.DISAPPEARED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, null, ModificationType.DELETE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(null, parentNode2, ModificationType.WRITE); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(null, childNode2, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.WRITE, aggregationResult.getRootNode().getModificationType()); } @@ -1174,18 +1174,18 @@ public class DataTreeCandidatesAggregateTest { ModificationType.DISAPPEARED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, null, ModificationType.DELETE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(null, null, ModificationType.SUBTREE_MODIFIED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(null, childNode2, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); assertThrows(IllegalArgumentException.class, - () -> DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2))); + () -> DataTreeCandidates.aggregate(List.of(candidate1, candidate2))); } @Test @@ -1199,17 +1199,17 @@ public class DataTreeCandidatesAggregateTest { ModificationType.DISAPPEARED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, null, ModificationType.DELETE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(null, parentNode2, ModificationType.APPEARED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(null, childNode2, ModificationType.WRITE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); - DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2)); + DataTreeCandidate aggregationResult = DataTreeCandidates.aggregate(List.of(candidate1, candidate2)); assertEquals(ModificationType.SUBTREE_MODIFIED, aggregationResult.getRootNode().getModificationType()); } @@ -1223,18 +1223,18 @@ public class DataTreeCandidatesAggregateTest { ModificationType.DISAPPEARED); TerminalDataTreeCandidateNode child1 = dataTreeCandidateNode(childNode1, null, ModificationType.DELETE); - setChildNodes(node1, Collections.singletonList(child1)); + setChildNodes(node1, List.of(child1)); DataTreeCandidate candidate1 = new DefaultDataTreeCandidate(ROOT_PATH, node1); TerminalDataTreeCandidateNode node2 = dataTreeCandidateNode(null, null, ModificationType.DISAPPEARED); TerminalDataTreeCandidateNode child2 = dataTreeCandidateNode(null, null, ModificationType.DELETE); - setChildNodes(node2, Collections.singletonList(child2)); + setChildNodes(node2, List.of(child2)); DataTreeCandidate candidate2 = new DefaultDataTreeCandidate(ROOT_PATH, node2); assertThrows(IllegalArgumentException.class, - () -> DataTreeCandidates.aggregate(Arrays.asList(candidate1, candidate2))); + () -> DataTreeCandidates.aggregate(List.of(candidate1, candidate2))); } private static LeafNode normalizedNode(final String value) { diff --git a/data/yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidatesTest.java b/data/yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeCandidatesTest.java similarity index 93% rename from data/yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidatesTest.java rename to data/yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeCandidatesTest.java index ec6bab5a59..561004f72c 100644 --- a/data/yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeCandidatesTest.java +++ b/data/yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeCandidatesTest.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import static org.hamcrest.CoreMatchers.containsString; import static org.hamcrest.MatcherAssert.assertThat; @@ -20,14 +20,18 @@ import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; -import com.google.common.collect.ImmutableList; -import java.util.Collection; -import java.util.Collections; +import java.util.List; import java.util.Optional; import org.junit.Test; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.CursorAwareDataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidate; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModificationCursor; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; public class DataTreeCandidatesTest { @@ -177,10 +181,9 @@ public class DataTreeCandidatesTest { final PathArgument mockedPathArgument31 = mock(PathArgument.class); doReturn(mockedPathArgument3).when(mockedChildNode3).getIdentifier(); doReturn(mockedPathArgument31).when(mockedChildNode3ChildNode).getIdentifier(); - doReturn(Collections.singletonList(mockedChildNode3ChildNode)).when(mockedChildNode3).getChildNodes(); + doReturn(List.of(mockedChildNode3ChildNode)).when(mockedChildNode3).getChildNodes(); - final Collection childNodes = ImmutableList.of(mockedChildNode1, mockedChildNode2, - mockedChildNode3); + final List childNodes = List.of(mockedChildNode1, mockedChildNode2, mockedChildNode3); doReturn(childNodes).when(mockedDataTreeCandidateNode).getChildNodes(); DataTreeCandidates.applyToModification(mockedModification, mockedDataTreeCandidate); diff --git a/data/yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeConfigurationTest.java b/data/yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeConfigurationTest.java similarity index 91% rename from data/yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeConfigurationTest.java rename to data/yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeConfigurationTest.java index b3688baadf..3278b418f0 100644 --- a/data/yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree/DataTreeConfigurationTest.java +++ b/data/yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi/DataTreeConfigurationTest.java @@ -5,17 +5,17 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ - -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import org.junit.Test; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeConfiguration; +import org.opendaylight.yangtools.yang.data.tree.api.TreeType; public class DataTreeConfigurationTest { - @Test public void testDataTreeConfiguration() { DataTreeConfiguration.Builder builder = new DataTreeConfiguration.Builder(TreeType.CONFIGURATION); diff --git a/data/yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree/NormalizedNodeDataTreeCandidateNodeTest.java b/data/yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi/NormalizedNodeDataTreeCandidateNodeTest.java similarity index 94% rename from data/yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree/NormalizedNodeDataTreeCandidateNodeTest.java rename to data/yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi/NormalizedNodeDataTreeCandidateNodeTest.java index 5c535237d2..d043545fc8 100644 --- a/data/yang-data-api/src/test/java/org/opendaylight/yangtools/yang/data/api/schema/tree/NormalizedNodeDataTreeCandidateNodeTest.java +++ b/data/yang-data-tree-spi/src/test/java/org/opendaylight/yangtools/yang/data/tree/spi/NormalizedNodeDataTreeCandidateNodeTest.java @@ -5,7 +5,7 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ -package org.opendaylight.yangtools.yang.data.api.schema.tree; +package org.opendaylight.yangtools.yang.data.tree.spi; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -22,9 +22,10 @@ import org.junit.Test; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; import org.opendaylight.yangtools.yang.data.api.schema.DistinctNodeContainer; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeCandidateNode; +import org.opendaylight.yangtools.yang.data.tree.api.ModificationType; public class NormalizedNodeDataTreeCandidateNodeTest { - @Test public void testNormalizedNodeDataTreeCandidateNode() { final NormalizedNode mockedNormalizedNode = mock(NormalizedNode.class); diff --git a/docs/pom.xml b/docs/pom.xml index a9d973954c..3c268937fa 100644 --- a/docs/pom.xml +++ b/docs/pom.xml @@ -54,6 +54,14 @@ org.opendaylight.yangtools yang-data-transform + + org.opendaylight.yangtools + yang-data-tree-api + + + org.opendaylight.yangtools + yang-data-tree-spi + org.opendaylight.yangtools yang-data-codec-binfmt diff --git a/features/odl-yangtools-data-api/pom.xml b/features/odl-yangtools-data-api/pom.xml index e014f19487..27752a86ec 100644 --- a/features/odl-yangtools-data-api/pom.xml +++ b/features/odl-yangtools-data-api/pom.xml @@ -50,6 +50,14 @@ org.opendaylight.yangtools yang-data-spi + + org.opendaylight.yangtools + yang-data-tree-api + + + org.opendaylight.yangtools + yang-data-tree-spi + org.opendaylight.yangtools yang-data-util -- 2.36.6