Return-Path: X-Original-To: apmail-helix-commits-archive@minotaur.apache.org Delivered-To: apmail-helix-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 6FF2F1050D for ; Mon, 22 Jul 2013 22:41:51 +0000 (UTC) Received: (qmail 69938 invoked by uid 500); 22 Jul 2013 22:41:51 -0000 Delivered-To: apmail-helix-commits-archive@helix.apache.org Received: (qmail 69905 invoked by uid 500); 22 Jul 2013 22:41:51 -0000 Mailing-List: contact commits-help@helix.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@helix.incubator.apache.org Delivered-To: mailing list commits@helix.incubator.apache.org Received: (qmail 69898 invoked by uid 99); 22 Jul 2013 22:41:51 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 22 Jul 2013 22:41:51 +0000 X-ASF-Spam-Status: No, hits=-2001.5 required=5.0 tests=ALL_TRUSTED,RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO mail.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with SMTP; Mon, 22 Jul 2013 22:41:50 +0000 Received: (qmail 69868 invoked by uid 99); 22 Jul 2013 22:41:29 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 22 Jul 2013 22:41:29 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id 6A77E8B1176; Mon, 22 Jul 2013 22:41:29 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: vinayakb@apache.org To: commits@helix.incubator.apache.org Message-Id: <97307fd5abdb47d4bcb4ce266b862401@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: git commit: Added NodeInstance API Date: Mon, 22 Jul 2013 22:41:29 +0000 (UTC) X-Virus-Checked: Checked by ClamAV on apache.org Updated Branches: refs/heads/helix_api_refactoring b50ddcdca -> 8fc5650bd Added NodeInstance API Project: http://git-wip-us.apache.org/repos/asf/incubator-helix/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-helix/commit/8fc5650b Tree: http://git-wip-us.apache.org/repos/asf/incubator-helix/tree/8fc5650b Diff: http://git-wip-us.apache.org/repos/asf/incubator-helix/diff/8fc5650b Branch: refs/heads/helix_api_refactoring Commit: 8fc5650bd1878c7784400cbfb3fa2847e40da9eb Parents: b50ddcd Author: Vinayak Borkar Authored: Mon Jul 22 15:41:25 2013 -0700 Committer: Vinayak Borkar Committed: Mon Jul 22 15:41:25 2013 -0700 ---------------------------------------------------------------------- .../apache/helix/api/model/NodeInstance.java | 37 ++++++++++++++++++++ .../helix/api/model/NodeInstanceState.java | 10 ++++++ .../org/apache/helix/api/model/PartitionId.java | 20 +++++++++++ .../helix/api/model/PropertyLifetime.java | 6 ++++ .../org/apache/helix/api/model/ResourceId.java | 13 +++++++ 5 files changed, 86 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/8fc5650b/helix-api/src/main/java/org/apache/helix/api/model/NodeInstance.java ---------------------------------------------------------------------- diff --git a/helix-api/src/main/java/org/apache/helix/api/model/NodeInstance.java b/helix-api/src/main/java/org/apache/helix/api/model/NodeInstance.java new file mode 100644 index 0000000..097bfb9 --- /dev/null +++ b/helix-api/src/main/java/org/apache/helix/api/model/NodeInstance.java @@ -0,0 +1,37 @@ +package org.apache.helix.api.model; + +import java.util.List; + +public interface NodeInstance { + public interface Builder { + public void setName(String name); + + public void setEnabled(boolean enabled); + + public void setProperty(PropertyLifetime lifetime, String name, T value); + + public void setHost(String host); + + public void setPort(int port); + + public void setTagList(List tagList); + + public void setBlacklistedPartitions(List partitionIds); + } + + public String getName(); + + public NodeInstanceState getNodeInstanceState(); + + public boolean isEnabled(); + + public T getProperty(String name); + + public String getHost(); + + public int getPort(); + + public List getTagList(); + + public List getBlacklistedPartitions(); +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/8fc5650b/helix-api/src/main/java/org/apache/helix/api/model/NodeInstanceState.java ---------------------------------------------------------------------- diff --git a/helix-api/src/main/java/org/apache/helix/api/model/NodeInstanceState.java b/helix-api/src/main/java/org/apache/helix/api/model/NodeInstanceState.java new file mode 100644 index 0000000..f0852d2 --- /dev/null +++ b/helix-api/src/main/java/org/apache/helix/api/model/NodeInstanceState.java @@ -0,0 +1,10 @@ +package org.apache.helix.api.model; + +public enum NodeInstanceState { + NEW, + STARTING, + RUNNING, + STOPPING, + TERMINATED, + FAILED +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/8fc5650b/helix-api/src/main/java/org/apache/helix/api/model/PartitionId.java ---------------------------------------------------------------------- diff --git a/helix-api/src/main/java/org/apache/helix/api/model/PartitionId.java b/helix-api/src/main/java/org/apache/helix/api/model/PartitionId.java new file mode 100644 index 0000000..9fefe5d --- /dev/null +++ b/helix-api/src/main/java/org/apache/helix/api/model/PartitionId.java @@ -0,0 +1,20 @@ +package org.apache.helix.api.model; + +public final class PartitionId { + private final ResourceId resourceId; + + private final String partitionName; + + public PartitionId(ResourceId resourceId, String partitionName) { + this.resourceId = resourceId; + this.partitionName = partitionName; + } + + public ResourceId getResourceId() { + return resourceId; + } + + public String getPartitionName() { + return partitionName; + } +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/8fc5650b/helix-api/src/main/java/org/apache/helix/api/model/PropertyLifetime.java ---------------------------------------------------------------------- diff --git a/helix-api/src/main/java/org/apache/helix/api/model/PropertyLifetime.java b/helix-api/src/main/java/org/apache/helix/api/model/PropertyLifetime.java new file mode 100644 index 0000000..008979e --- /dev/null +++ b/helix-api/src/main/java/org/apache/helix/api/model/PropertyLifetime.java @@ -0,0 +1,6 @@ +package org.apache.helix.api.model; + +public enum PropertyLifetime { + SESSION, + PERSISTENT +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/8fc5650b/helix-api/src/main/java/org/apache/helix/api/model/ResourceId.java ---------------------------------------------------------------------- diff --git a/helix-api/src/main/java/org/apache/helix/api/model/ResourceId.java b/helix-api/src/main/java/org/apache/helix/api/model/ResourceId.java new file mode 100644 index 0000000..ed35725 --- /dev/null +++ b/helix-api/src/main/java/org/apache/helix/api/model/ResourceId.java @@ -0,0 +1,13 @@ +package org.apache.helix.api.model; + +public final class ResourceId { + private final String resourceName; + + public ResourceId(String resourceName) { + this.resourceName = resourceName; + } + + public String getResourceName() { + return resourceName; + } +} \ No newline at end of file