public void cacheFunction(final FullQualifiedName functionName, final EdmFunction function) { final FunctionMapKey key = new FunctionMapKey(functionName, function.getBindingParameterTypeFqn(), function.isBindingParameterTypeCollection(), function.getParameterNames()); if (function.isBound()) { boundFunctions.put(key, function); } else { if (!unboundFunctionsByName.containsKey(functionName)) { unboundFunctionsByName.put(functionName, new ArrayList<EdmFunction>()); } unboundFunctionsByName.get(functionName).add(function); unboundFunctionsByKey.put(key, function); } }
public void cacheFunction(final FullQualifiedName functionName, final EdmFunction function) { final FunctionMapKey key = new FunctionMapKey(functionName, function.getBindingParameterTypeFqn(), function.isBindingParameterTypeCollection(), function.getParameterNames()); if (function.isBound()) { boundFunctions.put(key, function); } else { if (!unboundFunctionsByName.containsKey(functionName)) { unboundFunctionsByName.put(functionName, new ArrayList<EdmFunction>()); } unboundFunctionsByName.get(functionName).add(function); unboundFunctionsByKey.put(key, function); } }
@Override public List<EdmFunction> getUnboundFunctions(final FullQualifiedName functionName) { final FullQualifiedName functionFqn = resolvePossibleAlias(functionName); List<EdmFunction> functions = unboundFunctionsByName.get(functionFqn); if (functions == null) { functions = createUnboundFunctions(functionFqn); if (functions != null) { unboundFunctionsByName.put(functionFqn, functions); for (EdmFunction unbound : functions) { final FunctionMapKey key = new FunctionMapKey( new FullQualifiedName(unbound.getNamespace(), unbound.getName()), unbound.getBindingParameterTypeFqn(), unbound.isBindingParameterTypeCollection(), unbound.getParameterNames()); unboundFunctionsByKey.put(key, unbound); } } } return functions; }
@Override public List<EdmFunction> getUnboundFunctions(final FullQualifiedName functionName) { final FullQualifiedName functionFqn = resolvePossibleAlias(functionName); List<EdmFunction> functions = unboundFunctionsByName.get(functionFqn); if (functions == null) { functions = createUnboundFunctions(functionFqn); if (functions != null) { unboundFunctionsByName.put(functionFqn, functions); for (EdmFunction unbound : functions) { final FunctionMapKey key = new FunctionMapKey( new FullQualifiedName(unbound.getNamespace(), unbound.getName()), unbound.getBindingParameterTypeFqn(), unbound.isBindingParameterTypeCollection(), unbound.getParameterNames()); unboundFunctionsByKey.put(key, unbound); } } } return functions; }