Version 3.18.1
Show:

File: cache/js/cache-plugin.js

            /**
             * Provides support to use Cache as a Plugin to a Base-based class.
             *
             * @module cache
             * @submodule cache-plugin
             */
            
            /**
             * Plugin.Cache adds pluginizability to Cache.
             * @class Plugin.Cache
             * @extends Cache
             * @uses Plugin.Base
             */
            function CachePlugin(config) {
                var cache = config && config.cache ? config.cache : Y.Cache,
                    tmpclass = Y.Base.create("dataSourceCache", cache, [Y.Plugin.Base]),
                    tmpinstance = new tmpclass(config);
                tmpclass.NS = "tmpClass";
                return tmpinstance;
            }
            
            Y.mix(CachePlugin, {
                /**
                 * The namespace for the plugin. This will be the property on the host which
                 * references the plugin instance.
                 *
                 * @property NS
                 * @type String
                 * @static
                 * @final
                 * @value "cache"
                 */
                NS: "cache",
            
                /**
                 * Class name.
                 *
                 * @property NAME
                 * @type String
                 * @static
                 * @final
                 * @value "dataSourceCache"
                 */
                NAME: "cachePlugin"
            });
            
            
            Y.namespace("Plugin").Cache = CachePlugin;