diff --git a/modules/reitit-core/src/reitit/exception.cljc b/modules/reitit-core/src/reitit/exception.cljc index df61b66a..2ac4383d 100644 --- a/modules/reitit-core/src/reitit/exception.cljc +++ b/modules/reitit-core/src/reitit/exception.cljc @@ -7,6 +7,10 @@ ([type data] (throw (ex-info (str type) {:type type, :data data})))) +(defn unsupported-protocol-method! + [method] + (fail! :unsupported-protocol-method {:method method})) + (defn get-message [e] #?(:clj (.getMessage ^Exception e) :cljs (ex-message e))) diff --git a/modules/reitit-pedestal/src/reitit/pedestal.clj b/modules/reitit-pedestal/src/reitit/pedestal.clj index c71f8873..b98345f5 100644 --- a/modules/reitit-pedestal/src/reitit/pedestal.clj +++ b/modules/reitit-pedestal/src/reitit/pedestal.clj @@ -2,6 +2,7 @@ (:require [io.pedestal.http :as http] [io.pedestal.interceptor :as interceptor] [io.pedestal.interceptor.chain :as chain] + [reitit.exception :as ex] [reitit.http] [reitit.interceptor]) (:import (java.lang.reflect Method))) @@ -51,6 +52,10 @@ (map (fn [{::interceptor/keys [handler] :as interceptor}] (or handler interceptor))) (keep ->interceptor))) + (execute [_ _ _] + (ex/unsupported-protocol-method! 'reitit.interceptor/execute)) + (execute [_ _ _ _ _] + (ex/unsupported-protocol-method! 'reitit.interceptor/execute)) (enqueue [_ context interceptors] (chain/enqueue context interceptors)))) diff --git a/modules/reitit-sieppari/src/reitit/interceptor/sieppari.clj b/modules/reitit-sieppari/src/reitit/interceptor/sieppari.clj index 1fa4e242..f8725037 100644 --- a/modules/reitit-sieppari/src/reitit/interceptor/sieppari.clj +++ b/modules/reitit-sieppari/src/reitit/interceptor/sieppari.clj @@ -1,5 +1,6 @@ (ns reitit.interceptor.sieppari - (:require [reitit.interceptor :as interceptor] + (:require [reitit.exception :as ex] + [reitit.interceptor :as interceptor] [sieppari.core :as sieppari] [sieppari.queue :as queue])) @@ -15,4 +16,6 @@ (execute [_ interceptors request] (sieppari/execute interceptors request)) (execute [_ interceptors request respond raise] - (sieppari/execute interceptors request respond raise)))) + (sieppari/execute interceptors request respond raise)) + (enqueue [_ _ _] + (ex/unsupported-protocol-method! 'reitit.interceptor/enqueue))))