View Javadoc
1   package de.dlr.shepard.common.search.query;
2   
3   import de.dlr.shepard.common.exceptions.InvalidBodyException;
4   
5   public class QueryValidator {
6   
7     private QueryValidator() {}
8   
9     private static final String[] keywords = {
10      "match",
11      "detach",
12      "delete",
13      "create",
14      "where",
15      "drop",
16      "call",
17      "constraint",
18      "index",
19      "merge",
20      "return",
21      "set",
22      "show",
23      "terminate",
24      "union",
25      "unwind",
26    };
27  
28    private static final String[] delimiters = { " ", "(", "{", "\n", "[" };
29  
30    public static boolean checkQuery(String query) {
31      for (String keyword : keywords) for (String delimiter : delimiters) if (
32        query.toLowerCase().contains(keyword + delimiter)
33      ) throw new InvalidBodyException("query must not contain " + keyword + delimiter);
34      return true;
35    }
36  }