commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Adam Hardy (JIRA)" <j...@apache.org>
Subject [jira] Issue Comment Edited: (BEANUTILS-228) [beanutils] ConvertUtilsBean: register converter for specific property
Date Sat, 21 Feb 2009 18:14:01 GMT

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

adam.hardy@cyberspaceroad.com edited comment on BEANUTILS-228 at 2/21/09 10:13 AM:
----------------------------------------------------------------

I agree with Henri that naming the destination class and the bean.property is overkill for
that situation. Leaving the original method signature as it is would be well complemented
by a method signature following Michael's suggestion but with just the bean and property params.

That raises the question of which converter would have precedence if both were registered
- obviously the more specific one would be preferable but I can imagine the algorithm to implement
that would not be facile. 

Also, I think it would be a great thing to enhance the converter.convert method signature
to pass in the owning class's setter or getter method or field, from which it's possible to
deduce the parameterized type for lists, sets, maps etc. 

This would help when trying to construct a list of a specific bean for instance.

List<MyParticularBean> getMyParticularBeans()

This type info is erased at compilation from the List class itself - it is only the methods
or field which still hold the info. I can put this in a seperate issue if necessary.

      was (Author: adam.hardy@cyberspaceroad.com):
    I think it would be a great thing to enhance the converter.convert method signature to
pass in the owning class's setter or getter method or field, from which it's possible to deduce
the parameterized type for lists, sets, maps etc. 

This would help when trying to construct a list of a specific bean for instance.

List<MyParticularBean> getMyParticularBeans()

This type info is erased at compilation from the List class itself - it is only the methods
or field which still hold the info.
  
> [beanutils] ConvertUtilsBean: register converter for specific property
> ----------------------------------------------------------------------
>
>                 Key: BEANUTILS-228
>                 URL: https://issues.apache.org/jira/browse/BEANUTILS-228
>             Project: Commons BeanUtils
>          Issue Type: Improvement
>          Components: ConvertUtils & Converters
>    Affects Versions: 1.5
>         Environment: Operating System: other
> Platform: Other
>            Reporter: Michael Schuerig
>            Priority: Minor
>             Fix For: LATER THAN 1.8.0
>
>
> Currently, converters are selected only based on the class to which they 
> convert objects. In general this works pretty well, but I've encountered 
> cases, where this doesn't work out.  
>  
> For example, I'm using java.util.Date objects to represent points and 
> intervals in time that are not completely specific, such as day of the week 
> and month. Now I can easily write a Converter that uses SimpleDateFormat to 
> convert string representations of these dates ("Mon", "Feb") to Date objects.  
>  
> When I register one of these converters with ConvertUtils(Bean), though, it 
> preempts any conversion to Date. Something I clearly don't want as I have to 
> deal with different kinds of dates. 
>  
> As a solution, I'd like to be able to register a converter for a specific 
> property of a bean class, with a method this 
>  
> ConvertUtilsBean#register(Converter converter, java.lang.Class 
> destinationClass, java.lang.Class beanClass, java.lang.String propertyName) 
>  
> Michael

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


Mime
View raw message