code: @Override
    public synchronized void addListener(JobCatalogListener jobListener) {
      Preconditions.checkNotNull(jobListener);
      this.listeners.addListener(jobListener);
  
      if (state() == State.RUNNING) {
        Iterator<JobSpec> jobSpecItr = getJobSpecsWithTimeUpdate();
        while (jobSpecItr.hasNext()) {
          JobSpec jobSpec = jobSpecItr.next();
          if (jobSpec != null) {
            JobCatalogListener.AddJobCallback addJobCallback = new JobCatalogListener.AddJobCallback(jobSpec);
            this.listeners.callbackOneListener(addJobCallback, jobListener);
          }
        }
      }
    }
docs: {@inheritDoc}