Uploaded image for project: 'Lucene - Core'
  1. Lucene - Core
  2. LUCENE-7902

Refactoring of IndexSearcher

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: core/search
    • Labels:
      None
    • Lucene Fields:
      New

      Description

      Hello everyone.
      I was analyzing the modularization of some classes, and I identified that the class IndexSearcher has an opportunity for cohesion improvement.
      The class IndexWriter was in the same situation and the problem was solved as follows: The IndexWriterConfig class was created, and several get() and set() methods that were used only to configure the class parameters were moved from IndexWriter to IndexWriterConfig.
      The new class was then accessed through an instance variable in IndexWriter. This strategy has cleaned and improved IndexWriter cohesion.
      With this in mind, I would recommend creating a new class: IndexSearcherConfig , and moving the following methods:
      setDefaultQueryCachingPolicy
      getDefaultQueryCachingPolicy
      getQueryCachingPolicy
      setQueryCachingPolicy
      setQueryCache
      getQueryCache
      setDefaultQueryCache
      getDefaultQueryCache
      setSimilarity
      getSimilarity
      from the IndexSearcher.
      Those parameters accessed by an instance variable in the IndexSearcher.
      Moreover, the orthogonality is the design would be enhanced.

      What do you think about that?

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              joaoplm João Paulo Lemes Machado
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: