X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2FShardDataTree.java;h=17c3cd82c35e73d0e7ed049b27d4eb25fa52d608;hb=refs%2Fchanges%2F14%2F39014%2F7;hp=ad5aab345395c0d655a48c3fd59aeeab68db9669;hpb=a46305fbc6bb7ec6883c21298d356a5e4fbbb015;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTree.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTree.java index ad5aab3453..17c3cd82c3 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTree.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTree.java @@ -19,6 +19,7 @@ import org.opendaylight.controller.md.sal.common.api.data.AsyncDataBroker.DataCh import org.opendaylight.controller.md.sal.common.api.data.AsyncDataChangeListener; import org.opendaylight.controller.md.sal.dom.api.DOMDataTreeChangeListener; import org.opendaylight.controller.md.sal.dom.store.impl.DataChangeListenerRegistration; +import org.opendaylight.yangtools.concepts.Identifier; import org.opendaylight.yangtools.concepts.ListenerRegistration; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; @@ -45,7 +46,6 @@ import org.slf4j.LoggerFactory; @NotThreadSafe public class ShardDataTree extends ShardDataTreeTransactionParent { private static final Logger LOG = LoggerFactory.getLogger(ShardDataTree.class); - private static final YangInstanceIdentifier ROOT_PATH = YangInstanceIdentifier.builder().build(); private final Map transactionChains = new HashMap<>(); private final ShardDataTreeChangeListenerPublisher treeChangeListenerPublisher; @@ -163,9 +163,9 @@ public class ShardDataTree extends ShardDataTreeTransactionParent { } private Optional readCurrentData() { - final Optional> currentState = dataTree.takeSnapshot().readNode(ROOT_PATH); + final Optional> currentState = dataTree.takeSnapshot().readNode(YangInstanceIdentifier.EMPTY); return currentState.isPresent() ? Optional.of(DataTreeCandidates.fromNormalizedNode( - ROOT_PATH, currentState.get())) : Optional.absent(); + YangInstanceIdentifier.EMPTY, currentState.get())) : Optional.absent(); } public Entry, Optional> registerTreeChangeListener( @@ -176,7 +176,7 @@ public class ShardDataTree extends ShardDataTreeTransactionParent { return new SimpleEntry<>(reg, readCurrentData()); } - void applyForeignCandidate(final String identifier, final DataTreeCandidate foreign) throws DataValidationFailedException { + void applyForeignCandidate(final Identifier identifier, final DataTreeCandidate foreign) throws DataValidationFailedException { LOG.debug("{}: Applying foreign transaction {}", logContext, identifier); final DataTreeModification mod = dataTree.takeSnapshot().newModification(); @@ -214,6 +214,7 @@ public class ShardDataTree extends ShardDataTreeTransactionParent { return dataTree.takeSnapshot().newModification(); } + // FIXME: This should be removed, it violates encapsulation public DataTreeCandidate commit(DataTreeModification modification) throws DataValidationFailedException { modification.ready(); dataTree.validate(modification);