Posted by
Fabian Hueske on
URL: http://deprecated-apache-flink-mailing-list-archive.368.s1.nabble.com/ConstantFields-in-Java-API-tp770p775.html
Hi Janani,
You can also use the projection join as:
ds1.join(ds2).where(0).equalTo(0).projectFirst(0).projectSecond(1,2).types(Long.class,
Long.class, Long.class)
That should also automatically set the correct annotations.
Best, Fabian
On Jun 25, 2014 7:41 PM, "Janani Chakkaradhari" <
[hidden email]>
wrote:
> Hi,
>
> Can someone check the following UDF for constantFileds setup?
>
> In simple, I wanted to do :
> First Input of Join : Tuple3<Long, FMCounter, Double> first,
> Second Input of Join: Tuple2<Long, Long> second
> Output: Tuple3<second.f0, first.f1, first.f1>
>
>
> UDF:
> @ConstantFieldsFirst("2 -> 2")
> @ConstantFieldsSecond("0 -> 0")
> public static final class SendingMessageToNeighbors
> extends
> JoinFunction<Tuple3<Long, FMCounter, Double>,
> Tuple2<Long, Long>, Tuple3<Long, FMCounter, Double>> {
>
> @Override
> public Tuple3<Long, FMCounter, Double> join(
> Tuple3<Long, FMCounter, Double> vertex_workset,
> Tuple2<Long, Long> neighbors) throws Exception {
> return new Tuple3<Long,
> FMCounter,
> Double>(neighbors.f0,vertex_workset.f1,vertex_workset.f2);
> }
>
> }
>
> Here, I only mapped for two fields (0 and 2) in output tuple. Is it fine?
>
> Regards,
> Janani
>