public static ISwarmBuilder UseSqlServer(this ISwarmBuilder builder) { builder.Services.AddSingleton <IJobStore>(provider => { var jobStore = new JobStoreTX { DataSource = "swarm", TablePrefix = "QRTZ_", InstanceId = "AUTO", DriverDelegateType = typeof(SqlServerDelegate).AssemblyQualifiedName, ObjectSerializer = new JsonObjectSerializer() }; return(jobStore); }); builder.Services.AddSingleton(provider => { var connectionString = provider.GetRequiredService <IOptions <SwarmOptions> >().Value.ConnectionString; return(new StdSchedulerFactory(new NameValueCollection { { "schedName", "Server" }, { "quartz.jobStore.type", "Quartz.Impl.AdoJobStore.JobStoreTX, Quartz" }, { "quartz.jobStore.driverDelegateType", "Quartz.Impl.AdoJobStore.StdAdoDelegate, Quartz" }, { "quartz.jobStore.tablePrefix", "QRTZ_" }, { "quartz.jobStore.useProperties", "true" }, { "quartz.serializer.type", "json" }, { "quartz.jobStore.dataSource", "swarn" }, { "quartz.dataSource.swarn.provider", "SqlServer" }, { "quartz.dataSource.swarn.connectionString", connectionString } }).GetScheduler().Result); }); builder.Services.AddSingleton <ISwarmStore, SqlServerSwarmStore>(); return(builder); }
public static ISwarmBuilder UseDefaultSharding(this ISwarmBuilder builder) { builder.Services.AddSingleton <ISharding, DefaultSharding>(); return(builder); }
public static ISwarmBuilder UseSqlServer(this ISwarmBuilder builder) { builder.Services.AddSingleton <ISwarmStore, SqlServerSwarmStore>(); return(builder); }