   (-send-message [this channel-id msg-data callback])
   (-connection-data [this])
   (-actual [this]))
-
-
 
 (defn get-open-file-command [open-file-command {:keys [file-name file-line file-column]}]
   (when open-file-command

        (catch Exception e
          (println "Figwheel: there was a problem running the open file command - "
                   command)
          (println (.getMessage e)))))))

;; should make this extendable with multi-method
(defn handle-client-msg [{:keys [browser-callbacks log-writer] :as server-state} data]


(defn exec-open-file-command [{:keys [open-file-command] :as server-state} msg]
  (when-let [msg (#'validate-file-selected-msg msg)]
    (if-let [command (get-open-file-command open-file-command msg)]
      (try
        (let [result (apply shell/sh command)]
          (if (zero? (:exit result))
