Package org.apache.lucene.search

Examples of org.apache.lucene.search.Weight


      Sort sort = getSort();
      TopDocs hits;
      final int numHits = numHits();
      if (numHits > 0) {
        if (sort != null) {
          Weight w = q.weight(searcher);
          TopFieldCollector collector = TopFieldCollector.create(sort, numHits,
                                                                 true, withScore(),
                                                                 withMaxScore(),
                                                                 !w.scoresDocsOutOfOrder());
          searcher.search(w, null, collector);
          hits = collector.topDocs();
        } else {
          hits = searcher.search(q, numHits);
        }
View Full Code Here


    // Delete by query
    IndexSearcher searcher = new IndexSearcher(reader);
    for (Entry<Query, Integer> entry : deletesFlushed.queries.entrySet()) {
      Query query = entry.getKey();
      int limit = entry.getValue().intValue();
      Weight weight = query.weight(searcher);
      Scorer scorer = weight.scorer(reader, true, false);
      if (scorer != null) {
        while(true)  {
          int doc = scorer.nextDoc();
          if (((long) docIDStart) + doc >= limit)
            break;
View Full Code Here

    LuceneIndexHelper.fieldShouldExistInIndex(searcher, idField);
    for (String field : lucene2SeqConfiguration.getFields()) {
        LuceneIndexHelper.fieldShouldExistInIndex(searcher, field);
    }

    Weight weight = lucene2SeqConfiguration.getQuery().createWeight(searcher);
    scorer = weight.scorer(segmentReader.getContext(), false, false, null);
    if (scorer == null) {
      throw new IllegalArgumentException("Could not create query scorer for query: "
          + lucene2SeqConfiguration.getQuery());
    }
  }
View Full Code Here

   * @throws IOException in case a search exception occurs
   */
  private void updateTopDocs(int n) throws IOException {
    int totalMaxDocs = searcher.getSearcher().maxDoc();
    final int maxDocs = Math.min( n, totalMaxDocs );
    final Weight weight = preparedQuery.weight( searcher.getSearcher() );

    final TopDocsCollector<?> topDocCollector;
    final TotalHitCountCollector hitCountCollector;
    Collector collector = null;
    if ( maxDocs != 0 ) {
View Full Code Here

        res = browser.browse(req);
        hits = res.getHits();
      }
      else {
        Map<String, FacetAccessible> facetCollectors = new HashMap<String, FacetAccessible>();
        Weight w = req.getQuery().createWeight(browser);
        browser.browse(req, w, collector, facetCollectors, offset);

        try {
          /**
           * A custom collector must implement topDocs() method and a getHitsFeatures() method.
View Full Code Here

    }
  }

  @Override
  public void search(Query query, Filter filter, Collector collector) throws IOException {
    Weight weight = createNormalizedWeight(query);
    search(weight, filter, collector, 0, null);
  }
View Full Code Here

    LuceneIndexHelper.fieldShouldExistInIndex(segmentReader, idField);
    for (String field : lucene2SeqConfiguration.getFields()) {
        LuceneIndexHelper.fieldShouldExistInIndex(segmentReader, field);
    }

    Weight weight = lucene2SeqConfiguration.getQuery().createWeight(searcher);
    scorer = weight.scorer(segmentReader.getContext(), false, false, null);
    if (scorer == null) {
      throw new IllegalArgumentException("Could not create query scorer for query: "
          + lucene2SeqConfiguration.getQuery());
    }
  }
View Full Code Here

   * @throws IOException in case a search exception occurs
   */
  private void updateTopDocs(int n) throws IOException {
    int totalMaxDocs = searcher.getSearcher().maxDoc();
    final int maxDocs = Math.min( n, totalMaxDocs );
    final Weight weight = preparedQuery.weight( searcher.getSearcher() );

    TopDocsCollector<?> topDocCollector = createTopDocCollector( maxDocs, weight );
    Collector collector = decorateWithTimeOutCollector( topDocCollector );

    boolean timeoutNow = isImmediateTimeout();
View Full Code Here

   * @throws IOException in case a search exception occurs
   */
  private void updateTopDocs(int n) throws IOException {
    int totalMaxDocs = searcher.getSearcher().maxDoc();
    final int maxDocs = Math.min( n, totalMaxDocs );
    final Weight weight = preparedQuery.weight( searcher.getSearcher() );

    final TopDocsCollector<?> topDocCollector;
    final TotalHitCountCollector hitCountCollector;
    Collector collector = null;
    if ( maxDocs != 0 ) {
View Full Code Here

    iter = deletesFlushed.queries.entrySet().iterator();
    while(iter.hasNext()) {
      Entry entry = (Entry) iter.next();
      Query query = (Query) entry.getKey();
      int limit = ((Integer) entry.getValue()).intValue();
      Weight weight = query.weight(searcher);
      Scorer scorer = weight.scorer(reader, true, false);
      if (scorer != null) {
        while(true)  {
          int doc = scorer.nextDoc();
          if (((long) docIDStart) + doc >= limit)
            break;
View Full Code Here

TOP

Related Classes of org.apache.lucene.search.Weight

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.