lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Justin Swanhart <greenl...@gmail.com>
Subject Re: IndexWriter Constructor question
Date Wed, 27 Oct 2004 18:07:30 GMT
You could always modify your own local copy if you want to change the
behavior of the parameter.

or just do:
IndexWriter w = new IndexWriter(indexDirectory,
                                                new StandardAnalyzer(),
                                               
!(IndexReader.indexExists(indexDirectory))
                                                );

If you do that, then if an index exists then it will not be created,
otherwise it will be...

On Wed, 27 Oct 2004 12:26:29 -0500, Armbrust, Daniel C.
<armbrust.daniel@mayo.edu> wrote:
> Wouldn't it make more sense if the constructor for the IndexWriter always created an
index if it doesn't exist - and the boolean parameter should be clear (instead of create)
> 
> So instead of this (from javadoc):
> 
> IndexWriter
> 
> public IndexWriter(Directory d,
>                    Analyzer a,
>                    boolean create)
>             throws IOException
> 
>     Constructs an IndexWriter for the index in d. Text will be analyzed with a. If create
is true, then a new, empty index will be created in d, replacing the index already there,
if any.
> 
> Parameters:
>     d - the index directory
>     a - the analyzer to use
>     create - true to create the index or overwrite the existing one; false to append
to the existing index
> Throws:
>     IOException - if the directory cannot be read/written to, or if it does not exist,
and create is false
> 
> We would have this:
> 
> IndexWriter
> 
> public IndexWriter(Directory d,
>                    Analyzer a,
>                    boolean clear)
>             throws IOException
> 
>     Constructs an IndexWriter for the index in d. Text will be analyzed with a. If clear
is true, and a index exists at location d, then it will be erased, and a new, empty index
will be created in d.
> 
> Parameters:
>     d - the index directory
>     a - the analyzer to use
>     clear - true to overwrite the existing one; false to append to the existing index
> Throws:
>     IOException - if the directory cannot be read/written to, or if it does not exist.
> 
> Its current behavior is kind of annoying, because I have an app that should never clear
an existing index, it should always append.  So I want create set to false.  But when I am
starting a brand new index, then I have to change the create flag to keep it from throwing
an exception...  I guess for now I will have to write code to check if a index actually has
content yet, and if it doesn't, change the flag on the fly.
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: lucene-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: lucene-user-help@jakarta.apache.org
> 
>

---------------------------------------------------------------------
To unsubscribe, e-mail: lucene-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: lucene-user-help@jakarta.apache.org


Mime
View raw message