summaryrefslogtreecommitdiff
path: root/app/relay
diff options
context:
space:
mode:
Diffstat (limited to 'app/relay')
-rw-r--r--app/relay/remote.js10
-rw-r--r--app/relay/runner.js8
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) => {