[ 
https://issues.apache.org/jira/browse/COMPRESS-61?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12693429#action_12693429
 ] 

Sebb commented on COMPRESS-61:
------------------------------

I see now that I was not entirely clear.

I was not proposing a singleton - that would not make sense.
Nor was I proposing a public static accessor for the singleton - that would 
just make access more unwieldy.

The suggestion of using a private static instance was just one way to implement 
the proposed static methods.

i.e.

{code}
private static final privateInstance = new ArchiveStreamFactory();

public static ArchiveInputStream getArchiveInputStream(...){
   return privateInstance.createArchiveInputStream(...)
}
{code}

I agree that static fields are often a problem, but that is not the case if the 
field is final and the object is immutable.

> ArchiveStreamFactory could have static methods as well
> ------------------------------------------------------
>
>                 Key: COMPRESS-61
>                 URL: https://issues.apache.org/jira/browse/COMPRESS-61
>             Project: Commons Compress
>          Issue Type: Improvement
>            Reporter: Sebb
>
> ArchiveStreamFactory currently has to be instantiated in order to use it.
> The methods have to be instance methods in order for subclasses to override 
> them, but until that is done (will it ever be done?) it seems a bit 
> unnecessary to create an instance of the class.
> Perhaps there could be a private static instance of the class that could be 
> used with public static methods?
> The same considerations apply to the other factories.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to