commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Niall Pemberton (JIRA)" <j...@apache.org>
Subject [jira] Updated: (BEANUTILS-259) Plugable Property Name Expression Resolver
Date Thu, 12 Jul 2007 15:29:04 GMT

     [ https://issues.apache.org/jira/browse/BEANUTILS-259?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Niall Pemberton updated BEANUTILS-259:
--------------------------------------

    Issue Type: New Feature  (was: Improvement)

> Plugable Property Name Expression Resolver
> ------------------------------------------
>
>                 Key: BEANUTILS-259
>                 URL: https://issues.apache.org/jira/browse/BEANUTILS-259
>             Project: Commons BeanUtils
>          Issue Type: New Feature
>          Components: Expression Syntax
>    Affects Versions: 1.7.0
>            Reporter: Niall Pemberton
>            Assignee: Niall Pemberton
>            Priority: Minor
>             Fix For: 1.8.0
>
>         Attachments: BasicResolver.java, BasicResolverTestCase.java, Resolver.java
>
>
> 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.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org


Mime
View raw message