@Override
  public synchronized Query getQuery(LuceneIndex index) throws LuceneQueryException {
    if (luceneQuery == null) {
      LuceneIndexImpl indexImpl = (LuceneIndexImpl) index;
      StandardQueryParser parser = new StandardQueryParser(indexImpl.getAnalyzer());
      parser.setAllowLeadingWildcard(true);
      try {
        luceneQuery = parser.parse(query, defaultField);
        if (logger.isDebugEnabled()) {
          logger.debug("User query " + query + " is parsed to be: " + luceneQuery);
        }
      } catch (QueryNodeException e) {
        logger.warn("Caught the following exception attempting parse query '" + query + "': ", e);
        throw new LuceneQueryException(
            String.format("Parsing query %s failed due to: %s",
                "'" + query + "'", e.getMessage()));
      }
    }
    return luceneQuery;
  }
Constructs a Lucene Query object by parsing a search string. The class uses
{@link StandardQueryParser}. It sets searchable fields in a {@link LuceneIndex} as default
fields.
geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/StringQueryProvider.java