summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/weepinbell/channel.clj14
-rw-r--r--src/weepinbell/core.clj3
-rw-r--r--src/weepinbell/handler.clj6
3 files changed, 18 insertions, 5 deletions
diff --git a/src/weepinbell/channel.clj b/src/weepinbell/channel.clj
new file mode 100644
index 0000000..3c0180a
--- /dev/null
+++ b/src/weepinbell/channel.clj
@@ -0,0 +1,14 @@
+;; channel.clj defines and exports 'wmc'
+;; this is a channel (queue) in which
+;; webmentions are put and retrieved
+;;
+;; it should only be referred to in core.clj
+;; and handler.clj, and passed as an argument
+;; to processer.clj and retriever.clj.
+;; This keeps components loosely coupled.
+
+(ns weepinbell.channel
+ (:require [clojure.core.async :refer [chan]]))
+
+(def wmc (chan))
+
diff --git a/src/weepinbell/core.clj b/src/weepinbell/core.clj
index 854c317..b2e365b 100644
--- a/src/weepinbell/core.clj
+++ b/src/weepinbell/core.clj
@@ -1,7 +1,8 @@
(ns weepinbell.core
(:require [ring.adapter.jetty :refer [run-jetty]]
[weepinbell.processor :refer [process-webmention]]
- [weepinbell.handler :refer [app wmc]]
+ [weepinbell.handler :refer [app]]
+ [weepinbell.channel :refer [wmc]]
[weepinbell.config :refer [get-config]]
[weepinbell.webhook :as webhook]
[taoensso.timbre :as timbre])
diff --git a/src/weepinbell/handler.clj b/src/weepinbell/handler.clj
index 4782627..a4b69fc 100644
--- a/src/weepinbell/handler.clj
+++ b/src/weepinbell/handler.clj
@@ -7,11 +7,9 @@
[weepinbell.config :refer [get-config]]
[weepinbell.receiver :refer [receive]]
[weepinbell.retriever :as retriever]
+ [weepinbell.channel :refer [wmc]]
[weepinbell.ui :as ui]
- [weepinbell.feed :as feed]
- [clojure.core.async :refer [chan]]))
-
-(def wmc (chan))
+ [weepinbell.feed :as feed]))
;; Define API routes