    /**
     * @author Ed Spencer
     *
     * Base class for any client-side storage. Used as a superclass for {@link Ext.data.proxy.Memory Memory} and
     * {@link Ext.data.proxy.WebStorage Web Storage} proxies. Do not use directly, use one of the subclasses instead.
     * @private
     */
    Ext.define('Ext.data.proxy.Client', {
        extend: 'Ext.data.proxy.Proxy',
        alternateClassName: 'Ext.data.ClientProxy',

        /**
         * @property {Boolean} isSynchronous
         * `true` in this class to identify that requests made on this proxy are
         * performed synchronously
         */
        isSynchronous: true,

        /**
         * Abstract function that must be implemented by each ClientProxy subclass. This should purge all record data
         * from the client side storage, as well as removing any supporting data (such as lists of record IDs)
         */
        clear: function() {
            //<debug>
            Ext.Error.raise("The Ext.data.proxy.Client subclass that you are using has not defined a 'clear' function. See src/data/ClientProxy.js for details.");
            //</debug>
        }
    });