Bug 1258: Implement DataTree partial indexing 96/9696/5
authorLukas Sedlak <lsedlak@cisco.com>
Tue, 5 Aug 2014 14:05:48 +0000 (16:05 +0200)
committerLukas Sedlak <lsedlak@cisco.com>
Tue, 26 Aug 2014 14:34:25 +0000 (16:34 +0200)
commita1b4e447282d051f3347fb3e1b27e318311ff02c
treef3ca5f5dd805f2138c4b921b264c2502daf2673a
parent4aa42c049f6a0f1cc7442ef612006e3790d3eeb5
Bug 1258: Implement DataTree partial indexing

Now the TreeNode elements are instantiated lazily per applyWrite/applyMerge/applySubtreeChange operations.
Implemented createTreeNode in TreeNodeFactory to create non recursively single node instance in TreeNode
Renamed create to createTreeNodeRecursively.

Added benchmarks project directly into the root of yangtools project.
Benchmarks project contains benchmark for testing performance of InMemoryDataTree implementation.
Tool used for benchmarks is JHM.

Change-Id: I70c9745fc9ed8751c643d9bd3e9d58be10aa4a0e
Signed-off-by: Lukas Sedlak <lsedlak@cisco.com>
13 files changed:
benchmarks/pom.xml [new file with mode: 0644]
benchmarks/src/main/java/org/opendaylight/yangtools/yang/data/impl/tree/BenchmarkModel.java [new file with mode: 0644]
benchmarks/src/main/java/org/opendaylight/yangtools/yang/data/impl/tree/InMemoryDataTreeBenchmark.java [new file with mode: 0644]
benchmarks/src/main/resources/odl-datastore-test.yang [new file with mode: 0644]
pom.xml
yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/spi/ContainerNode.java
yang/yang-data-api/src/main/java/org/opendaylight/yangtools/yang/data/api/schema/tree/spi/TreeNodeFactory.java
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/InMemoryDataTreeFactory.java
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/NormalizedNodeContainerModificationStrategy.java
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/SchemaAwareApplyOperation.java
yang/yang-data-impl/src/main/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ValueNodeModificationStrategy.java
yang/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/ModificationMetadataTreeTest.java
yang/yang-data-impl/src/test/java/org/opendaylight/yangtools/yang/data/impl/schema/tree/TreeNodeUtilsTest.java