original_string: public function refresh()
      {
          $client = new UriClient($this->base, $this->curlOptions, $this->byteLimit);
          $effective = $client->getEffectiveUri();
          if ($effective == $this->base) {
              $effective = null;
          }
          $statusCode = $client->getStatusCode();
          $nextUpdate = $client->nextUpdate();
          if (strpos($this->base, 'http') === 0 &&
              (
                  $statusCode === null ||
                  (
                      $statusCode >= 500 &&
                      $statusCode < 600
                  )
              ) &&
              $this->displacePush($nextUpdate)
          ) {
              return $client;
          }
          $validUntil = $client->validUntil();
          $content = $client->render()->compressed(self::RENDER_LINE_SEPARATOR);
          $query = $this->pdo->prepare(<<<SQL
  INSERT INTO robotstxt__cache1 (base, content, statusCode, validUntil, nextUpdate, effective)
  VALUES (:base, :content, :statusCode, :validUntil, :nextUpdate, :effective)
  ON DUPLICATE KEY UPDATE content = :content, statusCode = :statusCode, validUntil = :validUntil,
    nextUpdate = :nextUpdate, effective = :effective, worker = 0;
  SQL
          );
          $query->bindValue('base', $this->base, \PDO::PARAM_STR);
          $query->bindValue('content', $content, \PDO::PARAM_STR);
          $query->bindValue('statusCode', $statusCode, \PDO::PARAM_INT | \PDO::PARAM_NULL);
          $query->bindValue('validUntil', $validUntil, \PDO::PARAM_INT);
          $query->bindValue('nextUpdate', $nextUpdate, \PDO::PARAM_INT);
          $query->bindValue('effective', $effective, \PDO::PARAM_STR | \PDO::PARAM_NULL);
          $query->execute();
          return $client;
      }
code: public function refresh()
      {
          $client = new UriClient($this->base, $this->curlOptions, $this->byteLimit);
          $effective = $client->getEffectiveUri();
          if ($effective == $this->base) {
              $effective = null;
          }
          $statusCode = $client->getStatusCode();
          $nextUpdate = $client->nextUpdate();
          if (strpos($this->base, 'http') === 0 &&
              (
                  $statusCode === null ||
                  (
                      $statusCode >= 500 &&
                      $statusCode < 600
                  )
              ) &&
              $this->displacePush($nextUpdate)
          ) {
              return $client;
          }
          $validUntil = $client->validUntil();
          $content = $client->render()->compressed(self::RENDER_LINE_SEPARATOR);
          $query = $this->pdo->prepare(<<<SQL
  INSERT INTO robotstxt__cache1 (base, content, statusCode, validUntil, nextUpdate, effective)
  VALUES (:base, :content, :statusCode, :validUntil, :nextUpdate, :effective)
  ON DUPLICATE KEY UPDATE content = :content, statusCode = :statusCode, validUntil = :validUntil,
    nextUpdate = :nextUpdate, effective = :effective, worker = 0;
  SQL
          );
          $query->bindValue('base', $this->base, \PDO::PARAM_STR);
          $query->bindValue('content', $content, \PDO::PARAM_STR);
          $query->bindValue('statusCode', $statusCode, \PDO::PARAM_INT | \PDO::PARAM_NULL);
          $query->bindValue('validUntil', $validUntil, \PDO::PARAM_INT);
          $query->bindValue('nextUpdate', $nextUpdate, \PDO::PARAM_INT);
          $query->bindValue('effective', $effective, \PDO::PARAM_STR | \PDO::PARAM_NULL);
          $query->execute();
          return $client;
      }
code_tokens: public function refresh ( ) { $ client = new UriClient ( $ this -> base , $ this -> curlOptions , $ this -> byteLimit ) ; $ effective = $ client -> getEffectiveUri ( ) ; if ( $ effective == $ this -> base ) { $ effective = null ; } $ statusCode = $ client -> getStatusCode ( ) ; $ nextUpdate = $ client -> nextUpdate ( ) ; if ( strpos ( $ this -> base , 'http' ) === 0 && ( $ statusCode === null || ( $ statusCode >= 500 && $ statusCode < 600 ) ) && $ this -> displacePush ( $ nextUpdate ) ) { return $ client ; } $ validUntil = $ client -> validUntil ( ) ; $ content = $ client -> render ( ) -> compressed ( self :: RENDER_LINE_SEPARATOR ) ; $ query = $ this -> pdo -> prepare ( <<<SQL
  INSERT INTO robotstxt__cache1 (base, content, statusCode, validUntil, nextUpdate, effective)
  VALUES (:base, :content, :statusCode, :validUntil, :nextUpdate, :effective)
  ON DUPLICATE KEY UPDATE content = :content, statusCode = :statusCode, validUntil = :validUntil,
    nextUpdate = :nextUpdate, effective = :effective, worker = 0;
  SQL ) ; $ query -> bindValue ( 'base' , $ this -> base , \ PDO :: PARAM_STR ) ; $ query -> bindValue ( 'content' , $ content , \ PDO :: PARAM_STR ) ; $ query -> bindValue ( 'statusCode' , $ statusCode , \ PDO :: PARAM_INT | \ PDO :: PARAM_NULL ) ; $ query -> bindValue ( 'validUntil' , $ validUntil , \ PDO :: PARAM_INT ) ; $ query -> bindValue ( 'nextUpdate' , $ nextUpdate , \ PDO :: PARAM_INT ) ; $ query -> bindValue ( 'effective' , $ effective , \ PDO :: PARAM_STR | \ PDO :: PARAM_NULL ) ; $ query -> execute ( ) ; return $ client ; }
docstring: Update the robots.txt
  
  @return UriClient
  @throws Exceptions\DatabaseException
docstring_tokens: Update the robots . txt