org.apache.hadoop.hive.ql.udf.generic
Class GenericUDFBridge

java.lang.Object
  extended by org.apache.hadoop.hive.ql.udf.generic.GenericUDF
      extended by org.apache.hadoop.hive.ql.udf.generic.GenericUDFBridge
All Implemented Interfaces:
Closeable, Serializable

public class GenericUDFBridge
extends GenericUDF
implements Serializable

GenericUDFBridge encapsulates UDF to provide the same interface as GenericUDF. Note that GenericUDFBridge implements Serializable because the name of the UDF class needs to be serialized with the plan.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.hadoop.hive.ql.udf.generic.GenericUDF
GenericUDF.DeferredJavaObject, GenericUDF.DeferredObject
 
Constructor Summary
GenericUDFBridge()
           
GenericUDFBridge(String udfName, boolean isOperator, String udfClassName)
          Create a new GenericUDFBridge object.
 
Method Summary
 Object evaluate(GenericUDF.DeferredObject[] arguments)
          Evaluate the GenericUDF with the arguments.
 String getDisplayString(String[] children)
          Get the String to be displayed in explain.
 String[] getRequiredFiles()
           
 String[] getRequiredJars()
          The following two functions can be overridden to automatically include additional resources required by this UDF.
 Class<? extends UDF> getUdfClass()
           
 String getUdfClassName()
           
 String getUdfName()
           
 ObjectInspector initialize(ObjectInspector[] arguments)
          Initialize this GenericUDF.
 boolean isOperator()
           
 void setOperator(boolean isOperator)
           
 void setUdfClassName(String udfClassName)
           
 void setUdfName(String udfName)
           
 
Methods inherited from class org.apache.hadoop.hive.ql.udf.generic.GenericUDF
close, configure, copyToNewInstance, flip, initializeAndFoldConstants
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GenericUDFBridge

public GenericUDFBridge(String udfName,
                        boolean isOperator,
                        String udfClassName)
Create a new GenericUDFBridge object.

Parameters:
udfName - The name of the corresponding udf.
isOperator - true for operators
udfClassName - java class name of UDF

GenericUDFBridge

public GenericUDFBridge()
Method Detail

setUdfName

public void setUdfName(String udfName)

getUdfName

public String getUdfName()
Overrides:
getUdfName in class GenericUDF

getUdfClassName

public String getUdfClassName()

setUdfClassName

public void setUdfClassName(String udfClassName)

isOperator

public boolean isOperator()

setOperator

public void setOperator(boolean isOperator)

getUdfClass

public Class<? extends UDF> getUdfClass()

initialize

public ObjectInspector initialize(ObjectInspector[] arguments)
                           throws UDFArgumentException
Description copied from class: GenericUDF
Initialize this GenericUDF. This will be called once and only once per GenericUDF instance.

Specified by:
initialize in class GenericUDF
Parameters:
arguments - The ObjectInspector for the arguments
Returns:
The ObjectInspector for the return value
Throws:
UDFArgumentException - Thrown when arguments have wrong types, wrong length, etc.

evaluate

public Object evaluate(GenericUDF.DeferredObject[] arguments)
                throws HiveException
Description copied from class: GenericUDF
Evaluate the GenericUDF with the arguments.

Specified by:
evaluate in class GenericUDF
Parameters:
arguments - The arguments as DeferedObject, use DeferedObject.get() to get the actual argument Object. The Objects can be inspected by the ObjectInspectors passed in the initialize call.
Returns:
The
Throws:
HiveException

getDisplayString

public String getDisplayString(String[] children)
Description copied from class: GenericUDF
Get the String to be displayed in explain.

Specified by:
getDisplayString in class GenericUDF

getRequiredJars

public String[] getRequiredJars()
Description copied from class: GenericUDF
The following two functions can be overridden to automatically include additional resources required by this UDF. The return types should be arrays of paths.

Overrides:
getRequiredJars in class GenericUDF

getRequiredFiles

public String[] getRequiredFiles()
Overrides:
getRequiredFiles in class GenericUDF


Copyright © 2014 The Apache Software Foundation. All rights reserved.