Class RemapCustomGrouping<R>
- java.lang.Object
-
- org.apache.heron.streamlet.impl.groupings.RemapCustomGrouping<R>
-
- All Implemented Interfaces:
Serializable
,CustomStreamGrouping
,StreamGrouping
public class RemapCustomGrouping<R> extends Object implements CustomStreamGrouping
RemapCustomGrouping is the class that routes the incoming tuples into the ReMapBolt. It takes in a user defined remapFn as input. The remapFn defines how tuples should be redirected.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description RemapCustomGrouping(SerializableBiFunction<? super R,Integer,List<Integer>> remapFn)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<Integer>
chooseTasks(List<Object> values)
This function implements a custom stream grouping.void
prepare(TopologyContext context, String component, String streamId, List<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
-
Methods inherited from interface org.apache.heron.api.grouping.CustomStreamGrouping
buildStream
-
-
-
-
Constructor Detail
-
RemapCustomGrouping
public RemapCustomGrouping(SerializableBiFunction<? super R,Integer,List<Integer>> remapFn)
-
-
Method Detail
-
prepare
public void prepare(TopologyContext context, String component, String streamId, List<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 interfaceCustomStreamGrouping
-
chooseTasks
public List<Integer> chooseTasks(List<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 interfaceCustomStreamGrouping
- Parameters:
values
- the values to group on
-
-