[
https://issues.apache.org/jira/browse/LUCENE-2315?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12844884#action_12844884
]
Shai Erera commented on LUCENE-2315:
------------------------------------
Ok I see. I think that instead of creating another class to introduce new users
to, we can stick w/ AS and make all the methods that no one shouldn't have any
reason to ever extend final. We can keep the methods that define the 'behavior'
not final, though I don't see any at the moment. Maybe
getAttributeImplsIterator.
But if will make sense to factor out just these methods to a separate class, so
that custom AS don't need to be a sub-class of AS for just that purpose, then I
think it'll also be ok.
> AttributeSource's methods for accessing attributes should be final, else its
> easy to corrupt the internal states
> ----------------------------------------------------------------------------------------------------------------
>
> Key: LUCENE-2315
> URL: https://issues.apache.org/jira/browse/LUCENE-2315
> Project: Lucene - Java
> Issue Type: Bug
> Affects Versions: 2.9, 2.9.1, 2.9.2, 3.0, 3.0.1
> Reporter: Uwe Schindler
> Priority: Minor
> Fix For: 3.1
>
>
> The methods that operate and modify the internal maps of AttributeSource
> should be final, which is a backwards break. But anybody that overrides such
> methods simply creates a buggy AS either case.
> I want to makeall impls final (in general the class should be final at all,
> but it is made for extension in TokenStream). So its important that the
> implementations are final!
--
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: [email protected]
For additional commands, e-mail: [email protected]