[ https://issues.apache.org/jira/browse/LUCENE-1835?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12745860#action_12745860 ]
Uwe Schindler commented on LUCENE-1835: --------------------------------------- I forget to mention, AttributeImpl now always implements Attribute (which is an empty interface). addAttributeImpl was changed to ignore this empty interface when adding all interfaces to the Maps. By that it is possible to use AttributeImpl without casting to Attribute. > Signature changes in AttributeSource for better Generics support of > AddAttribute/getAttribute > --------------------------------------------------------------------------------------------- > > Key: LUCENE-1835 > URL: https://issues.apache.org/jira/browse/LUCENE-1835 > Project: Lucene - Java > Issue Type: Task > Components: Analysis > Affects Versions: 2.9 > Reporter: Uwe Schindler > Assignee: Uwe Schindler > Fix For: 2.9 > > Attachments: LUCENE-1835.patch > > > The last update of Attribute API using AttributeImpl as implementation oif > Attributes changed the API a little bit. This change leads to the fact, that > in Java 1.5 using generics we are no longer able to add Attributes without > casting. addAttribute and getAttribute should return the Attribute interface > because the implementation of the attribute is not interesting to the caller. > By that in 1.5 using generics, one could add a TermAttribute without casting > using: > {code} > TermAttribute termAtt = addAttribute(TermAttribute.class); > {code} > The signature to do this is: > {code} > public K addAttribute(Class<K extends Attribute>) > {code} > The attached patch applies the mentioned change to the signature (without > generic, only returning Attribute). No other code cahnges are needed, as > current code always casts the result to the requested interface. I also added > the 1.5 method signature for all these methods to the javadocs. > All tests pass. -- 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