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

Simone Tripodi commented on CHAIN-85:
-------------------------------------

I think we have now the chance to rethink the {{CatalogFactory}}'s role:

 * it is not a factory, but rather a collection/registry/whatever, but 
definitively not a factory;

 * its strong typing is IMHO wrong:

{code}
class  CatalogFactory<K, V, C extends Map<K, V>> {

    Catalog<K, V, C> getCatalog();

    ...

}
{code}

    should be

{code}
class  CatalogFactory {

    <K, V, C extends Map<K, V>> Catalog<K, V, C> getCatalog();

    ...

}
{code}

    since, potentially, the {{CatalogFactory}} contains whatever kind of 
{{Catalog}} and not a specific, limited typed subset;

 * its definition/interface fits to APIs, not its default implementation, that 
belongs to the {{base}} package; base implementation is the current "in memory" 
one, users can have potentially limitless solutions (based on RDMS, on NoSQL, 
...)

Thoughts?
                
> Move CatalogFactory to API module
> ---------------------------------
>
>                 Key: CHAIN-85
>                 URL: https://issues.apache.org/jira/browse/CHAIN-85
>             Project: Commons Chain
>          Issue Type: Sub-task
>          Components: API
>    Affects Versions: 2.0
>            Reporter: Benedikt Ritter
>             Fix For: 2.0
>
>
> As discussed the CatalogFactory really belongs to the API module

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to