source: proiecte/PDAD/trunk/nodeslocation/pig/mr/Concat.java @ 154

Last change on this file since 154 was 154, checked in by (none), 14 years ago

PDAD project

File size: 1.5 KB
Line 
1import java.io.IOException;
2import java.util.*;
3
4import org.apache.pig.EvalFunc;
5import org.apache.pig.FuncSpec;
6import org.apache.pig.data.DataBag;
7import org.apache.pig.data.DefaultBagFactory;
8import org.apache.pig.data.DefaultTupleFactory;
9import org.apache.pig.data.Tuple;
10import org.apache.pig.impl.logicalLayer.schema.Schema;
11import org.apache.pig.data.DataType;
12import org.apache.pig.impl.logicalLayer.FrontendException;
13
14public class Concat extends EvalFunc<DataBag> {
15       
16    @Override
17    public DataBag exec(Tuple input) throws IOException {
18       
19        if (input == null || input.size() == 0)
20            return null;
21        try{
22
23                if(input.get(0) != null && input.get(1) != null) {
24                        String token1 = input.get(0).toString();
25                        StringTokenizer st1 = new StringTokenizer(token1);
26                        String nodeId = st1.nextToken();
27                       
28                        String token2 = input.get(1).toString();
29                                StringTokenizer st2 = new StringTokenizer(token2);
30                                String platformId = st2.nextToken();
31                               
32                               
33                        DataBag output = DefaultBagFactory.getInstance().newDefaultBag();
34                                Tuple t = DefaultTupleFactory.getInstance().newTuple(1);
35                                String label = nodeId + ";" + platformId;
36                                t.set(0, label);
37                                       
38                    output.add(t);
39                    return output;
40                }
41               
42                return null;
43           
44        }catch(Exception e){
45            System.err.println("RealLabelsr: failed to process input; error - " + e.getMessage());
46            e.printStackTrace();
47            return null;
48        }
49
50
51    }
52}
Note: See TracBrowser for help on using the repository browser.