reorganize files to group local and remote file access functions by "source".
| | |
| | | callback(e || new Error('failed request')); |
| | | }); |
| | | }, |
| | | // Fetching local and remote files |
| | | // Local file access |
| | | loadLocalEntry: function(path, callback) { |
| | | var stat, node; |
| | | |
| | |
| | | return callback(new Error('node type not supported')); |
| | | } |
| | | }, |
| | | loadRemoteEntry: function(mount, pathinfo, callback) { |
| | | if (pathinfo.type == 'file') { |
| | | mount.opts.provider.read(mount.opts.cloud, pathinfo.url, |
| | | function(data) { |
| | | callback(null, { contents: data, timestamp: pathinfo.timestamp, mode: CLOUDFS._FILE_MODE }); |
| | | }, |
| | | function(e) { |
| | | callback(e); |
| | | }); |
| | | } else { |
| | | callback(null, { timestamp: pathinfo.timestamp, mode: CLOUDFS._DIR_MODE }); |
| | | } |
| | | }, |
| | | // storing local and remote files |
| | | storeLocalEntry: function(path, entry, callback) { |
| | | try { |
| | | if (FS.isDir(entry.mode)) { |
| | |
| | | |
| | | callback(null); |
| | | }, |
| | | storeRemoteEntry: function(mount, pathinfo, entry, callback) { |
| | | if (FS.isFile(entry.mode)) { |
| | | mount.opts.provider.write(mount.opts.cloud, pathinfo, entry.contents, function() { |
| | | callback(null); |
| | | }, |
| | | function(e) { |
| | | callback(e); |
| | | }) |
| | | } |
| | | }, |
| | | // remove local and remote files |
| | | removeLocalEntry: function(path, callback) { |
| | | try { |
| | | var lookup = FS.lookupPath(path); |
| | |
| | | |
| | | callback(null); |
| | | }, |
| | | // Remote file access |
| | | loadRemoteEntry: function(mount, pathinfo, callback) { |
| | | if (pathinfo.type == 'file') { |
| | | mount.opts.provider.read(mount.opts.cloud, pathinfo.url, |
| | | function(data) { |
| | | callback(null, { contents: data, timestamp: pathinfo.timestamp, mode: CLOUDFS._FILE_MODE }); |
| | | }, |
| | | function(e) { |
| | | callback(e); |
| | | }); |
| | | } else { |
| | | callback(null, { timestamp: pathinfo.timestamp, mode: CLOUDFS._DIR_MODE }); |
| | | } |
| | | }, |
| | | storeRemoteEntry: function(mount, pathinfo, entry, callback) { |
| | | if (FS.isFile(entry.mode)) { |
| | | mount.opts.provider.write(mount.opts.cloud, pathinfo, entry.contents, function() { |
| | | callback(null); |
| | | }, |
| | | function(e) { |
| | | callback(e); |
| | | }) |
| | | } |
| | | }, |
| | | removeRemoteEntry: function(mount, pathinfo, callback) { |
| | | if (pathinfo.type == 'file') { |
| | | mount.opts.provider.rm(mount.opts.cloud, pathinfo, function() { |