diff options
Diffstat (limited to 'app/relay')
| -rw-r--r-- | app/relay/remote.js | 10 | ||||
| -rw-r--r-- | app/relay/runner.js | 8 |
2 files changed, 18 insertions, 0 deletions
diff --git a/app/relay/remote.js b/app/relay/remote.js index 6911572..1c9875f 100644 --- a/app/relay/remote.js +++ b/app/relay/remote.js @@ -116,6 +116,16 @@ remote.on('system', (data) => { }) }) break + case 'count_directory': + runner.count_directory(data.payload, count => { + remote.emit('system_res', { + type: 'count_directory', + dir: data.payload, + uuid: data.uuid, + count, + }) + }) + break case 'list_sequences': runner.list_sequences(data.payload, sequences => { remote.emit('system_res', { diff --git a/app/relay/runner.js b/app/relay/runner.js index 2bd0c56..44f2554 100644 --- a/app/relay/runner.js +++ b/app/relay/runner.js @@ -195,6 +195,14 @@ export function list_directory(opt, cb) { }) } +export function count_directory(opt, cb) { + const dir = module_dir(opt, opt.dir) + if (!dir) return cb([]) + fs.readdir(dir, (err, files) => { + err ? cb(err) : cb(files.length) + }) +} + // list the contents of a directory of sequences export function list_sequences(opt, cb) { list_directory(opt, (files, root_dir) => { |
