original_string: public function addJob($queue, Job $job, $maxlen = 0, $async = false)
      {
          $command = [
              'ADDJOB',
              $queue,
              $job->getBody(),
              $this->getReplicationTimeout(),
              'REPLICATE', $this->getReplicationFactor(),
              'DELAY', $job->getDelay(),
              'RETRY', $job->getRetry(),
              'TTL', $job->getTtL(),
          ];
  
          if ($maxlen) {
              $command[] = 'MAXLEN';
              $command[] = (int) $maxlen;
          }
  
          if ($async) {
              $command[] = 'ASYNC';
          }
  
          $id = $this->send($command);
          $job->setId($id);
          $job->setQueue($queue);
          return $job;
      }
code: public function addJob($queue, Job $job, $maxlen = 0, $async = false)
      {
          $command = [
              'ADDJOB',
              $queue,
              $job->getBody(),
              $this->getReplicationTimeout(),
              'REPLICATE', $this->getReplicationFactor(),
              'DELAY', $job->getDelay(),
              'RETRY', $job->getRetry(),
              'TTL', $job->getTtL(),
          ];
  
          if ($maxlen) {
              $command[] = 'MAXLEN';
              $command[] = (int) $maxlen;
          }
  
          if ($async) {
              $command[] = 'ASYNC';
          }
  
          $id = $this->send($command);
          $job->setId($id);
          $job->setQueue($queue);
          return $job;
      }
code_tokens: public function addJob ( $ queue , Job $ job , $ maxlen = 0 , $ async = false ) { $ command = [ 'ADDJOB' , $ queue , $ job -> getBody ( ) , $ this -> getReplicationTimeout ( ) , 'REPLICATE' , $ this -> getReplicationFactor ( ) , 'DELAY' , $ job -> getDelay ( ) , 'RETRY' , $ job -> getRetry ( ) , 'TTL' , $ job -> getTtL ( ) , ] ; if ( $ maxlen ) { $ command [ ] = 'MAXLEN' ; $ command [ ] = ( int ) $ maxlen ; } if ( $ async ) { $ command [ ] = 'ASYNC' ; } $ id = $ this -> send ( $ command ) ; $ job -> setId ( $ id ) ; $ job -> setQueue ( $ queue ) ; return $ job ; }
docstring: Enqueue the given job.
  
  @param string $queue
  @param Job    $job
  @param int    $maxlen specifies that if there are already count messages queued for the specified queue name,
  the message is refused and an error reported to the client.
  @oaram bool   $async asks the server to let the command return ASAP and replicate the job to other nodes in the
  background. The job gets queued ASAP, while normally the job is put into the queue only when
  the client gets a positive reply.
  
  @return Job          The updated job (e.g. ID set).
docstring_tokens: Enqueue the given job .