Details
-
Improvement
-
Status: Reopened
-
Trivial
-
Resolution: Unresolved
-
1.8.3
-
None
-
None
Description
Provide static BeanToPropertyValueTransformer#collect methods to simplify the usage of BeanToPropertyValueTransformer with CollectionUtils#collect. See attached implementation. This is how such a utility method could be used (pay attention to static import):
import org.junit.Test; import java.util.Arrays; import java.util.Collection; import java.util.List; import java.util.Locale; import static org.apache.commons.beanutils.BeanToPropertyValueTransformer.collect; import static org.fest.assertions.Assertions.assertThat; public class TestCollect { @Test public void proofOfConcept() throws Exception { //given List<Locale> locales = Arrays.asList( Locale.FRANCE, Locale.GERMANY, Locale.ITALY, new Locale("pl", "PL")); //when: calls Locale.getCounty() on each item Collection countries = collect(locales, "country"); //then assertThat(countries).containsOnly("FR", "DE", "IT", "PL"); } }
Without proposed method:
Collection countries = CollectionUtils.collect(locales, new BeanToPropertyValueTransformer("country"))