diff options
Diffstat (limited to 'includes/js/dojox/storage/Provider.js')
-rw-r--r-- | includes/js/dojox/storage/Provider.js | 331 |
1 files changed, 0 insertions, 331 deletions
diff --git a/includes/js/dojox/storage/Provider.js b/includes/js/dojox/storage/Provider.js deleted file mode 100644 index 2637fbe..0000000 --- a/includes/js/dojox/storage/Provider.js +++ /dev/null @@ -1,331 +0,0 @@ -if(!dojo._hasResource["dojox.storage.Provider"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code. -dojo._hasResource["dojox.storage.Provider"] = true; -dojo.provide("dojox.storage.Provider"); - -dojo.declare("dojox.storage.Provider", null, { - // summary: A singleton for working with dojox.storage. - // description: - // dojox.storage exposes the current available storage provider on this - // platform. It gives you methods such as dojox.storage.put(), - // dojox.storage.get(), etc. - // - // For more details on dojox.storage, see the primary documentation - // page at - // http://manual.dojotoolkit.org/storage.html - // - // Note for storage provider developers who are creating subclasses- - // This is the base class for all storage providers Specific kinds of - // Storage Providers should subclass this and implement these methods. - // You should avoid initialization in storage provider subclass's - // constructor; instead, perform initialization in your initialize() - // method. - constructor: function(){ - }, - - // SUCCESS: String - // Flag that indicates a put() call to a - // storage provider was succesful. - SUCCESS: "success", - - // FAILED: String - // Flag that indicates a put() call to - // a storage provider failed. - FAILED: "failed", - - // PENDING: String - // Flag that indicates a put() call to a - // storage provider is pending user approval. - PENDING: "pending", - - // SIZE_NOT_AVAILABLE: String - // Returned by getMaximumSize() if this storage provider can not determine - // the maximum amount of data it can support. - SIZE_NOT_AVAILABLE: "Size not available", - - // SIZE_NO_LIMIT: String - // Returned by getMaximumSize() if this storage provider has no theoretical - // limit on the amount of data it can store. - SIZE_NO_LIMIT: "No size limit", - - // DEFAULT_NAMESPACE: String - // The namespace for all storage operations. This is useful if several - // applications want access to the storage system from the same domain but - // want different storage silos. - DEFAULT_NAMESPACE: "default", - - // onHideSettingsUI: Function - // If a function is assigned to this property, then when the settings - // provider's UI is closed this function is called. Useful, for example, - // if the user has just cleared out all storage for this provider using - // the settings UI, and you want to update your UI. - onHideSettingsUI: null, - - initialize: function(){ - // summary: - // Allows this storage provider to initialize itself. This is - // called after the page has finished loading, so you can not do - // document.writes(). Storage Provider subclasses should initialize - // themselves inside of here rather than in their function - // constructor. - console.warn("dojox.storage.initialize not implemented"); - }, - - isAvailable: function(){ /*Boolean*/ - // summary: - // Returns whether this storage provider is available on this - // platform. - console.warn("dojox.storage.isAvailable not implemented"); - }, - - put: function( /*string*/ key, - /*object*/ value, - /*function*/ resultsHandler, - /*string?*/ namespace){ - // summary: - // Puts a key and value into this storage system. - // description: - // Example- - // var resultsHandler = function(status, key, message){ - // alert("status="+status+", key="+key+", message="+message); - // }; - // dojox.storage.put("test", "hello world", resultsHandler); - // - // Important note: if you are using Dojo Storage in conjunction with - // Dojo Offline, then you don't need to provide - // a resultsHandler; this is because for Dojo Offline we - // use Google Gears to persist data, which has unlimited data - // once the user has given permission. If you are using Dojo - // Storage apart from Dojo Offline, then under the covers hidden - // Flash might be used, which is both asychronous and which might - // get denied; in this case you must provide a resultsHandler. - // key: - // A string key to use when retrieving this value in the future. - // value: - // A value to store; this can be any JavaScript type. - // resultsHandler: - // A callback function that will receive three arguments. The - // first argument is one of three values: dojox.storage.SUCCESS, - // dojox.storage.FAILED, or dojox.storage.PENDING; these values - // determine how the put request went. In some storage systems - // users can deny a storage request, resulting in a - // dojox.storage.FAILED, while in other storage systems a storage - // request must wait for user approval, resulting in a - // dojox.storage.PENDING status until the request is either - // approved or denied, resulting in another call back with - // dojox.storage.SUCCESS. - // The second argument in the call back is the key name that was being stored. - // The third argument in the call back is an optional message that - // details possible error messages that might have occurred during - // the storage process. - // namespace: - // Optional string namespace that this value will be placed into; - // if left off, the value will be placed into dojox.storage.DEFAULT_NAMESPACE - - console.warn("dojox.storage.put not implemented"); - }, - - get: function(/*string*/ key, /*string?*/ namespace){ /*Object*/ - // summary: - // Gets the value with the given key. Returns null if this key is - // not in the storage system. - // key: - // A string key to get the value of. - // namespace: - // Optional string namespace that this value will be retrieved from; - // if left off, the value will be retrieved from dojox.storage.DEFAULT_NAMESPACE - // return: Returns any JavaScript object type; null if the key is not present - console.warn("dojox.storage.get not implemented"); - }, - - hasKey: function(/*string*/ key, /*string?*/ namespace){ - // summary: Determines whether the storage has the given key. - return !!this.get(key, namespace); // Boolean - }, - - getKeys: function(/*string?*/ namespace){ /*Array*/ - // summary: Enumerates all of the available keys in this storage system. - // return: Array of available keys - console.warn("dojox.storage.getKeys not implemented"); - }, - - clear: function(/*string?*/ namespace){ - // summary: - // Completely clears this storage system of all of it's values and - // keys. If 'namespace' is provided just clears the keys in that - // namespace. - console.warn("dojox.storage.clear not implemented"); - }, - - remove: function(/*string*/ key, /*string?*/ namespace){ - // summary: Removes the given key from this storage system. - console.warn("dojox.storage.remove not implemented"); - }, - - getNamespaces: function(){ /*string[]*/ - console.warn("dojox.storage.getNamespaces not implemented"); - }, - - isPermanent: function(){ /*Boolean*/ - // summary: - // Returns whether this storage provider's values are persisted - // when this platform is shutdown. - console.warn("dojox.storage.isPermanent not implemented"); - }, - - getMaximumSize: function(){ /* mixed */ - // summary: The maximum storage allowed by this provider - // returns: - // Returns the maximum storage size - // supported by this provider, in - // thousands of bytes (i.e., if it - // returns 60 then this means that 60K - // of storage is supported). - // - // If this provider can not determine - // it's maximum size, then - // dojox.storage.SIZE_NOT_AVAILABLE is - // returned; if there is no theoretical - // limit on the amount of storage - // this provider can return, then - // dojox.storage.SIZE_NO_LIMIT is - // returned - console.warn("dojox.storage.getMaximumSize not implemented"); - }, - - putMultiple: function( /*array*/ keys, - /*array*/ values, - /*function*/ resultsHandler, - /*string?*/ namespace){ - // summary: - // Puts multiple keys and values into this storage system. - // description: - // Example- - // var resultsHandler = function(status, key, message){ - // alert("status="+status+", key="+key+", message="+message); - // }; - // dojox.storage.put(["test"], ["hello world"], resultsHandler); - // - // Important note: if you are using Dojo Storage in conjunction with - // Dojo Offline, then you don't need to provide - // a resultsHandler; this is because for Dojo Offline we - // use Google Gears to persist data, which has unlimited data - // once the user has given permission. If you are using Dojo - // Storage apart from Dojo Offline, then under the covers hidden - // Flash might be used, which is both asychronous and which might - // get denied; in this case you must provide a resultsHandler. - // keys: - // An array of string keys to use when retrieving this value in the future, - // one per value to be stored - // values: - // An array of values to store; this can be any JavaScript type, though the - // performance of plain strings is considerably better - // resultsHandler: - // A callback function that will receive three arguments. The - // first argument is one of three values: dojox.storage.SUCCESS, - // dojox.storage.FAILED, or dojox.storage.PENDING; these values - // determine how the put request went. In some storage systems - // users can deny a storage request, resulting in a - // dojox.storage.FAILED, while in other storage systems a storage - // request must wait for user approval, resulting in a - // dojox.storage.PENDING status until the request is either - // approved or denied, resulting in another call back with - // dojox.storage.SUCCESS. - // The second argument in the call back is the key name that was being stored. - // The third argument in the call back is an optional message that - // details possible error messages that might have occurred during - // the storage process. - // namespace: - // Optional string namespace that this value will be placed into; - // if left off, the value will be placed into dojox.storage.DEFAULT_NAMESPACE - - console.warn("dojox.storage.putMultiple not implemented"); - // JAC: We could implement a 'default' puMultiple here by just doing - // each put individually - }, - - getMultiple: function(/*array*/ keys, /*string?*/ namespace){ /*Object*/ - // summary: - // Gets the valuse corresponding to each of the given keys. - // Returns a null array element for each given key that is - // not in the storage system. - // keys: - // An array of string keys to get the value of. - // namespace: - // Optional string namespace that this value will be retrieved from; - // if left off, the value will be retrieved from dojox.storage.DEFAULT_NAMESPACE - // return: Returns any JavaScript object type; null if the key is not present - - console.warn("dojox.storage.getMultiple not implemented"); - // JAC: We could implement a 'default' getMultiple here by just - // doing each get individually - }, - - removeMultiple: function(/*array*/ keys, /*string?*/ namespace) { - // summary: Removes the given keys from this storage system. - - // JAC: We could implement a 'default' removeMultiple here by just - // doing each remove individually - console.warn("dojox.storage.remove not implemented"); - }, - - isValidKeyArray: function( keys) { - if(keys === null || keys === undefined || !dojo.isArray(keys)){ - return false; - } - - // JAC: This could be optimized by running the key validity test - // directly over a joined string - return !dojo.some(keys, function(key){ - return !this.isValidKey(key); - }); // Boolean - }, - - hasSettingsUI: function(){ /*Boolean*/ - // summary: Determines whether this provider has a settings UI. - return false; - }, - - showSettingsUI: function(){ - // summary: If this provider has a settings UI, determined - // by calling hasSettingsUI(), it is shown. - console.warn("dojox.storage.showSettingsUI not implemented"); - }, - - hideSettingsUI: function(){ - // summary: If this provider has a settings UI, hides it. - console.warn("dojox.storage.hideSettingsUI not implemented"); - }, - - isValidKey: function(/*string*/ keyName){ /*Boolean*/ - // summary: - // Subclasses can call this to ensure that the key given is valid - // in a consistent way across different storage providers. We use - // the lowest common denominator for key values allowed: only - // letters, numbers, and underscores are allowed. No spaces. - if(keyName === null || keyName === undefined){ - return false; - } - - return /^[0-9A-Za-z_]*$/.test(keyName); - }, - - getResourceList: function(){ /* Array[] */ - // summary: - // Returns a list of URLs that this - // storage provider might depend on. - // description: - // This method returns a list of URLs that this - // storage provider depends on to do its work. - // This list is used by the Dojo Offline Toolkit - // to cache these resources to ensure the machinery - // used by this storage provider is available offline. - // What is returned is an array of URLs. - // Note that Dojo Offline uses Gears as its native - // storage provider, and does not support using other - // kinds of storage providers while offline anymore. - - return []; - } -}); - -} |