You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lenya.apache.org by mi...@apache.org on 2004/08/02 08:28:44 UTC

cvs commit: cocoon-lenya/src/java/org/apache/lenya/lucene/index AbstractIndexer.java

michi       2004/08/01 23:28:44

  Modified:    src/java/org/apache/lenya/lucene/index AbstractIndexer.java
  Log:
  create index if it does not exist yet
  
  Revision  Changes    Path
  1.22      +20 -13    cocoon-lenya/src/java/org/apache/lenya/lucene/index/AbstractIndexer.java
  
  Index: AbstractIndexer.java
  ===================================================================
  RCS file: /home/cvs/cocoon-lenya/src/java/org/apache/lenya/lucene/index/AbstractIndexer.java,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- AbstractIndexer.java	2 Aug 2004 00:19:42 -0000	1.21
  +++ AbstractIndexer.java	2 Aug 2004 06:28:44 -0000	1.22
  @@ -113,25 +113,32 @@
           File indexDir = new File(config.resolvePath(config.getIndexDir()));
           log.debug("Index dir: " + indexDir);
   
  +
   	String id = IndexIterator.createID(file, dumpDir);
   
  -	// Delete from index
  -        IndexReader reader = IndexReader.open(indexDir.getAbsolutePath());
  -	Term term = new Term("id", id);
  -        log.debug(term.toString());
  -        int numberOfDeletedDocuments = reader.delete(term);
  -        if (numberOfDeletedDocuments == 1) {
  -            log.info("Document has been deleted: " + term);
  +	boolean createNewIndex = false;
  +        if (!IndexReader.indexExists(indexDir)) {
  +            log.warn("Index does not exist yet: " + indexDir);
  +            createNewIndex = true;
           } else {
  -            log.warn("No such document found in this index: " + term);
  +	    // Delete from index
  +            IndexReader reader = IndexReader.open(indexDir.getAbsolutePath());
  +	    Term term = new Term("id", id);
  +            log.debug(term.toString());
  +            int numberOfDeletedDocuments = reader.delete(term);
  +            if (numberOfDeletedDocuments == 1) {
  +                log.info("Document has been deleted: " + term);
  +            } else {
  +                log.warn("No such document found in this index: " + term);
  +            }
  +            //log.debug("Number of deleted documents: " + numberOfDeletedDocuments);
  +            //log.debug("Current number of documents in this index: " + reader.numDocs());
  +            reader.close();
           }
  -        //log.debug("Number of deleted documents: " + numberOfDeletedDocuments);
  -        //log.debug("Current number of documents in this index: " + reader.numDocs());
  -        reader.close();
   
   	// Append to index
           Document doc = getDocumentCreator().getDocument(new File(dumpDir, id), dumpDir);
  -        IndexWriter writer = new IndexWriter(indexDir, new StandardAnalyzer(), false);
  +        IndexWriter writer = new IndexWriter(indexDir, new StandardAnalyzer(), createNewIndex);
           writer.maxFieldLength = 1000000;
           writer.addDocument(doc);
           //log.debug("Document has been added: " + doc);
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: lenya-cvs-unsubscribe@cocoon.apache.org
For additional commands, e-mail: lenya-cvs-help@cocoon.apache.org