~edwargix/tallyard

41b98082f89be38a377df6f543973566b2266747 — David Florness 5 years ago 0eb2ee9
Allow kicking of peers from bulletin repl
1 files changed, 10 insertions(+), 0 deletions(-)

M bulletin.rkt
M bulletin.rkt => bulletin.rkt +10 -0
@@ 226,6 226,16 @@
            ['register
             (transition 'registering)
             (reset)]
            ['kick (if (eq? state 'closed)
                       (let* ([peer-uname (read sp)]
                              [peer-uname (if (symbol? peer-uname)
                                        (symbol->string peer-uname)
                                        peer-uname)])
                         (for ([peer _peers]
                               #:when (equal? (hash-ref peer 'username)
                                              peer-uname))
                           (set-remove! _peers peer)))
                       (displayln "close the election first"))]
            [else (displayln "unknown command")])
          (when (not (equal? line ""))
            (add-history line))