[ 
https://issues.apache.org/jira/browse/LUCENE-2310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12851849#action_12851849
 ] 

Uwe Schindler commented on LUCENE-2310:
---------------------------------------

I am also +1 on the indexer interface.

I just repeat myself: We still need TokenStream, an AttributeSource alone is 
too less. But that is away from that issue: Indexable provides an iterator of 
fields that consist of name and TokenStream and some options (possibly like 
omitNorms). If you just dont want to have close() in TokenStream, let's remove 
it. end() is needed for offsets, the indexer need to take care. 
incrementToken() is the iterator approach. What else is there? Reset may be 
invisible to indexer (I would refactor that and would make a subclass of 
TokenStream that supports reset, ResetableTokenStream - like Tokenizer supports 
reset(Reader), which is also a subclass). The abstract TokenStream then is only 
consisting of incrementToken() and end() + the AttributeSource access methods. 
Attributes needed by indexer are only TermToBytesRefAttribute, 
PositionIncrementAtt, OffsetAttribute and PayloadAttribute.

> Reduce Fieldable, AbstractField and Field complexity
> ----------------------------------------------------
>
>                 Key: LUCENE-2310
>                 URL: https://issues.apache.org/jira/browse/LUCENE-2310
>             Project: Lucene - Java
>          Issue Type: Sub-task
>          Components: Index
>            Reporter: Chris Male
>         Attachments: LUCENE-2310-Deprecate-AbstractField-CleanField.patch, 
> LUCENE-2310-Deprecate-AbstractField.patch, 
> LUCENE-2310-Deprecate-AbstractField.patch, 
> LUCENE-2310-Deprecate-AbstractField.patch, 
> LUCENE-2310-Deprecate-DocumentGetFields-core.patch, 
> LUCENE-2310-Deprecate-DocumentGetFields.patch, 
> LUCENE-2310-Deprecate-DocumentGetFields.patch
>
>
> In order to move field type like functionality into its own class, we really 
> need to try to tackle the hierarchy of Fieldable, AbstractField and Field.  
> Currently AbstractField depends on Field, and does not provide much more 
> functionality that storing fields, most of which are being moved over to 
> FieldType.  Therefore it seems ideal to try to deprecate AbstractField (and 
> possible Fieldable), moving much of the functionality into Field and 
> FieldType.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: java-dev-h...@lucene.apache.org

Reply via email to