Fahad
Fahad

Reputation: 173

unscheduling job in quartz

I am using Quartz to schedule job in my c# .net application. I am storing all data in database. My code is :

ISchedulerFactory schedFact = new StdSchedulerFactory(properties);
        _scheduler = schedFact.GetScheduler();
        _scheduler.Start();

       job = JobBuilder.Create<JobTask>()
             .WithIdentity("job1", "group1")
        .Build();

          trigger = TriggerBuilder.Create()
            .WithIdentity("trigger1", "group1")
            .WithSchedule(
        CronScheduleBuilder.CronSchedule("0 0/5 * * * ?"))
         .Build();
         _scheduler.ScheduleJob(job, trigger);

Now I would like to give user function so user can disable(unschedule) job. I have look in quartz tutorial but I can't find the way to do it in c#.

Upvotes: 3

Views: 3890

Answers (2)

Teoman shipahi
Teoman shipahi

Reputation: 23052

Your Job class can implement IInterruptableJob interface and implement

public void Interrupt()
{
    JobKey jobKey = new JobKey(JobName, MyService.GroupName);
    Scheduler.Interrupt(jobKey);
}

Upvotes: 1

Anand
Anand

Reputation: 757

You can call following method in IScheduler

    //
    // Summary:
    //     Remove the indicated Quartz.Trigger from the scheduler.
    bool UnscheduleJob(string triggerName, string groupName);

Upvotes: 2

Related Questions