@Override
  public void pause(String groupName, StorageType storageType) throws SchedulerException {

    try {
      Scheduler scheduler = getScheduler(storageType);

      groupName = fixMaxLength(groupName, _groupNameMaxLength, storageType);

      Set<JobKey> jobKeys = scheduler.getJobKeys(GroupMatcher.jobGroupEquals(groupName));

      scheduler.pauseJobs(GroupMatcher.jobGroupEquals(groupName));

      for (JobKey jobKey : jobKeys) {
        updateJobState(scheduler, jobKey, TriggerState.PAUSED, false);
      }
    } catch (Exception e) {
      throw new SchedulerException("Unable to pause jobs in group " + groupName, e);
    }
  }