You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@helix.apache.org by ka...@apache.org on 2013/11/07 02:19:32 UTC
[24/53] [abbrv] git commit: [HELIX-100] Remove creating transitions
from plain strings
[HELIX-100] Remove creating transitions from plain strings
Project: http://git-wip-us.apache.org/repos/asf/incubator-helix/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-helix/commit/19cdf76e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-helix/tree/19cdf76e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-helix/diff/19cdf76e
Branch: refs/heads/master
Commit: 19cdf76e00c0560a080f5c555be73e7980384ee4
Parents: 314ed45
Author: Kanak Biscuitwala <ka...@apache.org>
Authored: Thu Oct 3 10:55:03 2013 -0700
Committer: Kanak Biscuitwala <ka...@apache.org>
Committed: Wed Nov 6 13:17:35 2013 -0800
----------------------------------------------------------------------
.../org/apache/helix/model/StateModelDefinition.java | 4 +++-
.../src/main/java/org/apache/helix/model/Transition.java | 11 -----------
.../helix/model/builder/StateTransitionTableBuilder.java | 10 +++++-----
.../apache/helix/tools/StateModelConfigGenerator.java | 11 ++++++-----
.../java/org/apache/helix/examples/NewModelExample.java | 3 ++-
5 files changed, 16 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/19cdf76e/helix-core/src/main/java/org/apache/helix/model/StateModelDefinition.java
----------------------------------------------------------------------
diff --git a/helix-core/src/main/java/org/apache/helix/model/StateModelDefinition.java b/helix-core/src/main/java/org/apache/helix/model/StateModelDefinition.java
index af06ecc..3a8542b 100644
--- a/helix-core/src/main/java/org/apache/helix/model/StateModelDefinition.java
+++ b/helix-core/src/main/java/org/apache/helix/model/StateModelDefinition.java
@@ -164,7 +164,9 @@ public class StateModelDefinition extends HelixProperty {
public List<Transition> getStateTransitionPriorityList() {
ImmutableList.Builder<Transition> builder = new ImmutableList.Builder<Transition>();
for (String transition : getStateTransitionPriorityStringList()) {
- builder.add(Transition.from(transition));
+ String fromState = transition.substring(0, transition.indexOf('-'));
+ String toState = transition.substring(transition.indexOf('-') + 1);
+ builder.add(Transition.from(State.from(fromState), State.from(toState)));
}
return builder.build();
}
http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/19cdf76e/helix-core/src/main/java/org/apache/helix/model/Transition.java
----------------------------------------------------------------------
diff --git a/helix-core/src/main/java/org/apache/helix/model/Transition.java b/helix-core/src/main/java/org/apache/helix/model/Transition.java
index 4d4bac9..16fc937 100644
--- a/helix-core/src/main/java/org/apache/helix/model/Transition.java
+++ b/helix-core/src/main/java/org/apache/helix/model/Transition.java
@@ -74,17 +74,6 @@ public class Transition {
/**
* Create a new transition
- * @param transition string representing a transition, e.g. "STATE1-STATE2"
- * @return Transition
- */
- public static Transition from(String transition) {
- String fromState = transition.substring(0, transition.indexOf('-'));
- String toState = transition.substring(transition.indexOf('-') + 1);
- return new Transition(State.from(fromState), State.from(toState));
- }
-
- /**
- * Create a new transition
* @param fromState string source state
* @param toState string destination state
* @return Transition
http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/19cdf76e/helix-core/src/main/java/org/apache/helix/model/builder/StateTransitionTableBuilder.java
----------------------------------------------------------------------
diff --git a/helix-core/src/main/java/org/apache/helix/model/builder/StateTransitionTableBuilder.java b/helix-core/src/main/java/org/apache/helix/model/builder/StateTransitionTableBuilder.java
index e2a3f75..4c6edf7 100644
--- a/helix-core/src/main/java/org/apache/helix/model/builder/StateTransitionTableBuilder.java
+++ b/helix-core/src/main/java/org/apache/helix/model/builder/StateTransitionTableBuilder.java
@@ -163,11 +163,11 @@ public class StateTransitionTableBuilder {
states.add("OFFLINE");
List<Transition> transitions = new ArrayList<Transition>();
- transitions.add(Transition.from("SLAVE-OFFLINE"));
- transitions.add(Transition.from("OFFLINE-SLAVE"));
- transitions.add(Transition.from("SLAVE-MASTER"));
- transitions.add(Transition.from("OFFLINE-DROPPED"));
- transitions.add(Transition.from("MASTER-SLAVE"));
+ transitions.add(Transition.from(State.from("SLAVE"), State.from("OFFLINE")));
+ transitions.add(Transition.from(State.from("OFFLINE"), State.from("SLAVE")));
+ transitions.add(Transition.from(State.from("SLAVE"), State.from("MASTER")));
+ transitions.add(Transition.from(State.from("OFFLINE"), State.from("DROPPED")));
+ transitions.add(Transition.from(State.from("MASTER"), State.from("SLAVE")));
StateTransitionTableBuilder builder = new StateTransitionTableBuilder();
Map<String, Map<String, String>> next = builder.buildTransitionTable(states, transitions);
http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/19cdf76e/helix-core/src/main/java/org/apache/helix/tools/StateModelConfigGenerator.java
----------------------------------------------------------------------
diff --git a/helix-core/src/main/java/org/apache/helix/tools/StateModelConfigGenerator.java b/helix-core/src/main/java/org/apache/helix/tools/StateModelConfigGenerator.java
index 353ba81..8127626 100644
--- a/helix-core/src/main/java/org/apache/helix/tools/StateModelConfigGenerator.java
+++ b/helix-core/src/main/java/org/apache/helix/tools/StateModelConfigGenerator.java
@@ -25,6 +25,7 @@ import java.util.List;
import java.util.Map;
import org.apache.helix.ZNRecord;
+import org.apache.helix.api.State;
import org.apache.helix.manager.zk.DefaultSchedulerMessageHandlerFactory;
import org.apache.helix.manager.zk.ZNRecordSerializer;
import org.apache.helix.model.StateModelDefinition.StateModelDefinitionProperty;
@@ -36,8 +37,8 @@ public class StateModelConfigGenerator {
public static void main(String[] args) {
ZNRecordSerializer serializer = new ZNRecordSerializer();
- StateModelConfigGenerator generator = new StateModelConfigGenerator();
- System.out.println(new String(serializer.serialize(generator.generateConfigForMasterSlave())));
+ System.out.println(new String(serializer.serialize(StateModelConfigGenerator
+ .generateConfigForMasterSlave())));
}
/**
@@ -328,9 +329,9 @@ public class StateModelConfigGenerator {
states.add("OFFLINE");
List<Transition> transitions = new ArrayList<Transition>();
- transitions.add(Transition.from("OFFLINE-COMPLETED"));
- transitions.add(Transition.from("OFFLINE-DROPPED"));
- transitions.add(Transition.from("COMPLETED-DROPPED"));
+ transitions.add(Transition.from(State.from("OFFLINE"), State.from("COMPLETED")));
+ transitions.add(Transition.from(State.from("OFFLINE"), State.from("DROPPED")));
+ transitions.add(Transition.from(State.from("COMPLETED"), State.from("DROPPED")));
StateTransitionTableBuilder builder = new StateTransitionTableBuilder();
Map<String, Map<String, String>> next = builder.buildTransitionTable(states, transitions);
http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/19cdf76e/helix-examples/src/main/java/org/apache/helix/examples/NewModelExample.java
----------------------------------------------------------------------
diff --git a/helix-examples/src/main/java/org/apache/helix/examples/NewModelExample.java b/helix-examples/src/main/java/org/apache/helix/examples/NewModelExample.java
index 804df10..7215707 100644
--- a/helix-examples/src/main/java/org/apache/helix/examples/NewModelExample.java
+++ b/helix-examples/src/main/java/org/apache/helix/examples/NewModelExample.java
@@ -93,7 +93,8 @@ public class NewModelExample {
// add a transition constraint (this time with a resource scope)
clusterBuilder.addTransitionConstraint(Scope.resource(resource.getId()),
- lockUnlock.getStateModelDefId(), Transition.from("RELEASED-LOCKED"), 1);
+ lockUnlock.getStateModelDefId(),
+ Transition.from(State.from("RELEASED"), State.from("LOCKED")), 1);
ClusterConfig cluster = clusterBuilder.build();