backtype.storm.testing
Class NGrouping

java.lang.Object
  extended by backtype.storm.testing.NGrouping
All Implemented Interfaces:
CustomStreamGrouping, java.io.Serializable

public class NGrouping
extends java.lang.Object
implements CustomStreamGrouping

See Also:
Serialized Form

Constructor Summary
NGrouping(int n)
           
 
Method Summary
 java.util.List<java.lang.Integer> chooseTasks(int taskId, java.util.List<java.lang.Object> values)
          This function implements a custom stream grouping.
 void prepare(WorkerTopologyContext context, GlobalStreamId stream, java.util.List<java.lang.Integer> targetTasks)
          Tells the stream grouping at runtime the tasks in the target bolt.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NGrouping

public NGrouping(int n)
Method Detail

prepare

public void prepare(WorkerTopologyContext context,
                    GlobalStreamId stream,
                    java.util.List<java.lang.Integer> targetTasks)
Description copied from interface: CustomStreamGrouping
Tells the stream grouping at runtime the tasks in the target bolt. This information should be used in chooseTasks to determine the target tasks. It also tells the grouping the metadata on the stream this grouping will be used on.

Specified by:
prepare in interface CustomStreamGrouping

chooseTasks

public java.util.List<java.lang.Integer> chooseTasks(int taskId,
                                                     java.util.List<java.lang.Object> values)
Description copied from interface: CustomStreamGrouping
This function implements a custom stream grouping. It takes in as input the number of tasks in the target bolt in prepare and returns the tasks to send the tuples to.

Specified by:
chooseTasks in interface CustomStreamGrouping
values - the values to group on