lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Steve Rowe (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (LUCENE-4642) Add create(AttributeFactory) to TokenizerFactory and subclasses with ctors taking AttributeFactory, and remove Tokenizer's and subclasses' ctors taking AttributeSource
Date Fri, 15 Mar 2013 04:34:13 GMT

     [ https://issues.apache.org/jira/browse/LUCENE-4642?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Steve Rowe updated LUCENE-4642:
-------------------------------

    Attachment: LUCENE-4642-single-create-method-on-TokenizerFactory-subclasses.patch

{quote}
bq. In this patch there is a new even more horrible hack in TrieTokenizer(Factory) - the AttributeFactory
argument to the TrieTokenizer constructor is ignored!!! Surely there a better way???:
Just at a quick glance, I think it should be passed to TrieTokenizer.getNumericTokenStream(int),
which should instead take (AttFactory, int), and call: public NumericTokenStream(AttributeFactory
factory, final int precisionStep) ?
This way the numerictokenstream is created with the requested attfactory. TrieTokenizer shouldnt
take factory at all since its just this 'layer on top' that pretends to be a tokenizer over
it?
{quote}

Cool, that works, thanks; patch attached that does this.

Committing shortly.

                
> Add create(AttributeFactory) to TokenizerFactory and subclasses with ctors taking AttributeFactory,
and remove Tokenizer's and subclasses' ctors taking AttributeSource
> -----------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: LUCENE-4642
>                 URL: https://issues.apache.org/jira/browse/LUCENE-4642
>             Project: Lucene - Core
>          Issue Type: Improvement
>          Components: modules/analysis
>    Affects Versions: 4.1
>            Reporter: Renaud Delbru
>            Assignee: Steve Rowe
>              Labels: analysis, attribute, tokenizer
>             Fix For: 4.3
>
>         Attachments: LUCENE-4642.patch, LUCENE-4642.patch, LUCENE-4642.patch, LUCENE-4642.patch,
LUCENE-4642-single-create-method-on-TokenizerFactory-subclasses.patch, LUCENE-4642-single-create-method-on-TokenizerFactory-subclasses.patch,
TrieTokenizerFactory.java.patch
>
>
> All tokenizer implementations have a constructor that takes a given AttributeSource as
parameter (LUCENE-1826).  These should be removed.
> TokenizerFactory does not provide an API to create tokenizers with a given AttributeFactory,
but quite a few tokenizers have constructors that take an AttributeFactory.  TokenizerFactory
should add a create(AttributeFactory) method, as should subclasses for tokenizers with AttributeFactory
accepting ctors.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

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


Mime
View raw message