commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Goran Hacek (JIRA)" <j...@apache.org>
Subject [jira] Updated: (COLLECTIONS-343) Functor singleton classes do not implement singleton pattern correctly
Date Thu, 15 Oct 2009 12:22:31 GMT

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

Goran Hacek updated COLLECTIONS-343:
------------------------------------

    Attachment: fix_functor_singletones.patch

Fix for this issue is simple, all classes of these classes should implement readResolve()
in the following way:

{noformat}private Object readResolve() {
    return INSTANCE;
}
{noformat}

This also makes default equals() and hashCode() methods behave appropriately for this classes.

I am providing a patch for this issue with tests, so can someone, please, review it.

> Functor singleton classes do not implement singleton pattern correctly
> ----------------------------------------------------------------------
>
>                 Key: COLLECTIONS-343
>                 URL: https://issues.apache.org/jira/browse/COLLECTIONS-343
>             Project: Commons Collections
>          Issue Type: Bug
>          Components: Functor
>            Reporter: Goran Hacek
>             Fix For: 4.0
>
>         Attachments: fix_functor_singletones.patch
>
>
> All classes in package "org.apache.commons.collections.functors" that advertise that
they have singleton instance actually cannot guarantee that.  Because of serialization support
multiple instances of those classes can exist at runtime.
> Following classes are making this false claim:
> * CloneTransformer
> * ExceptionClosure
> * ExceptionFactory
> * ExceptionPredicate
> * ExceptionTransformer
> * FalsePredicate
> * NOPClosure
> * NOPTransformer
> * NotNullPredicate
> * NullPredicate
> * StringValueTransformer
> * TruePredicate

-- 
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