home *** CD-ROM | disk | FTP | other *** search
/ Computer Active Guide 2009 July / CAG7.ISO / Internetas / SafariSetup.exe / AppleApplicationSupport.msi / WebKit.resources_inspector_ObjectProxy.js < prev    next >
Encoding:
Text File  |  2010-06-03  |  2.8 KB  |  71 lines

  1. /*
  2.  * Copyright (C) 2009 Google 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 are
  6.  * met:
  7.  *
  8.  *     * Redistributions of source code must retain the above copyright
  9.  * notice, this list of conditions and the following disclaimer.
  10.  *     * Redistributions in binary form must reproduce the above
  11.  * copyright notice, this list of conditions and the following disclaimer
  12.  * in the documentation and/or other materials provided with the
  13.  * distribution.
  14.  *     * Neither the name of Google Inc. nor the names of its
  15.  * contributors may be used to endorse or promote products derived from
  16.  * this software without specific prior written permission.
  17.  *
  18.  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  19.  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  20.  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  21.  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
  22.  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  23.  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  24.  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  25.  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  26.  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  27.  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  28.  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  29.  */
  30.  
  31. WebInspector.ObjectProxy = function(injectedScriptId, objectId, path, description, hasChildren)
  32. {
  33.     this.objectId = objectId;
  34.     this.injectedScriptId = injectedScriptId;
  35.     this.path = path || [];
  36.     this.description = description;
  37.     this.hasChildren = hasChildren;
  38. }
  39.  
  40. WebInspector.ObjectProxy.wrapPrimitiveValue = function(value)
  41. {
  42.     var proxy = new WebInspector.ObjectProxy();
  43.     proxy.type = typeof value;
  44.     proxy.description = value;
  45.     return proxy;
  46. }
  47.  
  48. WebInspector.ObjectProxy.getPropertiesAsync = function(objectProxy, propertiesToQueryFor, callback)
  49. {
  50.     function createPropertiesMapThenCallback(propertiesPayload)
  51.     {
  52.         if (!propertiesPayload) {
  53.             callback();
  54.             return;
  55.         }
  56.  
  57.         var result = [];
  58.         for (var i = 0; i < propertiesPayload.length; ++i)
  59.             if (propertiesToQueryFor.indexOf(propertiesPayload[i].name) !== -1)
  60.                 result[propertiesPayload[i].name] = propertiesPayload[i].value.description;
  61.         callback(result);
  62.     };
  63.     InjectedScriptAccess.get(objectProxy.injectedScriptId).getProperties(objectProxy, true, false, createPropertiesMapThenCallback);
  64. }
  65.  
  66. WebInspector.ObjectPropertyProxy = function(name, value)
  67. {
  68.     this.name = name;
  69.     this.value = value;
  70. }
  71.