Liking cljdoc? Tell your friends :D

hive-rss.pipeline.deliver

Where new items go: filed as memory notes, or ingested by hive-ingestor.

:rss/sink picks. "memory" files notes. "ingestor" ingests, and a call that fails leaves the items unseen for the next poll. "auto" ingests when the host offers a :tools/invoke port and falls back to notes for a batch the ingestor could not take, so items are delivered either way.

Where new items go: filed as memory notes, or ingested by hive-ingestor.

`:rss/sink` picks. `"memory"` files notes. `"ingestor"` ingests, and a
call that fails leaves the items unseen for the next poll. `"auto"` ingests
when the host offers a `:tools/invoke` port and falls back to notes for a
batch the ingestor could not take, so items are delivered either way.
raw docstring

hive-rss.pipeline.poll

One poll of one feed, and one pass over every due feed.

Effects arrive as functions so the pipeline runs the same against the network and the memory store as against test doubles:

:fetch (fn [url {:keys [etag last-modified timeout-ms max-bytes]}]) -> Result :file! (fn [entry]) -> Result {:id :duplicate?} :deliver! (fn [settings subscription feed items]) -> delivery, optional: replaces filing entry by entry (hive-ingestor delivery). A delivery is {:filed [item-key] :created :duplicates :failed :last-error} :save! (fn [state]) persists the whole state :now (fn []) -> epoch seconds

One poll of one feed, and one pass over every due feed.

Effects arrive as functions so the pipeline runs the same against the
network and the memory store as against test doubles:

  :fetch    (fn [url {:keys [etag last-modified timeout-ms max-bytes]}]) -> Result
  :file!    (fn [entry]) -> Result {:id :duplicate?}
  :deliver! (fn [settings subscription feed items]) -> delivery, optional:
            replaces filing entry by entry (hive-ingestor delivery).
            A delivery is {:filed [item-key] :created :duplicates :failed :last-error}
  :save!  (fn [state])            persists the whole state
  :now    (fn []) -> epoch seconds
raw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
Move to previous article
Move to next article
Ctrl+/Jump to the search field
× close