A URL would probably help: https://github.com/AdamClements/schejulure
On Thursday, January 17, 2013 5:56:40 PM UTC, Adam Clements wrote: > > So there are a few scheduling libraries around, I wanted one for cron-like > job scheduling and my options were quite limited, there are things like > clj-cronlike and quartzite but I found the syntax quite clunky and didn't > like the central stateful scheduler idea. There are also things like at-at, > but that's more for events recurring over seconds/minutes or one-shot > events, so that was out too. > > In the end I wrote my own library. It's tiny (~60 lines) and does one task > quite well. It's modelled after futures, and in fact returns a future, so > use it in the same places/way you might use a future, but for recurring > events. > > To schedule things, it's like a cron setup (so by default fires every > minute of every hour of every day...) but you can pass a map of times when > it should fire, so for example {:minute [0 15 30 45] :day :tue} will fire > every 15 minutes on a tuesday where {:hour 9} will fire every minute from > 9-10am every day. Beyond that you simply call schedule with pairs of > schedule maps to functions which should fire. > > Example: > => (def my-running-scheduler > (schedule {:hour 12 :minute [0 15 30 45]} my-function > {:hour (range 0 24 6) :minute 0 :day [:sat :sun]} > batch-job)) > > ... > => (future-cancel my-running-scheduler) > > Simple as that. > > Like I say, this was to scratch my own itch, but if anyone else finds it > useful, great. If it nearly does what you want but not quite... hey, it's > only 60 lines, fork it/fix it. If anyone has suggestions for features, > bugfixes or other libraries I should be contributing this code to instead, > that would be useful knowledge too. > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en