diff options
Diffstat (limited to 'desk/ted/beg.hoon')
-rw-r--r-- | desk/ted/beg.hoon | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/desk/ted/beg.hoon b/desk/ted/beg.hoon new file mode 100644 index 0000000..2cabbea --- /dev/null +++ b/desk/ted/beg.hoon @@ -0,0 +1,31 @@ +/- spider +/+ strandio, jsonlib=json-nostrill +=, strand=strand:spider +=, strand-fail=strand-fail:libstrand:spider +^- thread:spider +|= arg=vase + =/ m (strand ,vase) ^- form:m + |^ + =/ ujon !<((unit json) arg) + :: ~& ujon=ujon + ?~ ujon (pure:m !>(bail)) + =/ req (ui:de:jsonlib u.ujon) + ?~ req (pure:m !>(bail)) + ?. ?=(%begs -.u.req) (pure:m !>(bail)) + ?- +<.u.req + %feed + ;< =bowl:spider bind:m get-bowl:strandio + =/ desk q.byk.bowl + ~& dock=[+>.u.req desk] + ;< =cage bind:m (watch-one:strandio /beg/feed [+>.u.req desk] /beg/feed) + ~& > watch-cage=-.cage + =/ j !<(json +.cage) + (pure:m !>(j)) + + %thread + (pure:m !>(bail)) + == + ++ bail ^- json + %+ frond:enjs:format %error + s+'error' + -- |