Example usage for org.apache.lucene.analysis.miscellaneous PerFieldAnalyzerWrapper PerFieldAnalyzerWrapper

List of usage examples for org.apache.lucene.analysis.miscellaneous PerFieldAnalyzerWrapper PerFieldAnalyzerWrapper

Introduction

In this page you can find the example usage for org.apache.lucene.analysis.miscellaneous PerFieldAnalyzerWrapper PerFieldAnalyzerWrapper.

Prototype

public PerFieldAnalyzerWrapper(Analyzer defaultAnalyzer) 

Source Link

Document

Constructs with default analyzer.

Usage

From source file:com.mathworks.xzheng.analysis.queryparser.AnalysisParalysisTest.java

License:Apache License

public void testAnalyzer() throws Exception {
    Analyzer analyzer = new StandardAnalyzer(Version.LUCENE_46);
    String queryString = "category:/philosophy/eastern";

    Query query = new QueryParser(Version.LUCENE_46, "contents", analyzer).parse(queryString);
    assertEquals("path got split, yikes!", "category:\"philosophy eastern\"", query.toString("contents"));

    PerFieldAnalyzerWrapper perFieldAnalyzer = new PerFieldAnalyzerWrapper(analyzer);
    perFieldAnalyzer.addAnalyzer("category", new WhitespaceAnalyzer(Version.LUCENE_46));
    query = new QueryParser(Version.LUCENE_46, "contents", perFieldAnalyzer).parse(queryString);
    assertEquals("leave category field alone", "category:/philosophy/eastern", query.toString("contents"));
}

From source file:com.qwazr.search.bench.LuceneCommonIndex.java

License:Apache License

LuceneCommonIndex(final Path rootDirectory, final String schemaName, final String indexName,
        final double ramBufferSize, final boolean useCompoundFile) throws IOException {

    final Path schemaDirectory = Files.createDirectory(rootDirectory.resolve(schemaName));
    this.indexDirectory = Files.createDirectory(schemaDirectory.resolve(indexName));
    this.luceneDirectory = indexDirectory.resolve("data");
    this.dataDirectory = FSDirectory.open(luceneDirectory);
    final IndexWriterConfig indexWriterConfig = new IndexWriterConfig(
            new PerFieldAnalyzerWrapper(new StandardAnalyzer()));
    indexWriterConfig.setOpenMode(IndexWriterConfig.OpenMode.CREATE_OR_APPEND);
    indexWriterConfig.setRAMBufferSizeMB(ramBufferSize);

    final ConcurrentMergeScheduler mergeScheduler = new ConcurrentMergeScheduler();
    mergeScheduler.setMaxMergesAndThreads(MAX_SSD_MERGE_THREADS, MAX_SSD_MERGE_THREADS);
    indexWriterConfig.setMergeScheduler(mergeScheduler);
    indexWriterConfig.setUseCompoundFile(useCompoundFile);

    final TieredMergePolicy mergePolicy = new TieredMergePolicy();
    indexWriterConfig.setMergePolicy(mergePolicy);

    // We use snapshots deletion policy
    final SnapshotDeletionPolicy snapshotDeletionPolicy = new SnapshotDeletionPolicy(
            indexWriterConfig.getIndexDeletionPolicy());
    indexWriterConfig.setIndexDeletionPolicy(snapshotDeletionPolicy);

    this.indexWriter = new IndexWriter(this.dataDirectory, indexWriterConfig);
    this.localReplicator = new LocalReplicator();
}

From source file:fi.semantum.strategia.Lucene.java

License:Open Source License

private static Analyzer getAnalyzer() {
    return new PerFieldAnalyzerWrapper(new LowerCaseWhitespaceAnalyzer(Version.LUCENE_4_9));
}

From source file:lia.chapter4.AnalysisParalysisTest.java

License:Apache License

public void testAnalyzer() throws Exception {
    Analyzer analyzer = new StandardAnalyzer();
    String queryString = "category:/philosophy/eastern";

    Query query = new QueryParser("contents", analyzer).parse(queryString);
    assertEquals("path got split, yikes!", "category:\"philosophy eastern\"", query.toString("contents"));

    PerFieldAnalyzerWrapper perFieldAnalyzer = new PerFieldAnalyzerWrapper(analyzer);

    query = new QueryParser("contents", perFieldAnalyzer).parse(queryString);
    assertEquals("leave category field alone", "category:/philosophy/eastern", query.toString("contents"));
}

From source file:org.wso2.carbon.analytics.dataservice.core.indexing.AnalyticsDataIndexer.java

License:Open Source License

private Analyzer getPerFieldAnalyzerWrapper(Map<String, ColumnDefinition> indices)
        throws AnalyticsIndexException {
    Analyzer perFieldAnalyzerWrapper;//from  w w  w . j ava2  s . co  m
    Map<String, Analyzer> analyzersPerField = new HashMap<>();
    for (Map.Entry<String, ColumnDefinition> index : indices.entrySet()) {
        if (index.getValue().getType() == AnalyticsSchema.ColumnType.STRING) {
            analyzersPerField.put(Constants.NON_TOKENIZED_FIELD_PREFIX + index.getKey(), new KeywordAnalyzer());
        }
    }
    if (analyzersPerField.isEmpty()) {
        perFieldAnalyzerWrapper = new PerFieldAnalyzerWrapper(this.indexerInfo.getLuceneAnalyzer());
    } else {
        perFieldAnalyzerWrapper = new PerFieldAnalyzerWrapper(this.indexerInfo.getLuceneAnalyzer(),
                analyzersPerField);
    }
    return perFieldAnalyzerWrapper;
}