You mean d.get("Id"); ?

Otis

--- [EMAIL PROTECTED] wrote:
> I am just getting started with Lucene and I think I have a problem
> understanding  some basic concepts.
> 
> I am using two-part identifiers to uniquely identify a document in
> the
> index.  So whenever I want to index a document, I first want to find
> and
> delete the old form.
> 
> To find it, I intend to use:
> 
>     BooleanQuery findOurs = new BooleanQuery();
>     findOurs.add(new TermQuery(new Term("Id", id)), true, false);
>     findOurs.add(new TermQuery(new Term("Domain", domain)), true,
> false);
> 
>     System.out.println("Deleting document matching: \"" +
>                        findOurs.toString("") + '"');
>     
>     Searcher searcher = new IndexSearcher(directory);
>     Hits hits = searcher.search(findOurs);
> 
>     // Assert: hits.length() <= 1
> 
>     for (int i = 0 ; i < hits.length() && i < 10; i++) {
>       Document d = hits.doc(i);
> 
>       // Now what can I do to find document id?
> 
>       int id = ??????
>       searcher.delete(id);
>     }
> 
> But I can't discover how to convert a search result into a document
> id.  It
> is recorded in the private HitDoc class, but since it is not publicly
> accessible, there must be a reason why it would not work to add a
> public
> getter for it.
> 
> Is there an alternative way that I can do this?  My first thought is
> to
> define a Field.Keyword("composite-key", domain + "\u0000" + id). 
> This
> would allow me to use the delete(Term) interface to delete the key.
> 
> -- 
> Thanks, Adrian.
> 
> --
> To unsubscribe, e-mail:  
> <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail:
> <mailto:[EMAIL PROTECTED]>
> 


__________________________________________________
Do you Yahoo!?
Faith Hill - Exclusive Performances, Videos & More
http://faith.yahoo.com

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to