Repository: incubator-ratis Updated Branches: refs/heads/master ce88606a1 -> 1bc5d2a82
RATIS-292. Provide a UUID based constructor for RaftGroupID and ClientID. Contributed by Mukul Kumar Singh. Project: http://git-wip-us.apache.org/repos/asf/incubator-ratis/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ratis/commit/1bc5d2a8 Tree: http://git-wip-us.apache.org/repos/asf/incubator-ratis/tree/1bc5d2a8 Diff: http://git-wip-us.apache.org/repos/asf/incubator-ratis/diff/1bc5d2a8 Branch: refs/heads/master Commit: 1bc5d2a8276d849857f8bfcd84e39d33e1e75670 Parents: ce88606 Author: Mukul Kumar Singh <[email protected]> Authored: Tue Aug 7 00:35:12 2018 +0530 Committer: Mukul Kumar Singh <[email protected]> Committed: Tue Aug 7 00:35:12 2018 +0530 ---------------------------------------------------------------------- .../src/main/java/org/apache/ratis/protocol/ClientId.java | 6 +++++- .../src/main/java/org/apache/ratis/protocol/RaftGroupId.java | 6 +++++- .../src/main/java/org/apache/ratis/protocol/RaftId.java | 4 ++++ 3 files changed, 14 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ratis/blob/1bc5d2a8/ratis-common/src/main/java/org/apache/ratis/protocol/ClientId.java ---------------------------------------------------------------------- diff --git a/ratis-common/src/main/java/org/apache/ratis/protocol/ClientId.java b/ratis-common/src/main/java/org/apache/ratis/protocol/ClientId.java index d719884..f6894df 100644 --- a/ratis-common/src/main/java/org/apache/ratis/protocol/ClientId.java +++ b/ratis-common/src/main/java/org/apache/ratis/protocol/ClientId.java @@ -25,7 +25,7 @@ import java.util.UUID; * Id of Raft client. Should be globally unique so that raft peers can use it * to correctly identify retry requests from the same client. */ -public class ClientId extends RaftId { +public final class ClientId extends RaftId { public static ClientId randomId() { return new ClientId(UUID.randomUUID()); @@ -35,6 +35,10 @@ public class ClientId extends RaftId { return new ClientId(data); } + public static ClientId valueOf(UUID uuid) { + return new ClientId(uuid); + } + private ClientId(ByteString data) { super(data); } http://git-wip-us.apache.org/repos/asf/incubator-ratis/blob/1bc5d2a8/ratis-common/src/main/java/org/apache/ratis/protocol/RaftGroupId.java ---------------------------------------------------------------------- diff --git a/ratis-common/src/main/java/org/apache/ratis/protocol/RaftGroupId.java b/ratis-common/src/main/java/org/apache/ratis/protocol/RaftGroupId.java index e873ab8..d6c2e83 100644 --- a/ratis-common/src/main/java/org/apache/ratis/protocol/RaftGroupId.java +++ b/ratis-common/src/main/java/org/apache/ratis/protocol/RaftGroupId.java @@ -21,7 +21,7 @@ import org.apache.ratis.shaded.com.google.protobuf.ByteString; import java.util.UUID; -public class RaftGroupId extends RaftId { +public final class RaftGroupId extends RaftId { private static final RaftGroupId EMPTY_GROUP_ID = new RaftGroupId(new UUID(0L, 0L)); public static RaftGroupId emptyGroupId() { @@ -32,6 +32,10 @@ public class RaftGroupId extends RaftId { return new RaftGroupId(UUID.randomUUID()); } + public static RaftGroupId valueOf(UUID uuid) { + return new RaftGroupId(uuid); + } + public static RaftGroupId valueOf(ByteString data) { return new RaftGroupId(data); } http://git-wip-us.apache.org/repos/asf/incubator-ratis/blob/1bc5d2a8/ratis-common/src/main/java/org/apache/ratis/protocol/RaftId.java ---------------------------------------------------------------------- diff --git a/ratis-common/src/main/java/org/apache/ratis/protocol/RaftId.java b/ratis-common/src/main/java/org/apache/ratis/protocol/RaftId.java index 4b45765..933776e 100644 --- a/ratis-common/src/main/java/org/apache/ratis/protocol/RaftId.java +++ b/ratis-common/src/main/java/org/apache/ratis/protocol/RaftId.java @@ -95,4 +95,8 @@ public abstract class RaftId { public int hashCode() { return uuid.hashCode(); } + + public UUID getUuid() { + return uuid; + } }
