Plugable Expression Resolver
----------------------------
Key: BEANUTILS-259
URL: http://issues.apache.org/jira/browse/BEANUTILS-259
Project: Commons BeanUtils
Issue Type: Improvement
Components: Bean / Property Utils
Affects Versions: 1.7.0
Reporter: Niall Pemberton
Assigned To: Niall Pemberton
Priority: Minor
There are a number of outstanding bugs against the BeanUtils expression syntax
with people wanting BeanUtils to support different variations. There is also a
duplication of the "expression evaluation" code in various methods which can't
be tested in isolation and is difficult to maintain as changes have to be
applied uniformly to various places.
The main places where the code is duplicated:
PropertyUtilsBean
- getNestedProperty
- setNestedProperty
- getPropertyDescriptor
BeanUtilsBean
- copyProperty
- setProperty
LocaleBeanUtils has also implemented an alternative mechanism - using a
Descriptor object to resolve references. BeanUtils and PropertyUtils also work
in slightly different ways. There are also other methods (e.g.
PropertyUtilsBean's getIndexedProperty() method) which also have related code.
I propose to add a new "expression resolver" interface, which would be a
singleton and everywhere would delegate to to resolve property expressions.
This will allow easy testing as it can be tested in isolation and provide a
uniform mechanism accross BeanUtils. It will also allow alternative syntax to
be implemented if the resolver implementation can be configured.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]