renameCache( options ) {
            const newKey = options.newCacheKey,
                oldKey = options.oldCacheKey;
            let originalCache = this._cachesLoaded[oldKey];

            if (!originalCache) {
                originalCache = this._zombiesLoaded[oldKey];
                $.console.assert( originalCache, "[TileCache.renameCache] oldCacheKey must reference existing cache!" );
                if (this._zombiesLoaded[newKey]) {
                    $.console.error("Cannot rename zombie cache %s to %s: the target cache is occupied!",
                        oldKey, newKey);
                    return null;
                }
                this._zombiesLoaded[newKey] = originalCache;
                delete this._zombiesLoaded[oldKey];
            } else if (this._cachesLoaded[newKey]) {
                $.console.error("Cannot rename cache %s to %s: the target cache is occupied!",
                    oldKey, newKey);
                return null; // do not remove, we perform additional fixes on caches later on when swap occurred
            } else {
                this._cachesLoaded[newKey] = originalCache;
                delete this._cachesLoaded[oldKey];
            }

            for (let tile of originalCache._tiles) {
                tile.reflectCacheRenamed(oldKey, newKey);
            }

            // do not call free old record routine, we did not increase cache size
            return originalCache;
        }
Changes cache key
@private
@param {Object} options - Cache creation parameters.
@param {String} options.oldCacheKey - Current key
@param {String} options.newCacheKey - New key to set
@return {OpenSeadragon.CacheRecord | null}