### Question:
DatasetBasedTimeScheduleStore extends RAMJobStore { @Override public void storeJobsAndTriggers(Map<JobDetail, Set<? extends Trigger>> triggersAndJobs, boolean replace) throws JobPersistenceException { super.storeJobsAndTriggers(triggersAndJobs, replace); for (Map.Entry<JobDetail, Set<? extends Trigger>> e : triggersAndJobs.entrySet()) { persistJobAndTrigger(e.getKey(), null); for (Trigger trigger : e.getValue()) { persistJobAndTrigger(null, (OperableTrigger) trigger); } } } @Inject  DatasetBasedTimeScheduleStore(TransactionRunner transactionRunner, CConfiguration cConf); @Override void initialize(ClassLoadHelper loadHelper, SchedulerSignaler schedSignaler); @Override void storeJob(JobDetail newJob, boolean replaceExisting); @Override void storeTrigger(OperableTrigger newTrigger, boolean replaceExisting); @Override void storeJobsAndTriggers(Map<JobDetail, Set<? extends Trigger>> triggersAndJobs,
                                   boolean replace); @Override void storeJobAndTrigger(JobDetail newJob, OperableTrigger newTrigger); @Override void pauseTrigger(TriggerKey triggerKey); @Override void resumeTrigger(TriggerKey triggerKey); @Override boolean removeTrigger(TriggerKey triggerKey); @Override boolean removeJob(JobKey jobKey);  }### Answer:
@Test public void testStoreJobsAndTriggers() throws SchedulerException { schedulerSetup(true); Map<JobDetail, Set<? extends Trigger>> multiJobsTriggers = new HashMap<>(); JobDetail job1 = getJobDetail("mapreduce1"); multiJobsTriggers.put(job1, Sets.newHashSet(getTrigger("p1"), getTrigger("p2"))); JobDetail job2 = getJobDetail("mapreduce2"); multiJobsTriggers.put(job2, Sets.newHashSet(getTrigger("p3"))); scheduler.scheduleJobs(multiJobsTriggers, true); verifyJobAndTriggers(job1.getKey(), 2, Trigger.TriggerState.NORMAL); verifyJobAndTriggers(job2.getKey(), 1, Trigger.TriggerState.NORMAL); schedulerTearDown(); schedulerSetup(true); verifyJobAndTriggers(job1.getKey(), 2, Trigger.TriggerState.NORMAL); verifyJobAndTriggers(job2.getKey(), 1, Trigger.TriggerState.NORMAL); schedulerTearDown(); }