[ 
http://issues.apache.org/jira/browse/JCR-415?page=comments#action_12420293 ] 

Marcel Reutegger commented on JCR-415:
--------------------------------------

Jukka wrote:
> I think it would make more design sense to try to postpone the creation of 
> the Document instances
> instead of delaying text extraction. But I'm not too familiar with the 
> details, so I'm OK with adding lazy
> reading to the mix. In any case I think it's best to layer the lazy reading 
> on top of the TextExtractor interface
> instead of below it. A utility class like the following could achieve this as 
> long as the given InputStream
> remains valid until the document has been read.

Yes, you are right. I thought I could get away with the dirty solution ;)
While going through your patch I was actually also thinking about a design that 
should create the document
only when it is really added to the index.
For now we can maybe use the TextExtractorReader you proposed and then in a 
next step change the design
to create the Document in a later stage of the indexing process.

> Enhance indexing of binary content
> ----------------------------------
>
>          Key: JCR-415
>          URL: http://issues.apache.org/jira/browse/JCR-415
>      Project: Jackrabbit
>         Type: Improvement

>   Components: indexing
>     Versions: 1.0, 1.0.1, 0.9
>     Reporter: Marcel Reutegger
>     Priority: Minor
>      Fix For: 1.1
>  Attachments: jackrabbit-extractor-r420472.patch, 
> jackrabbit-query-r420472.patch, 
> org.apache.jackrabbit.core.query-extractor.jpg, 
> org.apache.jackrabbit.core.query.lucene-extractor.jpg, 
> org.apache.jackrabbit.extractor.jpg
>
> Indexing of binary content should be enhanced in order to allow either 
> configuration what fields are indexed or provide better support for custom 
> NodeIndexer implementations.
> The current design has a couple of flaws that should be addressed at the same 
> time:
> - Reader instances are requested from the text filters even though the reader 
> might never be used
> - only jcr:data properties of nt:resource nodes are fulltext indexed
> - It is up to the text filter implementation to decide the lucene field name 
> for the text representation, responsibility should be moved to the 
> NodeIndexer. A text filter should only provide a Reader instance.
> With those changes a custom NodeIndexer can then decide if a binary property 
> has one or more representations in the index.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to