[ 
https://issues.apache.org/jira/browse/BEANUTILS-352?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12735356#action_12735356
 ] 

Henri Yandell commented on BEANUTILS-352:
-----------------------------------------

Moved over to BeanUtils as BeanComparator lives there. At first glance seems 
like a fine utility method to save developer time.

> Sorting the collection based on bean property in "CollectionUtils"
> ------------------------------------------------------------------
>
>                 Key: BEANUTILS-352
>                 URL: https://issues.apache.org/jira/browse/BEANUTILS-352
>             Project: Commons BeanUtils
>          Issue Type: Improvement
>          Components: Bean-Collections
>         Environment: JDK 1.5 and above , Apache Collections 
>            Reporter: Ganesh Gowtham
>            Priority: Minor
>
> Hi Folks , 
> Thanks for your good work done in Collection Framework .
> It would be good if you add functionality to sort the collection based on 
> bean's property name . ( CollectionsUtils,java)
> For example i have List<Person> , i should be able to sort (ascending or 
> desending ) based on person's salary (or) firstName (or) lastName (or) may be 
> the combination of above 
> below is the equivalent in SQL 
> (select * from person order by salary,firtsName,lastName asc ) 
> method looks like 
> public static <T> void sort(List<T> list, boolean isAscending,String... 
> beanPropertyName) {
>               Collection<Comparator<T>> beanComparatorCollection = new 
> ArrayList<Comparator<T>>(beanPropertyName.length);
>               for(int i =0;i<beanPropertyName.length;i++)
>               {
>                       beanComparatorCollection.add(new 
> BeanComparator(beanPropertyName[i]));
>               }
>               Comparator<T> finalComparator = 
> ComparatorUtils.chainedComparator(beanComparatorCollection);
>               if (!isAscending) {
>                       finalComparator = new 
> ReverseComparator(finalComparator);
>               }
>               Collections.sort(list, finalComparator);
>       }
> Please let me know if you need any details , infact i able to submit patch 
> too .

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to