code: @Override
      public void monitorFaxJobImpl(FaxClientSpi faxClientSpi,FaxJob faxJob)
      {
          //get fax job status
          FaxJobStatus faxJobStatus=faxClientSpi.getFaxJobStatus(faxJob);
          if(faxJobStatus==null)
          {
              throw new FaxException("Unable to extract fax job status for fax job: "+faxJob.getID());
          }
  
          synchronized(this.LOCK)
          {
              Map<FaxJob,FaxJobStatus> faxJobMap=this.data.get(faxClientSpi);
              if(faxJobMap==null)
              {
                  faxJobMap=new HashMap<FaxJob,FaxJobStatus>(500);
                  this.data.put(faxClientSpi,faxJobMap);
              }
              
              //add new fax job
              faxJobMap.put(faxJob,faxJobStatus);
              
              if(!this.pollerTask.isRunning())
              {
                  this.pollerTask.startTask();
              }
          }
      }
docs: This function starts monitoring the requested fax job.
  
  @param   faxClientSpi
  The fax client SPI
  @param   faxJob
  The fax job to monitor