diff --git a/examples/test.html b/examples/test.html
index 8e47064..8383591 100644
--- a/examples/test.html
+++ b/examples/test.html
@@ -26,24 +26,26 @@ require(["src/filesystem"], function(IDBFS) {
if(!error) {
console.log("bytes written:", bytes_written);
}
- fd.seek(-bytes_written);
- var readBuffer = new Uint8Array(8);
- fd.read(readBuffer, function(error, bytes_read, buffer) {
- if(!error) {
- console.log("bytes read:", bytes_read);
- console.log("buffer:", buffer);
- }
- fs.close(fd, function(error) {
- fs.unlink("/tmp/0", function(error) {
- fs.dump(document.getElementById("stdout"));
+ fs.dump(document.getElementById("stdout"), function() {
+ var readBuffer = new Uint8Array(8);
+ fd.seek(-bytes_written);
+ fd.read(readBuffer, function(error, bytes_read, buffer) {
+ if(!error) {
+ console.log("bytes read:", bytes_read);
+ console.log("buffer:", buffer);
+ }
+ fs.close(fd, function(error) {
+ fs.unlink("/tmp/0", function(error) {
+ fs.dump(document.getElementById("stdout"));
+ });
});
});
- });
+ }, true);
});
});
});
- }, true);
+ }, IDBFS.FORMAT);
});
diff --git a/src/filesystem.js b/src/filesystem.js
index 5971a43..05964f0 100644
--- a/src/filesystem.js
+++ b/src/filesystem.js
@@ -486,11 +486,13 @@ define(function(require) {
this.api = api;
// DEBUG
- function dump(element) {
- element.innerHTML = "Metadata://
";
- var transaction = db.transaction([METADATA_STORE_NAME, FILE_STORE_NAME], IDB_RO);
- var metaStore = transaction.objectStore(METADATA_STORE_NAME);
- var fileStore = transaction.objectStore(FILE_STORE_NAME);
+ function dump(element, callback, clear) {
+ if(clear) {
+ element.innerHTML = "";
+ }
+ element.innerHTML += "Metadata://
";
+ var transaction = db.transaction([METADATA_STORE_NAME], IDB_RO);
+ var metaStore = transaction.objectStore(METADATA_STORE_NAME);
var metaRequest = metaStore.openCursor();
metaRequest.onsuccess = function(e) {
var metaCursor = e.target.result;
@@ -499,12 +501,19 @@ define(function(require) {
metaCursor.continue();
} else {
element.innerHTML += "Files://
"
- fileRequest = fileStore.openCursor();
+ transaction = db.transaction([FILE_STORE_NAME], IDB_RO);
+ var fileStore = transaction.objectStore(FILE_STORE_NAME);
+ var fileRequest = fileStore.openCursor();
fileRequest.onsuccess = function(e) {
var fileCursor = e.target.result;
if(fileCursor) {
element.innerHTML += JSON.stringify(fileCursor.key) + "
";
fileCursor.continue();
+ } else {
+ element.innerHTML += "-----------------
";
+ if(callback && "function" === typeof callback) {
+ callback.call();
+ }
}
}
}
@@ -515,7 +524,7 @@ define(function(require) {
function mount(name, callback, optFormat) {
debug.info("mount -->");
- optFormat = (undefined === optFormat) ? false : optFormat;
+ optFormat = (IDBFS.FORMAT === optFormat) ? true : false;
var onerror = genericIDBErrorHandler("mount", callback);
var openRequest = indexedDB.open(name);
openRequest.onupgradeneeded = function(e) {
@@ -574,7 +583,9 @@ define(function(require) {
var IDBFS = {
mount: mount,
umount: undefined,
- path: path
+ path: path,
+
+ FORMAT: "IDBFS_FORMAT"
};
return IDBFS;