private static void registerUDAF(MeasureTypeFactory<?> factory) { MeasureType<?> type = factory.createMeasureType(factory.getAggrFunctionName(), DataType.getType(factory.getAggrDataTypeName())); Map<String, Class<?>> udafs = type.getRewriteCalciteAggrFunctions(); if (type.needRewrite() == false || udafs == null) return; for (String udaf : udafs.keySet()) { udaf = udaf.toUpperCase(Locale.ROOT); if (udaf.equals(FunctionDesc.FUNC_COUNT_DISTINCT)) continue; // skip built-in function if (udafFactories.containsKey(udaf)) throw new IllegalStateException( "UDAF '" + udaf + "' was dup declared by " + udafFactories.get(udaf) + " and " + factory); udafFactories.put(udaf, factory); udafMap.put(udaf, udafs.get(udaf)); } }
String funcName = factory.getAggrFunctionName(); if (!funcName.equals(funcName.toUpperCase(Locale.ROOT))) throw new IllegalArgumentException(
private static void registerUDAF(MeasureTypeFactory<?> factory) { MeasureType<?> type = factory.createMeasureType(factory.getAggrFunctionName(), DataType.getType(factory.getAggrDataTypeName())); Map<String, Class<?>> udafs = type.getRewriteCalciteAggrFunctions(); if (type.needRewrite() == false || udafs == null) return; for (String udaf : udafs.keySet()) { udaf = udaf.toUpperCase(Locale.ROOT); if (udaf.equals(FunctionDesc.FUNC_COUNT_DISTINCT)) continue; // skip built-in function if (udafFactories.containsKey(udaf)) throw new IllegalStateException( "UDAF '" + udaf + "' was dup declared by " + udafFactories.get(udaf) + " and " + factory); udafFactories.put(udaf, factory); udafMap.put(udaf, udafs.get(udaf)); } }
String funcName = factory.getAggrFunctionName(); if (funcName.equals(funcName.toUpperCase()) == false) throw new IllegalArgumentException("Aggregation function name '" + funcName + "' must be in upper case");
String funcName = factory.getAggrFunctionName(); if (!funcName.equals(funcName.toUpperCase(Locale.ROOT))) throw new IllegalArgumentException(