[ 
https://issues.apache.org/jira/browse/GEODE-3723?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16191271#comment-16191271
 ] 

ASF subversion and git services commented on GEODE-3723:
--------------------------------------------------------

Commit 1fd61c2ab00542ad98564ab7271794a0141630a5 in geode's branch 
refs/heads/develop from [~jens.deppe]
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=1fd61c2 ]

GEODE-3723: Remove Optional<String> from getRequiredPermissions


> Reconsider using Optional<String> as the parameter for getRequiredPermissions
> -----------------------------------------------------------------------------
>
>                 Key: GEODE-3723
>                 URL: https://issues.apache.org/jira/browse/GEODE-3723
>             Project: Geode
>          Issue Type: Bug
>          Components: security
>            Reporter: Dan Smith
>             Fix For: 1.3.0
>
>
> The new method on function, getRequiredPermissions takes an Optional<String> 
> as parameter.
> At point point, we added a parameterized type to the function interface 
> (Function<T>). However, if someone tries to implement Function without the 
> type (eg implements Function instead of implemments Function<Object>), then 
> they get the below compilation error:
> {noformat}
> Error:(85, 41) java: name clash: 
> getRequiredPermissions(java.util.Optional<java.lang.String>) in 
> org.apache.geode.cache.lucene.internal.distributed.WaitUntilFlushedFunction 
> and getRequiredPermissions(java.util.Optional<java.lang.String>) in 
> org.apache.geode.cache.execute.Function have the same erasure, yet neither 
> overrides the other
> {noformat}
> In addition to this annoyance Optional is generally discouraged as a 
> parameter to a method in favor of method overloading. At least my IDE is 
> providing a warning to that effect. Maybe having an overloaded method for 
> getRequiredPermissions would be better?



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to