c999c2d
Branches > facts > c999c2d > files / src / net / bowmap / transport
Rename response handler
Commit: c999c2d0e406765d4b831c446914bf5eb4b31759
Parent: 6163894
4 changed files:
src/net/bowmap/protocol/server.clj view file
@@ -7,7 +7,7 @@ [net.bowmap.protocol.packet.serverbound :refer [decode-packet!]] [net.bowmap.protocol.state :as state] [net.bowmap.server.logic :as logic]- [net.bowmap.stormbow.responses :refer [handle-responses!]]+ [net.bowmap.stormbow.responses :refer [execute-responses!]] [net.bowmap.transport.connection :as connection] [net.bowmap.transport.server :as mc])) @@ -27,7 +27,7 @@ (doseq [pk packets] (put! clientbound-packets pk)) (doseq [fact facts]- (handle-responses! (map #(assoc % ::client/client client) (logic/handle-fact fact))))+ (execute-responses! (map #(assoc % ::client/client client) (logic/handle-fact fact)))) (recur client)))) clientbound-packets ([packet] (if (some? packet)src/net/bowmap/server/entity.clj view file
@@ -0,0 +1 @@+(ns net.bowmap.server.entity)src/net/bowmap/stormbow/response.clj view file
@@ -2,5 +2,7 @@ (:require [clojure.spec.alpha :as s])) +; TODO could call an effect, I do like that name+ (s/def ::response (s/keys :opt [::id])) (s/def ::id qualified-keyword?)src/net/bowmap/stormbow/responses.clj view file
@@ -6,16 +6,16 @@ [net.bowmap.protocol.packet.clientbound :as clientbound] [net.bowmap.stormbow.response :as response])) -(defmulti handle-response!+(defmulti execute-response! (fn [response] (::response/id response))) -(defmethod handle-response! ::response/send-server-list [response]+(defmethod execute-response! ::response/send-server-list [response] (let [{:keys! [::client/client server-list-response]} response {::client/keys! [clientbound-packets]} client packet {::pk/id ::clientbound/status-response :response server-list-response}] (put! clientbound-packets packet))) -(defn handle-responses! [responses]- (run! handle-response! responses))+(defn execute-responses! [responses]+ (run! execute-response! responses))