You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "David Kimura (JIRA)" <ji...@apache.org> on 2017/09/18 21:13:00 UTC

[jira] [Created] (GEODE-3645) Update API CacheFactory::create to return cache object

David Kimura created GEODE-3645:
-----------------------------------

             Summary: Update API CacheFactory::create to return cache object
                 Key: GEODE-3645
                 URL: https://issues.apache.org/jira/browse/GEODE-3645
             Project: Geode
          Issue Type: New Feature
          Components: native client
            Reporter: David Kimura


As an application developer I want to control the stack vs heap allocation of my cache object.  If we change CacheFactory::create to return a cache object then the application user can pick an allocation scheme.  This also allows application developers to bypass smart pointer complexity until the developer deems them necessary.

Example:

{noformat}
auto cache = CacheFactory::createFactory().create();
auto cacheptr = std::make_shared<Cache>(CacheFactory::createFactory().create());
{noformat}

Difficulty of implementation is due to Cache/CacheImpl circular dependency.  Here are a few examples of various approaches to consider:

https://gist.github.com/pivotal-jbarrett/52ba9ec5de0b494368d1c5282ef188ef
https://gist.github.com/pivotal-jbarrett/c48ffff3f7f41b187f0ed8c80108aa6a

Here are the related email threads of interest:

http://markmail.org/message/in5e337npq5euslh
http://markmail.org/message/lp2rx2rtyblg72fv




--
This message was sent by Atlassian JIRA
(v6.4.14#64029)