commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sebb (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CSV-43) CSVFormat fluent API is rather inefficient
Date Sat, 10 Mar 2012 16:26:59 GMT

    [ https://issues.apache.org/jira/browse/CSV-43?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13226888#comment-13226888
] 

Sebb commented on CSV-43:
-------------------------

Yes, a builder would also work, and would allow the class to be truly immutable.
However it would mean bigger changes to the API.

A simpler fix would be to add a flag to reject further changes.
Not immutable, but thread-safe since code uses volatile.

Either fix would be fine by me.
                
> CSVFormat fluent API is rather inefficient
> ------------------------------------------
>
>                 Key: CSV-43
>                 URL: https://issues.apache.org/jira/browse/CSV-43
>             Project: Commons CSV
>          Issue Type: Improvement
>            Reporter: Sebb
>
> The implementation of the CSVFormat fluent API is rather inefficient, as each method
invocation clones the original class instance.
> Now that the fields are volatile, it would be possible to do away with the clone() calls
entirely.
> This would mean that the format could be updated later.
> If such usage is not desirable, then perhaps consider adding some kind of "freeze" method
to prevent further changes.
> Or perhaps the parse() and format() methods could perform the freeze (e.g. set a flag
to disable further updates).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message