[ 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