Class QueryBuilder

java.lang.Object
com.easydesk.lucene.util.QueryBuilder
All Implemented Interfaces:
IndexConstants

public class QueryBuilder extends Object implements IndexConstants
QueryInfo 를 Lucene Query 로 변환한다.

이 class 는 thread-safe 하다. (QueryParser 는 호출할 때마다 새로 만든다.)

Author:
조 영 호
  • Constructor Details

    • QueryBuilder

      public QueryBuilder(org.apache.lucene.analysis.Analyzer analyzer)
      Creates a new QueryBuilder object.
      Parameters:
      analyzer - text field 를 parse 할 analyzer
  • Method Details

    • toQuery

      public org.apache.lucene.search.Query toQuery(QueryInfo info) throws org.apache.lucene.queryparser.classic.ParseException
      Parameters:
      info - query 정보
      Returns:
      Query, 조건이 없으면 아무것도 찾지 않는 query
      Throws:
      org.apache.lucene.queryparser.classic.ParseException - query string 오류
    • toQuery

      public org.apache.lucene.search.Query toQuery(QueryInfo[] info) throws org.apache.lucene.queryparser.classic.ParseException
      여러 QueryInfo 를 각각의 QueryInfo.getType() 으로 결합한다.
      Parameters:
      info - query 정보 배열
      Returns:
      Query
      Throws:
      org.apache.lucene.queryparser.classic.ParseException - query string 오류
    • moduleFilter

      public static org.apache.lucene.search.Query moduleFilter(BitSet moduleFilter)
      module filter query 를 만든다.
      Parameters:
      moduleFilter - 허용된 module id
      Returns:
      filter query