diff options
| -rw-r--r-- | l/extreload.asd | 3 | ||||
| -rw-r--r-- | l/src/main.lisp | 18 | 
2 files changed, 15 insertions, 6 deletions
| diff --git a/l/extreload.asd b/l/extreload.asd index 21a5329..8a1cfc2 100644 --- a/l/extreload.asd +++ b/l/extreload.asd @@ -1,7 +1,8 @@  (asdf:defsystem extreload    :version "0.0.1"    :depends-on (:jsown -               :websocket-driver-client) +                :wait-group +                :websocket-driver-client)    :components ((:module "src"                  :serial t                  :components ((:file "package") diff --git a/l/src/main.lisp b/l/src/main.lisp index 42c0ccd..7ad0611 100644 --- a/l/src/main.lisp +++ b/l/src/main.lisp @@ -2,14 +2,16 @@  (defvar *client* (wsd:make-client "ws://127.0.0.1:55755/devtools/browser/ec1d4b1c-ced0-47ab-a32e-6fdd5b51e1ba")) +(defvar *wg* (wait-group:make-wait-group)) +  (defun main ()    (wsd:start-connection *client*)    (wsd:on :message *client* #'ws-on-message) -  (wsd:send *client* (target-get-targets-msg 1)) +  (websocket-send *client* (target-get-targets-msg 1)) -  (sleep 5) +  (wait-group:wait *wg*)    (wsd:close-connection *client*)) @@ -49,7 +51,9 @@          (reload-extension            (json-obj-get              (json-obj-get response "params") -            "sessionId"))))) +            "sessionId"))) + +    (wait-group:done *wg*)))  (defun parse-get-targets-response (response)    (let* ((result (json-obj-get response "result")) @@ -78,11 +82,11 @@  (defun attach-to-target (extension)    (let ((target-id (json-obj-get extension "targetId"))) -    (wsd:send *client* +    (websocket-send *client*                (target-attach-to-target-msg 2 target-id))))  (defun reload-extension (session-id) -  (wsd:send *client* +  (websocket-send *client*              (runtime-evaluate-msg 1 session-id "chrome.runtime.reload()")))  (defun extension-targets (targets) @@ -91,3 +95,7 @@                        "background_page")))      (filter #'extensionp targets))) + +(defun websocket-send (client data) +  (wsd:send *client* data) +  (wait-group:add *wg*)) | 
