commons-dev mailing list archives

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


Niall Pemberton updated BEANUTILS-259:

    Issue Type: New Feature  (was: Improvement)

> Plugable Property Name Expression Resolver
> ------------------------------------------
>                 Key: BEANUTILS-259
>                 URL:
>             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:,,
> 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:
For additional commands, e-mail:

View raw message