Slide 6
Slide 6 text
Multimethodによるコンポーネント定義
•レコードやマップに限らず関数やただの数値などもコン
ポーネントにすることが可能
(require '[ring.jetty.adapter :as jetty]
'[ring.util.response :as resp])
(defmethod ig/init-key :adapter/jetty
[_ {:keys [handler] :as opts}]
(jetty/run-jetty handler (-> opts
(dissoc :handler) (assoc :join? false))))
(defmethod ig/init-key :handler/greet
[_ {:keys [name]}]
(fn [_] (resp/response (str "Hello " name))))