Revision 4c8b61dd
Added by Patrick Plitzner over 5 years ago
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/webimport/termimport/requests/RequestSearch.java | ||
---|---|---|
22 | 22 |
*/ |
23 | 23 |
public class RequestSearch extends AbstractTerminologyServiceRequest{ |
24 | 24 |
|
25 |
private static final String QUOTATION_MARK = "\""; |
|
26 |
private static final String SEARCH = "search"; |
|
27 |
private static final String TRUE = "true"; |
|
28 |
private static final String INTERNAL_ONLY = "internal_only"; |
|
29 |
private static final String INCLUDED = "included"; |
|
30 |
private static final String EXACT = "exact"; |
|
31 |
private static final String MATCH_TYPE = "match_type"; |
|
25 | 32 |
private String searchString; |
26 | 33 |
private Collection<TerminologyWrapper> selectedOntologies; |
27 | 34 |
|
... | ... | |
33 | 40 |
|
34 | 41 |
@Override |
35 | 42 |
protected String getServiceUri() { |
36 |
return "search";
|
|
43 |
return SEARCH;
|
|
37 | 44 |
} |
38 | 45 |
|
39 | 46 |
@Override |
... | ... | |
45 | 52 |
protected List<RequestParameter> getServiceParameters() { |
46 | 53 |
List<RequestParameter> params = new ArrayList<>(); |
47 | 54 |
params.add(new RequestParameter(TerminologyServiceConstants.ATTR_QUERY, searchString)); |
48 |
if(searchString.contains("*")){ |
|
49 |
params.add(new RequestParameter("match_type", "regex")); |
|
55 |
if(searchString.contains(QUOTATION_MARK)){ |
|
56 |
params.add(new RequestParameter(MATCH_TYPE, EXACT)); |
|
57 |
//FIXME: this is a simplification of regex search |
|
58 |
searchString = searchString.replace(QUOTATION_MARK, ""); |
|
50 | 59 |
} |
51 | 60 |
else{ |
52 |
params.add(new RequestParameter("match_type", "exact"));
|
|
61 |
params.add(new RequestParameter(MATCH_TYPE, INCLUDED));
|
|
53 | 62 |
} |
54 |
params.add(new RequestParameter("internal_only", "true"));
|
|
63 |
params.add(new RequestParameter(INTERNAL_ONLY, TRUE));
|
|
55 | 64 |
params.add(new RequestParameter(TerminologyServiceConstants.ATTR_TERMINOLOGIES, |
56 | 65 |
selectedOntologies.stream() |
57 | 66 |
.map(wrapper->wrapper.getAcronym()) |
Also available in: Unified diff
ref #7806 Change search syntax