source: [view]
if(this.isValidKey(key) == false){
throw new Error("Invalid key given: " + key);
}
namespace = namespace||this.DEFAULT_NAMESPACE;
if(this.isValidKey(namespace) == false){
throw new Error("Invalid namespace given: " + namespace);
}
// try to store the value
try{
var namespaces = this._getItem("namespaces")||'|';
if(namespaces.indexOf('|'+namespace+'|')==-1){
this._setItem("namespaces", namespaces + namespace + '|');
}
var keys = this._getItem(namespace + "_keys")||'|';
if(keys.indexOf('|'+key+'|')==-1){
this._setItem(namespace + "_keys", keys + key + '|');
}
this._setItem('_' + namespace + '_' + key, value);
}catch(e){
// indicate we failed
console.debug("dojox.storage.AirEncryptedLocalStorageProvider.put:", e);
resultsHandler(this.FAILED, key, e.toString(), namespace);
return;
}
if(resultsHandler){
resultsHandler(this.SUCCESS, key, null, namespace);
}