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:31 UTC
[23/53] [abbrv] git commit: [HELIX-100] Clean up immutable return
values
[HELIX-100] Clean up immutable return values
Project: http://git-wip-us.apache.org/repos/asf/incubator-helix/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-helix/commit/8699060a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-helix/tree/8699060a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-helix/diff/8699060a
Branch: refs/heads/master
Commit: 8699060ad99b0987855cf911bf5ca3caadb0c876
Parents: c506e95
Author: Kanak Biscuitwala <ka...@apache.org>
Authored: Tue Oct 1 17:43:49 2013 -0700
Committer: Kanak Biscuitwala <ka...@apache.org>
Committed: Wed Nov 6 13:17:35 2013 -0800
----------------------------------------------------------------------
.../org/apache/helix/model/ExternalView.java | 19 +++++------
.../java/org/apache/helix/model/IdealState.java | 36 +++++++++-----------
.../java/org/apache/helix/model/Message.java | 8 ++---
.../apache/helix/model/ResourceAssignment.java | 4 +--
.../helix/model/StateModelDefinition.java | 4 +--
5 files changed, 34 insertions(+), 37 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/8699060a/helix-core/src/main/java/org/apache/helix/model/ExternalView.java
----------------------------------------------------------------------
diff --git a/helix-core/src/main/java/org/apache/helix/model/ExternalView.java b/helix-core/src/main/java/org/apache/helix/model/ExternalView.java
index 77df3cf..15a22ca 100644
--- a/helix-core/src/main/java/org/apache/helix/model/ExternalView.java
+++ b/helix-core/src/main/java/org/apache/helix/model/ExternalView.java
@@ -30,8 +30,8 @@ import org.apache.helix.api.id.ParticipantId;
import org.apache.helix.api.id.PartitionId;
import org.apache.helix.api.id.ResourceId;
-import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.ImmutableSet;
+import com.google.common.collect.Maps;
+import com.google.common.collect.Sets;
/**
* External view is an aggregation (across all instances)
@@ -123,11 +123,11 @@ public class ExternalView extends HelixProperty {
* @return a set of partition ids
*/
public Set<PartitionId> getPartitionSet() {
- ImmutableSet.Builder<PartitionId> builder = new ImmutableSet.Builder<PartitionId>();
+ Set<PartitionId> partitionSet = Sets.newHashSet();
for (String partitionName : getPartitionStringSet()) {
- builder.add(PartitionId.from(partitionName));
+ partitionSet.add(PartitionId.from(partitionName));
}
- return builder.build();
+ return partitionSet;
}
/**
@@ -149,13 +149,12 @@ public class ExternalView extends HelixProperty {
if (rawStateMap == null) {
return null;
}
- ImmutableMap.Builder<ParticipantId, State> builder =
- new ImmutableMap.Builder<ParticipantId, State>();
+ Map<ParticipantId, State> stateMap = Maps.newHashMap();
for (String participantName : rawStateMap.keySet()) {
- builder
- .put(ParticipantId.from(participantName), State.from(rawStateMap.get(participantName)));
+ stateMap.put(ParticipantId.from(participantName),
+ State.from(rawStateMap.get(participantName)));
}
- return builder.build();
+ return stateMap;
}
/**
http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/8699060a/helix-core/src/main/java/org/apache/helix/model/IdealState.java
----------------------------------------------------------------------
diff --git a/helix-core/src/main/java/org/apache/helix/model/IdealState.java b/helix-core/src/main/java/org/apache/helix/model/IdealState.java
index 5996391..8f579ec 100644
--- a/helix-core/src/main/java/org/apache/helix/model/IdealState.java
+++ b/helix-core/src/main/java/org/apache/helix/model/IdealState.java
@@ -43,12 +43,11 @@ import org.apache.log4j.Logger;
import com.google.common.base.Function;
import com.google.common.collect.ArrayListMultimap;
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.ImmutableSet;
import com.google.common.collect.ListMultimap;
import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
import com.google.common.collect.Multimaps;
+import com.google.common.collect.Sets;
/**
* The ideal states of all partitions in a resource
@@ -294,14 +293,14 @@ public class IdealState extends HelixProperty {
/**
* Get all of the partitions
- * @return an immutable set of partitions
+ * @return a set of partitions
*/
public Set<PartitionId> getPartitionSet() {
- ImmutableSet.Builder<PartitionId> partitionSetBuilder = new ImmutableSet.Builder<PartitionId>();
+ Set<PartitionId> partitionSet = Sets.newHashSet();
for (String partitionName : getPartitionStringSet()) {
- partitionSetBuilder.add(PartitionId.from(partitionName));
+ partitionSet.add(PartitionId.from(partitionName));
}
- return partitionSetBuilder.build();
+ return partitionSet;
}
/**
@@ -331,18 +330,17 @@ public class IdealState extends HelixProperty {
/**
* Get the current mapping of a partition
* @param partitionId the name of the partition
- * @return the instances where the replicas live and the state of each (immutable)
+ * @return the instances where the replicas live and the state of each
*/
public Map<ParticipantId, State> getParticipantStateMap(PartitionId partitionId) {
Map<String, String> instanceStateMap = getInstanceStateMap(partitionId.stringify());
- ImmutableMap.Builder<ParticipantId, State> builder =
- new ImmutableMap.Builder<ParticipantId, State>();
+ Map<ParticipantId, State> participantStateMap = Maps.newHashMap();
if (instanceStateMap != null) {
for (String participantId : instanceStateMap.keySet()) {
- builder.put(ParticipantId.from(participantId),
+ participantStateMap.put(ParticipantId.from(participantId),
State.from(instanceStateMap.get(participantId)));
}
- return builder.build();
+ return participantStateMap;
}
return null;
}
@@ -381,14 +379,14 @@ public class IdealState extends HelixProperty {
/**
* Get the participants who host replicas of a partition
* @param partitionId the partition to look up
- * @return immutable set of participant ids
+ * @return set of participant ids
*/
public Set<ParticipantId> getParticipantSet(PartitionId partitionId) {
- ImmutableSet.Builder<ParticipantId> builder = new ImmutableSet.Builder<ParticipantId>();
+ Set<ParticipantId> participantSet = Sets.newHashSet();
for (String participantName : getInstanceSet(partitionId.stringify())) {
- builder.add(ParticipantId.from(participantName));
+ participantSet.add(ParticipantId.from(participantName));
}
- return builder.build();
+ return participantSet;
}
/**
@@ -426,13 +424,13 @@ public class IdealState extends HelixProperty {
* @return an ordered list of participants that can serve replicas of the partition
*/
public List<ParticipantId> getPreferenceList(PartitionId partitionId) {
- ImmutableList.Builder<ParticipantId> builder = new ImmutableList.Builder<ParticipantId>();
+ List<ParticipantId> preferenceList = Lists.newArrayList();
List<String> preferenceStringList = getPreferenceList(partitionId.stringify());
if (preferenceStringList != null) {
for (String participantName : preferenceStringList) {
- builder.add(ParticipantId.from(participantName));
+ preferenceList.add(ParticipantId.from(participantName));
}
- return builder.build();
+ return preferenceList;
}
return null;
}
http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/8699060a/helix-core/src/main/java/org/apache/helix/model/Message.java
----------------------------------------------------------------------
diff --git a/helix-core/src/main/java/org/apache/helix/model/Message.java b/helix-core/src/main/java/org/apache/helix/model/Message.java
index 71e9696..86319e3 100644
--- a/helix-core/src/main/java/org/apache/helix/model/Message.java
+++ b/helix-core/src/main/java/org/apache/helix/model/Message.java
@@ -44,7 +44,7 @@ import org.apache.helix.api.id.StateModelFactoryId;
import org.apache.helix.controller.stages.ClusterEvent;
import org.apache.helix.manager.zk.DefaultSchedulerMessageHandlerFactory;
-import com.google.common.collect.ImmutableList;
+import com.google.common.collect.Lists;
/**
* Messages sent internally among nodes in the system to respond to changes in state.
@@ -671,11 +671,11 @@ public class Message extends HelixProperty {
if (partitionNames == null) {
return Collections.emptyList();
}
- ImmutableList.Builder<PartitionId> builder = new ImmutableList.Builder<PartitionId>();
+ List<PartitionId> partitionIds = Lists.newArrayList();
for (String partitionName : partitionNames) {
- builder.add(PartitionId.from(partitionName));
+ partitionIds.add(PartitionId.from(partitionName));
}
- return builder.build();
+ return partitionIds;
}
/**
http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/8699060a/helix-core/src/main/java/org/apache/helix/model/ResourceAssignment.java
----------------------------------------------------------------------
diff --git a/helix-core/src/main/java/org/apache/helix/model/ResourceAssignment.java b/helix-core/src/main/java/org/apache/helix/model/ResourceAssignment.java
index c478e13..c91a655 100644
--- a/helix-core/src/main/java/org/apache/helix/model/ResourceAssignment.java
+++ b/helix-core/src/main/java/org/apache/helix/model/ResourceAssignment.java
@@ -73,7 +73,7 @@ public class ResourceAssignment extends HelixProperty {
/**
* Get the currently mapped partitions
- * @return list of Partition objects
+ * @return list of Partition objects (immutable)
*/
public List<? extends PartitionId> getMappedPartitions() {
ImmutableList.Builder<PartitionId> builder = new ImmutableList.Builder<PartitionId>();
@@ -94,7 +94,7 @@ public class ResourceAssignment extends HelixProperty {
/**
* Get the participant, state pairs for a partition
* @param partition the Partition to look up
- * @return map of (participant id, state)
+ * @return immutable map of (participant id, state)
*/
public Map<ParticipantId, State> getReplicaMap(PartitionId partitionId) {
Map<String, String> rawReplicaMap = _record.getMapField(partitionId.stringify());
http://git-wip-us.apache.org/repos/asf/incubator-helix/blob/8699060a/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 32ee2c7..af06ecc 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
@@ -159,7 +159,7 @@ public class StateModelDefinition extends HelixProperty {
/**
* Get an ordered priority list of transitions
- * @return Transition objects, the first of which is highest priority
+ * @return Transition objects, the first of which is highest priority (immutable)
*/
public List<Transition> getStateTransitionPriorityList() {
ImmutableList.Builder<Transition> builder = new ImmutableList.Builder<Transition>();
@@ -179,7 +179,7 @@ public class StateModelDefinition extends HelixProperty {
/**
* Get an ordered priority list of states
- * @return immutable list of states, the first of which is highest priority
+ * @return immutable list of states, the first of which is highest priority (immutable)
*/
public List<State> getStatesPriorityList() {
ImmutableList.Builder<State> builder = new ImmutableList.Builder<State>();