CrescentSearchRequestWrapper { public Filter getFilter() throws CrescentInvalidRequestException { String filterQueryString = searchRequest.getFilter(); if(filterQueryString != null && filterQueryString.length() > 0) { CustomQueryStringParser queryParser = new CustomQueryStringParser(); try { Query query = queryParser.getQuery(getIndexedFields(), filterQueryString, collection.getSearchModeAnalyzer(), searchRequest.getRegexQuery()); Filter filter = new QueryWrapperFilter(query); return filter; } catch (Exception e) { logger.error("Error In getFilter ", e); throw new CrescentInvalidRequestException(e.getMessage()); } } else { return null; } } CrescentSearchRequestWrapper(SearchRequest searchRequest); String getKeyword(); String getCollectionName(); int getDefaultHitsPage(); int getPageNum(); int getStartOffSet(); int getHitsForPage(); Sort getSort(); Query getQuery(); Filter getFilter(); List<CrescentCollectionField> getTargetSearchFields(); List<CrescentCollectionField> getIndexedFields(); String getUserIp(); String getUserId(); String getPcId();  }
@Test public void getFilter() throws CrescentInvalidRequestException { SearchRequest searchRequest = new SearchRequest(); searchRequest.setCollectionName("sample"); searchRequest.setFilter("title:\"파이썬 프로그래밍 공부\" +dscr:\"자바 병렬 프로그래밍\""); CrescentSearchRequestWrapper csrw = new CrescentSearchRequestWrapper(searchRequest); Filter filter = csrw.getFilter(); System.out.println(filter); Assert.assertEquals("QueryWrapperFilter(title:파이썬^2.0 title:파이^2.0 title:프로그래밍^2.0 title:공부^2.0 +dscr:자바 +dscr:병렬 +dscr:프로그래밍)", filter.toString()); }