public static UDFClassType getUDFClassType(Class<?> udfClass) {
    if (UDF.class.isAssignableFrom(udfClass)) {
      return UDFClassType.UDF;
    } else if (GenericUDF.class.isAssignableFrom(udfClass)) {
      return UDFClassType.GENERIC_UDF;
    } else if (GenericUDTF.class.isAssignableFrom(udfClass)) {
      return UDFClassType.GENERIC_UDTF;
    } else if (UDAF.class.isAssignableFrom(udfClass)) {
      return UDFClassType.UDAF;
    } else if (GenericUDAFResolver.class.isAssignableFrom(udfClass)) {
      return UDFClassType.GENERIC_UDAF_RESOLVER;
    } else if(TableFunctionResolver.class.isAssignableFrom(udfClass)) {
      return UDFClassType.TABLE_FUNCTION_RESOLVER;
    } else {
      return UDFClassType.UNKNOWN;
    }
  }
Determine the UDF class type of the class
@param udfClass
@return UDFClassType enum corresponding to the class type of the UDF
ql/src/java/org/apache/hadoop/hive/ql/exec/FunctionUtils.java