Skip to content

Instantly share code, notes, and snippets.

@terjesb
Forked from hlship/feed.clj
Created November 26, 2016 17:01
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save terjesb/58d9da26aeca4fcb8b6378216355513c to your computer and use it in GitHub Desktop.
Save terjesb/58d9da26aeca4fcb8b6378216355513c to your computer and use it in GitHub Desktop.
(def payment-codes-per-block 4096)
(defn create-payment-code-feed
[db]
(let [payment-code-feed (chan 10)]
(go-loop []
(let [block-id (allocate-block db)
block-start (* block-id payment-codes-per-block)]
(-> (onto-chan payment-code-feed
(->>
(range block-start (+ block-start payment-codes-per-block))
(map sa/int->six-alpha))
;; Don't close!
false)
;; park here until all of that block has been consumed.
<!))
;; Loop forever.
(recur))
payment-code-feed))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment