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

Matt Benson commented on LANG-922:
----------------------------------

I get a bit bummed out with the suggestions of loong method names.  What if we 
were to shift gears and think of a family of {{ArrayUtils}} methods to count 
occurrences of an item in an array? e.g. {{<T> ArrayUtils#count(T item, T... 
array)}} and primitive overloaded versions? Thus _old_ 
{{BooleanUtils.xor(args)}} would now be {{ArrayUtils.count(true, args) == 1}}.

Thoughts?

> Add isOneTrue(booleans...) to BooleanUtils to preserve old behavior of 
> BooleanUtils.xor(booleans...)
> ----------------------------------------------------------------------------------------------------
>
>                 Key: LANG-922
>                 URL: https://issues.apache.org/jira/browse/LANG-922
>             Project: Commons Lang
>          Issue Type: Bug
>          Components: lang.*
>            Reporter: Benedikt Ritter
>            Assignee: Benedikt Ritter
>             Fix For: 3.2
>
>
> The old implementation (prior to r1532476) of BooleanUtils.xor(boolean...) 
> checked if the provided array contained exactly one boolean with value true. 
> This was changed because it is not the correct behavior for an XOR operation. 
> To preserve the behavior we should add BooleanUtils.isOneTrue(boolean...) and 
> BooleanUtils.isOneTrue(Boolean...) (and possibly the equivalents for 
> isOneFalse).



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to