original_string: public function query(
          $repositoryId,
          $statement,
          $searchAllVersions = false,
          IncludeRelationships $includeRelationships = null,
          $renditionFilter = Constants::RENDITION_NONE,
          $includeAllowableActions = false,
          $maxItems = null,
          $skipCount = 0,
          ExtensionDataInterface $extension = null
      ) {
          $url = $this->getRepositoryUrl($repositoryId);
  
          $url->getQuery()->modify(
              [
                  Constants::CONTROL_CMISACTION => Constants::CMISACTION_QUERY,
                  Constants::PARAM_STATEMENT => (string) $statement,
                  Constants::PARAM_SEARCH_ALL_VERSIONS => $searchAllVersions ? 'true' : 'false',
                  Constants::PARAM_ALLOWABLE_ACTIONS => $includeAllowableActions ? 'true' : 'false',
                  Constants::PARAM_RENDITION_FILTER => $renditionFilter,
                  Constants::PARAM_SKIP_COUNT => (string) $skipCount,
                  Constants::PARAM_DATETIME_FORMAT => (string) $this->getDateTimeFormat()
              ]
          );
  
          if ($includeRelationships !== null) {
              $url->getQuery()->modify([Constants::PARAM_RELATIONSHIPS => (string) $includeRelationships]);
          }
  
          if ($maxItems > 0) {
              $url->getQuery()->modify([Constants::PARAM_MAX_ITEMS => (string) $maxItems]);
          }
  
          return $this->getJsonConverter()->convertQueryResultList((array) $this->postJson($url));
      }
code: public function query(
          $repositoryId,
          $statement,
          $searchAllVersions = false,
          IncludeRelationships $includeRelationships = null,
          $renditionFilter = Constants::RENDITION_NONE,
          $includeAllowableActions = false,
          $maxItems = null,
          $skipCount = 0,
          ExtensionDataInterface $extension = null
      ) {
          $url = $this->getRepositoryUrl($repositoryId);
  
          $url->getQuery()->modify(
              [
                  Constants::CONTROL_CMISACTION => Constants::CMISACTION_QUERY,
                  Constants::PARAM_STATEMENT => (string) $statement,
                  Constants::PARAM_SEARCH_ALL_VERSIONS => $searchAllVersions ? 'true' : 'false',
                  Constants::PARAM_ALLOWABLE_ACTIONS => $includeAllowableActions ? 'true' : 'false',
                  Constants::PARAM_RENDITION_FILTER => $renditionFilter,
                  Constants::PARAM_SKIP_COUNT => (string) $skipCount,
                  Constants::PARAM_DATETIME_FORMAT => (string) $this->getDateTimeFormat()
              ]
          );
  
          if ($includeRelationships !== null) {
              $url->getQuery()->modify([Constants::PARAM_RELATIONSHIPS => (string) $includeRelationships]);
          }
  
          if ($maxItems > 0) {
              $url->getQuery()->modify([Constants::PARAM_MAX_ITEMS => (string) $maxItems]);
          }
  
          return $this->getJsonConverter()->convertQueryResultList((array) $this->postJson($url));
      }
code_tokens: public function query ( $ repositoryId , $ statement , $ searchAllVersions = false , IncludeRelationships $ includeRelationships = null , $ renditionFilter = Constants :: RENDITION_NONE , $ includeAllowableActions = false , $ maxItems = null , $ skipCount = 0 , ExtensionDataInterface $ extension = null ) { $ url = $ this -> getRepositoryUrl ( $ repositoryId ) ; $ url -> getQuery ( ) -> modify ( [ Constants :: CONTROL_CMISACTION => Constants :: CMISACTION_QUERY , Constants :: PARAM_STATEMENT => ( string ) $ statement , Constants :: PARAM_SEARCH_ALL_VERSIONS => $ searchAllVersions ? 'true' : 'false' , Constants :: PARAM_ALLOWABLE_ACTIONS => $ includeAllowableActions ? 'true' : 'false' , Constants :: PARAM_RENDITION_FILTER => $ renditionFilter , Constants :: PARAM_SKIP_COUNT => ( string ) $ skipCount , Constants :: PARAM_DATETIME_FORMAT => ( string ) $ this -> getDateTimeFormat ( ) ] ) ; if ( $ includeRelationships !== null ) { $ url -> getQuery ( ) -> modify ( [ Constants :: PARAM_RELATIONSHIPS => ( string ) $ includeRelationships ] ) ; } if ( $ maxItems > 0 ) { $ url -> getQuery ( ) -> modify ( [ Constants :: PARAM_MAX_ITEMS => ( string ) $ maxItems ] ) ; } return $ this -> getJsonConverter ( ) -> convertQueryResultList ( ( array ) $ this -> postJson ( $ url ) ) ; }
docstring: Executes a CMIS query statement against the contents of the repository.
  
  @param string $repositoryId The identifier for the repository.
  @param string $statement CMIS query to be executed
  @param boolean $searchAllVersions If <code>true</code>, then the repository MUST include latest and non-latest
  versions of document objects in the query search scope.
  If <code>false</code>, then the repository MUST only include latest versions of documents in the
  query search scope.
  If the repository does not support the optional capabilityAllVersionsSearchable capability, then this
  parameter value MUST be set to <code>false</code>.
  @param IncludeRelationships|null $includeRelationships indicates what relationships in which the objects
  participate must be returned (default is <code>IncludeRelationships::NONE</code>)
  @param string $renditionFilter The Repository MUST return the set of renditions whose kind matches this
  filter. See section below for the filter grammar. Defaults to "cmis:none".
  @param boolean $includeAllowableActions if <code>true</code>, then the repository must return the available
  actions for each object in the result set (default is <code>false</code>)
  @param integer|null $maxItems the maximum number of items to return in a response
  (default is repository specific)
  @param integer $skipCount number of potential results that the repository MUST skip/page over before
  returning any results (default is 0)
  @param ExtensionDataInterface|null $extension
  @return ObjectListInterface|null Returns object of type <code>ObjectListInterface</code>
  or <code>null</code> if the repository response was empty
docstring_tokens: Executes a CMIS query statement against the contents of the repository .