public List<ScalarFunction> getScalarFunctionsSupported() { // This change allow you to restrict the scalar functions supported if (scalarFunctionsSupported != null) return scalarFunctionsSupported; List<ScalarFunction> supported = new ArrayList<ScalarFunction>(); ScalarFunction[] sfs = DataProviderServices.lookup().getScalarFunctionManager().getAllScalarFunctions(); for (ScalarFunction sf : sfs) { if (sf != null && isScalarFunctionSupported(sf)) supported.add(sf); } return supported; }
@Test public void listBeans() { DataProviderServices providerServices = DataProviderServices.lookup(); System.out.println("\nData provider types"); System.out.println("-----------------------"); DataProviderType[] dataProviders = providerServices.getDataProviderManager().getDataProviderTypes(); for (DataProviderType providerType : dataProviders) { System.out.println(providerType.getUid()); } System.out.println("Scalar functions"); System.out.println("------------------------"); ScalarFunction[] scalarFunctions = providerServices.getScalarFunctionManager().getAllScalarFunctions(); for (ScalarFunction scalarFunction : scalarFunctions) { System.out.println(scalarFunction.getCode()); } } }