X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fcds-access-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Faccess%2Fconcepts%2FClientIdentifier.java;h=94cc4256dd6ecb038d8959a19708f3db9cca329c;hp=e97626b7ebcb607d1780795d1c70fd4da41cc411;hb=e99739f7ee64c3281569a70d8795dea672979e3d;hpb=f176c27a04a39be8d4a823254c8b0e924598262e diff --git a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/concepts/ClientIdentifier.java b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/concepts/ClientIdentifier.java index e97626b7eb..94cc4256dd 100644 --- a/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/concepts/ClientIdentifier.java +++ b/opendaylight/md-sal/cds-access-api/src/main/java/org/opendaylight/controller/cluster/access/concepts/ClientIdentifier.java @@ -11,12 +11,15 @@ import static java.util.Objects.requireNonNull; import com.google.common.annotations.Beta; import com.google.common.base.MoreObjects; +import com.google.common.primitives.UnsignedLong; import java.io.DataInput; import java.io.DataOutput; import java.io.Externalizable; import java.io.IOException; import java.io.ObjectInput; import java.io.ObjectOutput; +import org.eclipse.jdt.annotation.NonNull; +import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.cds.types.rev191024.ClientGeneration; import org.opendaylight.yangtools.concepts.WritableIdentifier; import org.opendaylight.yangtools.concepts.WritableObjects; @@ -63,7 +66,8 @@ public final class ClientIdentifier implements WritableIdentifier { } private static final long serialVersionUID = 1L; - private final FrontendIdentifier frontendId; + + private final @NonNull FrontendIdentifier frontendId; private final long generation; ClientIdentifier(final FrontendIdentifier frontendId, final long generation) { @@ -71,12 +75,12 @@ public final class ClientIdentifier implements WritableIdentifier { this.generation = generation; } - public static ClientIdentifier create(final FrontendIdentifier frontendId, + public static @NonNull ClientIdentifier create(final FrontendIdentifier frontendId, final long generation) { return new ClientIdentifier(frontendId, generation); } - public static ClientIdentifier readFrom(final DataInput in) throws IOException { + public static @NonNull ClientIdentifier readFrom(final DataInput in) throws IOException { final FrontendIdentifier frontendId = FrontendIdentifier.readFrom(in); return new ClientIdentifier(frontendId, WritableObjects.readLong(in)); } @@ -87,7 +91,7 @@ public final class ClientIdentifier implements WritableIdentifier { WritableObjects.writeLong(out, generation); } - public FrontendIdentifier getFrontendId() { + public @NonNull FrontendIdentifier getFrontendId() { return frontendId; } @@ -95,6 +99,10 @@ public final class ClientIdentifier implements WritableIdentifier { return generation; } + public @NonNull ClientGeneration getYangGeneration() { + return new ClientGeneration(UnsignedLong.fromLongBits(generation).bigIntegerValue()); + } + @Override public int hashCode() { return frontendId.hashCode() * 31 + Long.hashCode(generation);