Skip to content

Commit

Permalink
...
Browse files Browse the repository at this point in the history
  • Loading branch information
bleujin committed Nov 7, 2014
1 parent abd77be commit 52d5b03
Show file tree
Hide file tree
Showing 5 changed files with 40 additions and 2 deletions.
1 change: 1 addition & 0 deletions src/net/ion/nsearcher/common/WriteDocument.java
Expand Up @@ -19,6 +19,7 @@
import net.ion.framework.parse.gson.JsonElement;
import net.ion.framework.parse.gson.JsonObject;
import net.ion.framework.parse.gson.JsonUtil;
import net.ion.framework.util.Debug;
import net.ion.framework.util.ObjectId;
import net.ion.framework.util.StringUtil;
import net.ion.nsearcher.common.MyField.MyFieldType;
Expand Down
6 changes: 5 additions & 1 deletion src/net/ion/nsearcher/index/IndexSession.java
Expand Up @@ -8,6 +8,7 @@
import net.ion.nsearcher.common.FieldIndexingStrategy;
import net.ion.nsearcher.common.SearchConstant;
import net.ion.nsearcher.common.WriteDocument;
import net.ion.nsearcher.search.SearchRequest;
import net.ion.nsearcher.search.SingleSearcher;

import org.apache.lucene.analysis.Analyzer;
Expand Down Expand Up @@ -66,8 +67,11 @@ private void release() {
}


Document findById(String id) throws IOException{
return searcher.findById(id) ;
}

public WriteDocument newDocument(String docId){
public WriteDocument newDocument(String docId) {
return new WriteDocument(this, docId) ;
}

Expand Down
15 changes: 15 additions & 0 deletions src/net/ion/nsearcher/search/SingleSearcher.java
Expand Up @@ -11,18 +11,23 @@
import java.util.concurrent.locks.Lock;

import net.ion.framework.util.Debug;
import net.ion.nsearcher.common.IKeywordField;
import net.ion.nsearcher.common.ReadDocument;
import net.ion.nsearcher.config.Central;
import net.ion.nsearcher.config.SearchConfig;
import net.ion.nsearcher.reader.InfoReader;

import org.apache.lucene.document.Document;
import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.Term;
import org.apache.lucene.search.Filter;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.ScoreDoc;
import org.apache.lucene.search.Sort;
import org.apache.lucene.search.SortField;
import org.apache.lucene.search.SortField.Type;
import org.apache.lucene.search.TermQuery;
import org.apache.lucene.search.TopDocs;

public class SingleSearcher implements Closeable, ISearchable {
Expand Down Expand Up @@ -61,6 +66,16 @@ public SearchResponse search(SearchRequest sreq, Filter filters) throws IOExcept
}
}

public Document findById(String id) throws IOException{
TopDocs tdocs = isearcher.search(new TermQuery(new Term(IKeywordField.DocKey, id)), 1);
ScoreDoc[] sdocs = tdocs.scoreDocs ;
for(ScoreDoc doc : sdocs){
return dreader.document(doc.doc) ;
}
return null ;
}


public int totalCount(SearchRequest sreq, Filter filters) {
try {
// reloadReader() ;
Expand Down
3 changes: 2 additions & 1 deletion test/net/ion/nsearcher/common/TestMyFileld.java
@@ -1,5 +1,6 @@
package net.ion.nsearcher.common;

import java.io.IOException;
import java.util.List;
import java.util.Map;

Expand Down Expand Up @@ -35,7 +36,7 @@ public WriteDocument handle(IndexSession isession) throws Exception {
cen.close() ;
}

private WriteDocument createSampleDoc(IndexSession isession) {
private WriteDocument createSampleDoc(IndexSession isession) throws IOException {
Map<String, Object> address = MapUtil.chainKeyMap().put("city", "seoul").put("bun", 20).toMap() ;
List<String> names = ListUtil.toList("jin", "hero") ;
Map<String, Object> values = MapUtil.chainKeyMap().put("name", "bleujin").put("address", address).put("names", names) .toMap() ;
Expand Down
17 changes: 17 additions & 0 deletions test/net/ion/nsearcher/index/TestIndexSession.java
Expand Up @@ -49,6 +49,23 @@ public void testCommitUserData() throws Exception {
}


public void testBeforeCommit() throws Exception {
final Central cs = CentralConfig.newRam().build() ;

cs.newIndexer().index(new IndexJob<Void>() {
@Override
public Void handle(IndexSession isession) throws Exception {
isession.newDocument("bleujin").keyword("name", "bleujin").number("age", 20).update() ;

Debug.line(isession.newDocument("bleujin").fields()) ;
return null;
}
}) ;
cs.close();
}



}


Expand Down

0 comments on commit 52d5b03

Please sign in to comment.