1 /* 2 * Copyright (C) 2008 Nokia Inc. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions 6 * are met: 7 * 8 * 1. Redistributions of source code must retain the above copyright 9 * notice, this list of conditions and the following disclaimer. 10 * 2. Redistributions in binary form must reproduce the above copyright 11 * notice, this list of conditions and the following disclaimer in the 12 * documentation and/or other materials provided with the distribution. 13 * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of 14 * its contributors may be used to endorse or promote products derived 15 * from this software without specific prior written permission. 16 * 17 * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY 18 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 19 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 20 * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY 21 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 22 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 23 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 24 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 */ 28 29 WebInspector.DOMStorage = function(id, domain, isLocalStorage) 30 { 31 this._id = id; 32 this._domain = domain; 33 this._isLocalStorage = isLocalStorage; 34 } 35 36 WebInspector.DOMStorage.prototype = { 37 get id() 38 { 39 return this._id; 40 }, 41 42 get domain() 43 { 44 return this._domain; 45 }, 46 47 get isLocalStorage() 48 { 49 return this._isLocalStorage; 50 }, 51 52 getEntries: function(callback) 53 { 54 DOMStorageAgent.getDOMStorageEntries(this._id, callback); 55 }, 56 57 setItem: function(key, value, callback) 58 { 59 DOMStorageAgent.setDOMStorageItem(this._id, key, value, callback); 60 }, 61 62 removeItem: function(key, callback) 63 { 64 DOMStorageAgent.removeDOMStorageItem(this._id, key, callback); 65 } 66 } 67 68 69 WebInspector.DOMStorageDispatcher = function() 70 { 71 } 72 73 WebInspector.DOMStorageDispatcher.prototype = { 74 addDOMStorage: function(payload) 75 { 76 if (!WebInspector.panels.resources) 77 return; 78 var domStorage = new WebInspector.DOMStorage( 79 payload.id, 80 payload.host, 81 payload.isLocalStorage); 82 WebInspector.panels.resources.addDOMStorage(domStorage); 83 }, 84 85 updateDOMStorage: function(storageId) 86 { 87 WebInspector.panels.resources.updateDOMStorage(storageId); 88 } 89 } 90 91 InspectorBackend.registerDomainDispatcher("DOMStorage", new WebInspector.DOMStorageDispatcher()); 92