Metadata-Version: 1.1
Name: silva.core.cache
Version: 3.0.2
Summary: Caching sub-system for Silva CMS
Home-page: https://github.com/silvacms/silva.core.cache
Author: Infrae
Author-email: info@infrae.com
License: BSD
Description: ================
        silva.core.cache
        ================
        
        Presentation
        ============
        
        This package provide a pluggable cache support for Silva related
        components, base on `Beaker <http://beaker.groovie.org/index.html>`_.
        By default content will be cached in memory, but you can use a different
        storage like files, memcache or an SQL database to store cached content.
        
        For a single instance installation we recommand to use memory as
        storage. For a ZEO / multi Zope instance installation we recommand to
        use memcache as storage.
        
        To use memcache recommend to install `pylibmc`, this can be done via
        buildout. Please refer to the installation documentation of Silva for
        this.
        
        After you can configure in your Zope configuration
        (``zope.conf``) which storage to use for which regions::
        
          <product-config silva.core.cache>
        
              # default region
              default.lock_dir /tmp/memcache
              default.type ext:memcached
              default.url localhost:11211
        
              # shared region
              shared.lock_dir /tmp/memcache
              shared.type ext:memcached
              shared.url someotherhost:11211
        
          </product-config>
        
        API
        ===
        
        Developers have different tools at their disposal, mainly:
        
        ``silva.core.cache.descriptors.cached_method``
           Decorator that can be used on a class method to cache its
           computation. It can take a ``region`` which specify which caching
           region to use, a ``key`` which is a callable, taking as parameter
           the class on which the method is called to compute a caching
           key. If ``region`` is not specified, all other parameters are Beaker
           options used to configured the cache manager used.
        
        ``silva.core.cache.descriptors.cached_property``
           Decorator that can be used on a class to create a read-only
           property where its computation is cached in Beaker. Except for
           ``key`` it takes the same parameters than ``cached_method``.
        
        ``silva.core.cache.store.Store``
           Giving a cache name, it give a dictionnary like access to this
           cache.
        
        ``silva.core.cache.store.SessionStore``
           Constructed out of a request, it is a dictionnary like access to a
           unique cache for this user session. The session is identified with
           the help of the adapter ``IClientId`` of ``zope.session``. An
           implementation of this adapter for Zope 2 is done in this package.
        
        ``silva.core.cache.interfaces.ICacheManager``
           A global utility provides this interface to give you access to all
           cache managers used by this extension.
        
        ``silva.core.cache.memcacheutils.MemcacheSlice``
           Store a list of items in memcache.
        
        
        Code repository
        ===============
        
        The code for this extension can be found in Git at:
        https://github.com/silvacms/silva.core.cache
        
        Changes
        =======
        
        3.0.2 (2013/03/06)
        ------------------
        
        * Session cookie now uses ``IVirtualSite`` new top level path method
          instead of root path, ensuring the cookie is set for the whole site.
        
        3.0.1 (2012/09/24)
        ------------------
        
        * Session cookie use the HTTPOnly flag now.
        
        * Update API to match Silva 3.0c1.
        
        3.0 (2011/11/08)
        ----------------
        
        * Add a memcache slice to store a list of items in memcache. There is
          a fallback available if you don't have memcache.
        
        * Improve cache descriptors.
        
        2.3.2 (2010/10/27)
        ------------------
        
        * Ensure caching keys are always string. This is required by memcache
          implementations.
        
        2.3.1 (2010/10/18)
        ------------------
        
        * Fix cookie path for cookie session in case of virtual host hosting.
        
        2.3 (2010/10/06)
        ----------------
        
        * Initial release.
        
Keywords: zope2 cache silva
Platform: UNKNOWN
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Zope Public License
Classifier: Programming Language :: Python
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Framework :: Zope2
