Package org.apache.lucene.search

Examples of org.apache.lucene.search.Similarity


  private IndexSearcherWithPayload buildSearcher(SearchFactoryImplementor searchFactoryImplementor, Boolean forceScoring) {
    Map<Class<?>, EntityIndexBinding> builders = searchFactoryImplementor.getIndexBindings();
    List<IndexManager> targetedIndexes = new ArrayList<IndexManager>();
    Set<String> idFieldNames = new HashSet<String>();

    Similarity searcherSimilarity = null;
    //TODO check if caching this work for the last n list of indexedTargetedEntities makes a perf boost
    if ( indexedTargetedEntities.size() == 0 ) {
      // empty indexedTargetedEntities array means search over all indexed entities,
      // but we have to make sure there is at least one
      if ( builders.isEmpty() ) {
View Full Code Here


   * @param doc
   */
  public static void writeDoc(Directory dir, String segment, Document doc)
  {
    Analyzer analyzer = new WhitespaceAnalyzer();
    Similarity similarity = Similarity.getDefault();
    writeDoc(dir, analyzer, similarity, segment, doc);
  }
View Full Code Here

    private String cachedFieldName;
    private Similarity cachedSimilarity;
   
    public byte[] norms(String fieldName) {
      byte[] norms = cachedNorms;
      Similarity sim = getSimilarity();
      if (fieldName != cachedFieldName || sim != cachedSimilarity) { // not cached?
        Info info = getInfo(fieldName);
        int numTokens = info != null ? info.numTokens : 0;
        float n = sim.lengthNorm(fieldName, numTokens);
        byte norm = Similarity.encodeNorm(n);
        norms = new byte[] {norm};
       
        cachedNorms = norms;
        cachedFieldName = fieldName;
View Full Code Here

            );
  }

  public void testSimilarityFactory() {
    SolrCore core = h.getCore();
    Similarity similarity = core.getSchema().getSimilarity();
    assertTrue("wrong class", similarity instanceof MockConfigurableSimilarity);
    assertEquals("is there an echo?", ((MockConfigurableSimilarity)similarity).getPassthrough());
  }
View Full Code Here

    writer.setMergeFactor(indexConf.getMergeFactor());
    String similarityName = indexConf.getSimilarityName();
    if (similarityName != null) {
      try {
        Class<?> similarityClass = Class.forName(similarityName);
        Similarity similarity = (Similarity) similarityClass.newInstance();
        writer.setSimilarity(similarity);
      } catch (Exception e) {
        throw new IOException("Error in creating a similarty object "
            + similarityName);
      }
View Full Code Here

    writer.setMergeFactor(indexConf.getMergeFactor());
    String similarityName = indexConf.getSimilarityName();
    if (similarityName != null) {
      try {
        Class<?> similarityClass = Class.forName(similarityName);
        Similarity similarity = (Similarity) similarityClass.newInstance();
        writer.setSimilarity(similarity);
      } catch (Exception e) {
        throw new IOException("Error in creating a similarty object "
            + similarityName);
      }
View Full Code Here

    private String cachedFieldName;
    private Similarity cachedSimilarity;
   
    public byte[] norms(String fieldName) {
      byte[] norms = cachedNorms;
      Similarity sim = getSimilarity();
      if (fieldName != cachedFieldName || sim != cachedSimilarity) { // not cached?
        Info info = getInfo(fieldName);
        int numTokens = info != null ? info.numTokens : 0;
        float n = sim.lengthNorm(fieldName, numTokens);
        float boost = info != null ? info.getBoost() : 1.0f;
        n = n * boost; // see DocumentWriter.writeNorms(String segment)               
        byte norm = Similarity.encodeNorm(n);
        norms = new byte[] {norm};
       
View Full Code Here

    if (args.length < 3) {
      System.err.println("Usage: LengthNormModifier <index> <package.SimilarityClassName> <field1> [field2] ...");
      System.exit(1);
    }
   
    Similarity s = null;
    try {
      Class simClass = Class.forName(args[1]);
      s = (Similarity)simClass.newInstance();
    } catch (Exception e) {
      System.err.println("Couldn't instantiate similarity with empty constructor: " + args[1]);
View Full Code Here

    if (args.length < 3) {
      System.err.println("Usage: FieldNormModifier <index> <package.SimilarityClassName | -n> <field1> [field2] ...");
      System.exit(1);
    }

    Similarity s = null;
    if (!args[1].equals("-n")) {
      try {
        Class simClass = Class.forName(args[1]);
        s = (Similarity)simClass.newInstance();
      } catch (Exception e) {
View Full Code Here

    this.indexName = indexManager.getIndexName();
    LuceneIndexingParameters luceneParameters = indexManager.getIndexingParameters();
    this.indexParameters = luceneParameters.getIndexParameters();
    this.directoryProvider = indexManager.getDirectoryProvider();
    luceneParameters.applyToWriter( writerConfig );
    Similarity similarity = indexManager.getSimilarity();
    if ( similarity != null ) {
      writerConfig.setSimilarity( similarity );
    }
    writerConfig.setOpenMode( OpenMode.APPEND ); //More efficient to open
    //TODO remove this awful need to set a reference back again to the indexManager:
View Full Code Here

TOP

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

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.