title: Checking if the job exists without looping through all the jobs
body: <p>I would like my application to prevent from adding identical jobs on my Windows service. That means if the job key exists, I would like to warn the user about it. I am using my scheduler's <code>CheckExists()</code> method like this:</p>
  
  <pre><code>IScheduler sched = scheduler.GetScheduler();
  IJobDetail postbagjob = JobBuilder.Create&lt;PostbagJob&gt;()
      .WithIdentity(jobName, jobGroup)
      .UsingJobData("CampaignId", campaignId.ToString())
      .UsingJobData("CampaignType", campaignType)
      .Build();
  ITrigger postbagJobTrigger = (ICronTrigger)TriggerBuilder.Create()
      .WithIdentity(triggerName, triggerGroup)
      .WithCronSchedule(cron)
      .StartAt(DateTime.Now)
      .Build();
  if (sched.CheckExists(postbagjob.Key))
  {
      MsgBox.Show("Job already exists!");
  }
  else
  {
      MsgBox.Show("It's ok. You can schedule this job.");
  }
  </code></pre>
  
  <p>The problem is this function receives a <code>JobKey</code> as the argument. And by that I assume that the job should already be created. So the code above will give an exception. Is there a way to check if a specific <code>JobKey</code> exists before we create a job?</p>
  
  <p>I know that a way of doing it is to loop through all the jobs. But can we do it without it?</p>