1 /* See license.txt for terms of usage */ 2 3 define([ 4 ], 5 function() { 6 7 // ********************************************************************************************* // 8 // Constants 9 10 const Cc = Components.classes; 11 const Ci = Components.interfaces; 12 13 // ********************************************************************************************* // 14 // Base observer 15 16 var BaseObserver = 17 { 18 QueryInterface : function (aIID) 19 { 20 if (aIID.equals(Ci.nsIObserver) || 21 aIID.equals(Ci.nsISupportsWeakReference) || 22 aIID.equals(Ci.nsISupports)) 23 { 24 return this; 25 } 26 27 throw Components.results.NS_NOINTERFACE; 28 } 29 }; 30 31 // ********************************************************************************************* // 32 33 return BaseObserver; 34 35 // ********************************************************************************************* // 36 }); 37 38