Platform |
Master |
---|---|
Windows | |
Linux / OS X |
RavenDB job storage for Hangfire
This is how you connect to a ravendb server (local or remote)
GlobalConfiguration.Configuration.UseRavenStorage("connection_string", "database_name");
This is how you connect to an embedded ravendb instance
GlobalConfiguration.Configuration.UseEmbeddedRavenStorage();
To enqueue a background job you must have the following in the code somewhere at least once or the background job queue will not process
var client = new BackgroundJobServer();
\\then you can do this, which runs once
BackgroundJob.Enqueue(() => Console.WriteLine("Background Job: Hello, world!"));
Scheduled background jobs are being executed only after given amount of time.
BackgroundJob.Schedule(() => Console.WriteLine("Reliable!"), TimeSpan.FromDays(7));
Recurring jobs were never been simpler, just call the following method to perform any kind of recurring task using the CRON expressions.
RecurringJob.AddOrUpdate(() => Console.WriteLine("Transparent!"), Cron.Daily);
Continuations allow you to define complex workflows by chaining multiple background jobs together.
var id = BackgroundJob.Enqueue(() => Console.WriteLine("Hello, "));
BackgroundJob.ContinueWith(id, () => Console.WriteLine("world!"));
Copyright © 2013-2014 Sergey Odinokov.
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this program. If not, see http://www.gnu.org/licenses/.
Hangfire.Tests requires RavenDB.Client which requires .Net 4.5. Until RavenDB 4.0 is released, Hangfire.Tests cannot be included and run.