Browse Source

Removed the need for parsing the path - its no longer the path, its now the function name

pull/103/head
Matt Greenwood 10 years ago
parent
commit
a4c4cd58fa
  1. 9
      json-path/src/main/java/com/jayway/jsonpath/internal/function/FunctionFactory.java

9
json-path/src/main/java/com/jayway/jsonpath/internal/function/FunctionFactory.java

@ -45,18 +45,16 @@ public class FunctionFactory {
* @see #FUNCTIONS * @see #FUNCTIONS
* @see Function * @see Function
* *
* @param pathFragment * @param name
* The path fragment that is currently being processed which is believed to be the name of a function * The name of the function
* *
* @return * @return
* The implementation of a function * The implementation of a function
* *
* @throws InvalidPathException * @throws InvalidPathException
*/ */
public static Function newFunction(String pathFragment) throws InvalidPathException { public static Function newFunction(String name) throws InvalidPathException {
Function result = new PassthruFunction(); Function result = new PassthruFunction();
if (null != pathFragment) {
String name = pathFragment.replaceAll("['%\\]\\[\\(\\)]", "").trim().toLowerCase();
if (null != name && FUNCTIONS.containsKey(name) && Function.class.isAssignableFrom(FUNCTIONS.get(name))) { if (null != name && FUNCTIONS.containsKey(name) && Function.class.isAssignableFrom(FUNCTIONS.get(name))) {
try { try {
@ -67,7 +65,6 @@ public class FunctionFactory {
throw new InvalidPathException("Function of name: " + name + " cannot be created", e); throw new InvalidPathException("Function of name: " + name + " cannot be created", e);
} }
} }
}
return result; return result;
} }

Loading…
Cancel
Save