Class JrubyAlgebraicEvalFunc.Initial

  extended by org.apache.pig.EvalFunc<T>
      extended by org.apache.pig.scripting.jruby.JrubyAlgebraicEvalFunc.AlgebraicFunctionWrapper<Tuple>
          extended by org.apache.pig.scripting.jruby.JrubyAlgebraicEvalFunc.Initial
Enclosing class:

public static class JrubyAlgebraicEvalFunc.Initial
extends JrubyAlgebraicEvalFunc.AlgebraicFunctionWrapper<Tuple>

This class invokes the initial method on the given Ruby class. As a courtesy to the user, it unwraps the DataBag that is given to Initial and passes Ruby just the first Tuple that it contains, as the contract for the Initial function in Algebraic is that it is given a DataBag with one and only one Tuple. Finally, it wraps the Ruby output in a Tuple.

Nested Class Summary
Nested classes/interfaces inherited from class org.apache.pig.EvalFunc
Field Summary
Fields inherited from class org.apache.pig.scripting.jruby.JrubyAlgebraicEvalFunc.AlgebraicFunctionWrapper
isInitialized, receiver, stage
Fields inherited from class org.apache.pig.EvalFunc
log, pigLogger, reporter, returnType
Constructor Summary
JrubyAlgebraicEvalFunc.Initial(String fileName, String functionName)
Method Summary
 Tuple exec(Tuple input)
          This callback method must be implemented by all subclasses.
Methods inherited from class org.apache.pig.scripting.jruby.JrubyAlgebraicEvalFunc.AlgebraicFunctionWrapper
getFileName, getFunctionName, getReceiver, getStage, initialize, isInitialized
Methods inherited from class org.apache.pig.EvalFunc
finish, getArgToFuncMapping, getCacheFiles, getInputSchema, getLogger, getPigLogger, getReporter, getReturnType, getSchemaName, getSchemaType, isAsynchronous, outputSchema, progress, setInputSchema, setPigLogger, setReporter, setUDFContextSignature, warn
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail


public JrubyAlgebraicEvalFunc.Initial()


public JrubyAlgebraicEvalFunc.Initial(String fileName,
                                      String functionName)
Method Detail


public Tuple exec(Tuple input)
           throws IOException
Description copied from class: EvalFunc
This callback method must be implemented by all subclasses. This is the method that will be invoked on every Tuple of a given dataset. Since the dataset may be divided up in a variety of ways the programmer should not make assumptions about state that is maintained between invocations of this method.

Specified by:
exec in class JrubyAlgebraicEvalFunc.AlgebraicFunctionWrapper<Tuple>
input - the Tuple to be processed.
result, of type T.

Copyright © 2007-2012 The Apache Software Foundation