X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-binding-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmd%2Fsal%2Fbinding%2Fapi%2FDataTreeIdentifier.java;h=94e1f8bfcb223329507de23cbfb05c48bbbf2204;hp=428957e988869d1b0641c42fa21bdc739b767993;hb=b4bf55727093657662d8c16a50fa85f87978a586;hpb=5c008222efa5c0af49cf8a52881a6299b1e249dc diff --git a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/DataTreeIdentifier.java b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/DataTreeIdentifier.java index 428957e988..94e1f8bfcb 100644 --- a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/DataTreeIdentifier.java +++ b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/DataTreeIdentifier.java @@ -7,26 +7,30 @@ */ package org.opendaylight.controller.md.sal.binding.api; -import com.google.common.base.Preconditions; +import static java.util.Objects.requireNonNull; + import java.io.Serializable; -import javax.annotation.Nonnull; +import org.eclipse.jdt.annotation.NonNull; import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; import org.opendaylight.yangtools.concepts.Immutable; import org.opendaylight.yangtools.concepts.Path; +import org.opendaylight.yangtools.yang.binding.DataObject; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; /** * A unique identifier for a particular subtree. It is composed of the logical * data store type and the instance identifier of the root node. */ -public final class DataTreeIdentifier implements Immutable, Path, Serializable { +public final class DataTreeIdentifier implements Immutable, + Path>, Serializable { private static final long serialVersionUID = 1L; - private final InstanceIdentifier rootIdentifier; - private final LogicalDatastoreType datastoreType; - public DataTreeIdentifier(final LogicalDatastoreType datastoreType, final InstanceIdentifier rootIdentifier) { - this.datastoreType = Preconditions.checkNotNull(datastoreType); - this.rootIdentifier = Preconditions.checkNotNull(rootIdentifier); + private final @NonNull InstanceIdentifier rootIdentifier; + private final @NonNull LogicalDatastoreType datastoreType; + + public DataTreeIdentifier(final LogicalDatastoreType datastoreType, final InstanceIdentifier rootIdentifier) { + this.datastoreType = requireNonNull(datastoreType); + this.rootIdentifier = requireNonNull(rootIdentifier); } /** @@ -34,21 +38,21 @@ public final class DataTreeIdentifier implements Immutable, Path getRootIdentifier() { + public @NonNull InstanceIdentifier getRootIdentifier() { return rootIdentifier; } @Override - public boolean contains(final DataTreeIdentifier other) { + public boolean contains(final DataTreeIdentifier other) { return datastoreType == other.datastoreType && rootIdentifier.contains(other.rootIdentifier); } @@ -69,10 +73,16 @@ public final class DataTreeIdentifier implements Immutable, Path other = (DataTreeIdentifier) obj; if (datastoreType != other.datastoreType) { return false; } return rootIdentifier.equals(other.rootIdentifier); } -} \ No newline at end of file + + @Override + public String toString() { + return getClass().getSimpleName() + "{datastoreType = " + datastoreType + ", rootIdentifier = " + + rootIdentifier + "}"; + } +}