home *** CD-ROM | disk | FTP | other *** search
/ PC Advisor 2005 August / PCADVD_121.iso / internet / nsb-setup.exe / chrome / inspector.jar / content / inspector / search / inSearchUtils.js < prev   
Encoding:
JavaScript  |  2004-11-25  |  4.0 KB  |  108 lines

  1. /* ***** BEGIN LICENSE BLOCK *****
  2.  * Version: NPL 1.1/GPL 2.0/LGPL 2.1
  3.  *
  4.  * The contents of this file are subject to the Netscape Public License
  5.  * Version 1.1 (the "License"); you may not use this file except in
  6.  * compliance with the License. You may obtain a copy of the License at
  7.  * http://www.mozilla.org/NPL/
  8.  *
  9.  * Software distributed under the License is distributed on an "AS IS" basis,
  10.  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
  11.  * for the specific language governing rights and limitations under the
  12.  * License.
  13.  *
  14.  * The Original Code is mozilla.org code.
  15.  *
  16.  * The Initial Developer of the Original Code is 
  17.  * Netscape Communications Corporation.
  18.  * Portions created by the Initial Developer are Copyright (C) 2001
  19.  * the Initial Developer. All Rights Reserved.
  20.  *
  21.  * Contributor(s):
  22.  *   Joe Hewitt <hewitt@netscape.com> (original author)
  23.  *
  24.  *
  25.  * Alternatively, the contents of this file may be used under the terms of
  26.  * either the GNU General Public License Version 2 or later (the "GPL"), or
  27.  * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
  28.  * in which case the provisions of the GPL or the LGPL are applicable instead
  29.  * of those above. If you wish to allow use of your version of this file only
  30.  * under the terms of either the GPL or the LGPL, and not to allow others to
  31.  * use your version of this file under the terms of the NPL, indicate your
  32.  * decision by deleting the provisions above and replace them with the notice
  33.  * and other provisions required by the GPL or the LGPL. If you do not delete
  34.  * the provisions above, a recipient may use your version of this file under
  35.  * the terms of any one of the NPL, the GPL or the LGPL.
  36.  *
  37.  * ***** END LICENSE BLOCK ***** */
  38.  
  39. /***************************************************************
  40. * inSearchUtils -------------------------------------------------
  41. *  Utilities for helping search modules accomplish common tasks.
  42. * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
  43. * REQUIRED IMPORTS:
  44. ****************************************************************/
  45.  
  46. //////////// global variables /////////////////////
  47.  
  48. var kSearchLookup = {
  49.   file: "inIFileSearch", 
  50.   cssvalue: "inICSSValueSearch"
  51. };
  52.  
  53. //////////// global constants ////////////////////
  54.  
  55. const kISMLNSURI = "http://www.mozilla.org/inspector/isml";
  56.  
  57. const kSearchHelperCIDPrefix    = "@mozilla.org/inspector/search;1?type=";
  58. const kFileSearchCID            = "@mozilla.org/inspector/search;1?type=file";
  59. const kCSSValueSearchCID        = "@mozilla.org/inspector/search;1?type=cssvalue";
  60. const kLocalFileCID             = "@mozilla.org/file/local;1";
  61. const kInMemoryDataSourceCID    = "@mozilla.org/rdf/datasource;1?name=in-memory-datasource";
  62.  
  63. ////////////////////////////////////////////////////////////////////////////
  64. //// class inSearchUtils
  65.  
  66. var inSearchUtils = 
  67. {
  68.   // nsISupports
  69.   createSearchHelper: function(aName)
  70.   {
  71.     var cid = kSearchHelperCIDPrefix + aName;
  72.     var iid = kSearchLookup[aName];
  73.     return XPCU.createInstance(cid, iid);
  74.   },
  75.   
  76.   // nsIFile 
  77.   createLocalFile: function(aPath)
  78.   {
  79.     var file = XPCU.createInstance(kLocalFileCID, "nsILocalFile");
  80.     
  81.     if (aPath) {
  82.       try {
  83.         file.initWithPath(aPath);
  84.       } catch (ex) {
  85.         debug("Invalid path in nsILocalFile::initWithPath\n" + ex);
  86.       }
  87.     }
  88.     
  89.     return XPCU.QI(file, "nsIFile");    
  90.   },
  91.   
  92.   // inISearchObserver
  93.   createSearchObserver: function(aTarget, aLabel)
  94.   {
  95.     var observer = {
  96.       mTarget: aTarget,
  97.       onSearchStart: new Function("aModule", "this.mTarget.on"+aLabel+"SearchStart(aModule)"),
  98.       onSearchEnd: new Function("aModule", "aResult", "this.mTarget.on"+aLabel+"SearchEnd(aModule, aResult)"),
  99.       onSearchError: new Function("aModule", "aMsg", "this.mTarget.on"+aLabel+"SearchError(aModule, aMsg)"),
  100.       onSearchResult: new Function("aModule", "this.mTarget.on"+aLabel+"SearchResult(aModule)")
  101.     };
  102.     
  103.     return observer;
  104.   }
  105.  
  106. };
  107.  
  108.