home *** CD-ROM | disk | FTP | other *** search
/ Computer Active Guide 2009 July / CAG7.ISO / Internetas / SafariSetup.exe / AppleApplicationSupport.msi / WebKit.resources_inspector_Database.js < prev    next >
Encoding:
C/C++ Source or Header  |  2010-06-03  |  3.0 KB  |  104 lines

  1. /*
  2.  * Copyright (C) 2007, 2008 Apple 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 BY APPLE AND ITS CONTRIBUTORS "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.Database = function(id, domain, name, version)
  30. {
  31.     this._id = id;
  32.     this._domain = domain;
  33.     this._name = name;
  34.     this._version = version;
  35. }
  36.  
  37. WebInspector.Database.prototype = {
  38.     get id()
  39.     {
  40.         return this._id;
  41.     },
  42.  
  43.     get name()
  44.     {
  45.         return this._name;
  46.     },
  47.  
  48.     set name(x)
  49.     {
  50.         this._name = x;
  51.     },
  52.  
  53.     get version()
  54.     {
  55.         return this._version;
  56.     },
  57.  
  58.     set version(x)
  59.     {
  60.         this._version = x;
  61.     },
  62.  
  63.     get domain()
  64.     {
  65.         return this._domain;
  66.     },
  67.  
  68.     set domain(x)
  69.     {
  70.         this._domain = x;
  71.     },
  72.  
  73.     get displayDomain()
  74.     {
  75.         return WebInspector.Resource.prototype.__lookupGetter__("displayDomain").call(this);
  76.     },
  77.  
  78.     getTableNames: function(callback)
  79.     {
  80.         function sortingCallback(names)
  81.         {
  82.             callback(names.sort());
  83.         }
  84.         var callId = WebInspector.Callback.wrap(sortingCallback);
  85.         InspectorBackend.getDatabaseTableNames(callId, this._id);
  86.     },
  87.     
  88.     executeSql: function(query, onSuccess, onError)
  89.     {
  90.         function callback(result)
  91.         {
  92.             if (!(result instanceof Array)) {
  93.                 onError(result);
  94.                 return;
  95.             }
  96.             onSuccess(result);
  97.         }
  98.         // FIXME: execute the query in the frame the DB comes from.
  99.         InjectedScriptAccess.getDefault().executeSql(this._id, query, callback);
  100.     }
  101. }
  102.  
  103. WebInspector.didGetDatabaseTableNames = WebInspector.Callback.processCallback;
  104.