public void write(DECISIONS dec, Context context, String url) throws IOException, InterruptedException{ DefaultTuple defTup=new DefaultTuple(); defTup.append(url); context.write(new IntWritable(dec.ordinal()), defTup); }
@Override public void putNext(Tuple tuple) throws IOException { System.out.println(tuple.getClass().getName()); if (tuple != null) { try { Tuple t = new DefaultTuple(); for(Object val: tuple.getAll()) { t.append(val); } writer.write(NullWritable.get(), t); } catch (InterruptedException e) { // Under what circumstances does this happen? throw new IOException(e); } } } }
@Override public Tuple apply(Tuple2<IndexedKey, Tuple> v1) { LOG.debug("ToTupleFunction in : " + v1); DataBag bag = DefaultBagFactory.getInstance().newDefaultBag(); Tuple t = new DefaultTuple(); Tuple packagedTuple = null; try { Object key = v1._2().get(0); bag.add((Tuple) v1._2().get(1)); t.append(key); t.append(bag); poReduce.getPKGOp().getPkgr().attachInput(key, new DataBag[]{(DataBag) t.get(1)}, new boolean[]{true}); packagedTuple = (Tuple) poReduce.getPKGOp().getPkgr().getNext().result; } catch (ExecException e) { throw new RuntimeException(e); } LOG.debug("ToTupleFunction out : " + packagedTuple); return packagedTuple; } }
Tuple result = tf.newTuple(2); DataBag bag = DefaultBagFactory.getInstance().newDefaultBag(); Tuple t = new DefaultTuple(); try {