private void executeDatasetRules()

in src/main/java/com/google/gcs/sdrs/service/worker/impl/ExecuteRetentionWorker.java [183:201]


  private void executeDatasetRules(List<RetentionRule> rules, String projectId) throws IOException {
    List<RetentionJob> errorJobs = new ArrayList<>();
    List<RetentionJob> jobs = ruleExecutor.executeDatasetRule(rules, projectId);
    if (jobs != null) {
      for (RetentionJob job : jobs) {
        job.setBatchId(getUuid());
        if (job.getName() == null) {
          errorJobs.add(job);
        } else {
          retentionJobDao.save(job);
        }
      }
    }

    if (!errorJobs.isEmpty()) {
      throw new IOException(
          String.format("Failed to schedule %d retention jobs for dataset rule", errorJobs.size()));
    }
  }