public GenericUDAFEvaluator getEvaluator()

in src/main/java/org/apache/datasketches/hive/tuple/UnionArrayOfDoublesSketchUDAF.java [59:82]


  public GenericUDAFEvaluator getEvaluator(final GenericUDAFParameterInfo info) throws SemanticException {
    final ObjectInspector[] inspectors = info.getParameterObjectInspectors();

    if (inspectors.length < 1) {
      throw new UDFArgumentException("Expected at least 1 argument");
    }
    if (inspectors.length > 3) {
      throw new UDFArgumentTypeException(inspectors.length - 1, "Expected no more than 3 arguments");
    }

    ObjectInspectorValidator.validateGivenPrimitiveCategory(inspectors[0], 0, PrimitiveCategory.BINARY);

    // nominal number of entries
    if (inspectors.length > 1) {
      ObjectInspectorValidator.validateIntegralParameter(inspectors[1], 1);
    }

    // number of double values per key
    if (inspectors.length > 2) {
      ObjectInspectorValidator.validateIntegralParameter(inspectors[2], 2);
    }

    return new UnionArrayOfDoublesSketchEvaluator();
  }