code: public synchronized I_CmsScheduledJob getJobInstance() {
  
          if (m_jobInstance != null) {
  
              if (LOG.isDebugEnabled()) {
                  LOG.debug(
                      Messages.get().getBundle().key(
                          Messages.LOG_REUSING_INSTANCE_1,
                          m_jobInstance.getClass().getName()));
              }
  
              // job instance already initialized
              return m_jobInstance;
          }
  
          I_CmsScheduledJob job = null;
  
          try {
              // create an instance of the OpenCms job class
              job = (I_CmsScheduledJob)Class.forName(getClassName()).newInstance();
          } catch (ClassNotFoundException e) {
              LOG.error(Messages.get().getBundle().key(Messages.LOG_CLASS_NOT_FOUND_1, getClassName()), e);
          } catch (IllegalAccessException e) {
              LOG.error(Messages.get().getBundle().key(Messages.LOG_ILLEGAL_ACCESS_0), e);
          } catch (InstantiationException e) {
              LOG.error(Messages.get().getBundle().key(Messages.LOG_INSTANCE_GENERATION_0), e);
          } catch (ClassCastException e) {
              LOG.error(Messages.get().getBundle().key(Messages.LOG_BAD_INTERFACE_0), e);
          }
  
          if (m_reuseInstance) {
              // job instance must be re-used
              m_jobInstance = job;
          }
  
          if (LOG.isDebugEnabled()) {
              LOG.debug(Messages.get().getBundle().key(Messages.LOG_JOB_CREATED_1, getClassName()));
          }
  
          // this should not flood the log files: if class name is wrong or jar files missing this will
          // most likely persist until restart.
          if (job == null) {
              setActive(false);
          }
          return job;
      }
docs: Returns an instance of the configured job class.<p>
  
  If any error occurs during class invocaion, the error
  is written to the OpenCms log and <code>null</code> is returned.<p>
  
  @return an instance of the configured job class, or null if an error occurred