original_string: public function selectRequest(ObjectListQuery $objectListQuery = null, array $options = []): PromiseInterface
      {
          if (!$objectListQuery) {
              $objectListQuery = new ObjectListQuery();
          }
  
          $annotation = $this->dataService->getAnnotation();
  
          if (!isset($options['query'])) {
              $options['query'] = [];
          }
          $options['query'] = $options['query'] +
              $objectListQuery->toQueryParts() + [
                  'schema' => $annotation->schemaVersion,
                  'form' => 'cjson',
                  'count' => true,
              ];
  
          if ($this->authenticatedClient->hasAccount()) {
              $options['query']['account'] = (string) $this->authenticatedClient->getAccount()->getMpxId();
          }
  
          $uri = $this->getBaseUri($annotation, true);
  
          $request = $this->authenticatedClient->requestAsync('GET', $uri, $options)->then(
              function (ResponseInterface $response) use ($objectListQuery) {
                  return $this->deserializeObjectList($response, $objectListQuery);
              }
          );
  
          return $request;
      }
code: public function selectRequest(ObjectListQuery $objectListQuery = null, array $options = []): PromiseInterface
      {
          if (!$objectListQuery) {
              $objectListQuery = new ObjectListQuery();
          }
  
          $annotation = $this->dataService->getAnnotation();
  
          if (!isset($options['query'])) {
              $options['query'] = [];
          }
          $options['query'] = $options['query'] +
              $objectListQuery->toQueryParts() + [
                  'schema' => $annotation->schemaVersion,
                  'form' => 'cjson',
                  'count' => true,
              ];
  
          if ($this->authenticatedClient->hasAccount()) {
              $options['query']['account'] = (string) $this->authenticatedClient->getAccount()->getMpxId();
          }
  
          $uri = $this->getBaseUri($annotation, true);
  
          $request = $this->authenticatedClient->requestAsync('GET', $uri, $options)->then(
              function (ResponseInterface $response) use ($objectListQuery) {
                  return $this->deserializeObjectList($response, $objectListQuery);
              }
          );
  
          return $request;
      }
code_tokens: public function selectRequest ( ObjectListQuery $ objectListQuery = null , array $ options = [ ] ) : PromiseInterface { if ( ! $ objectListQuery ) { $ objectListQuery = new ObjectListQuery ( ) ; } $ annotation = $ this -> dataService -> getAnnotation ( ) ; if ( ! isset ( $ options [ 'query' ] ) ) { $ options [ 'query' ] = [ ] ; } $ options [ 'query' ] = $ options [ 'query' ] + $ objectListQuery -> toQueryParts ( ) + [ 'schema' => $ annotation -> schemaVersion , 'form' => 'cjson' , 'count' => true , ] ; if ( $ this -> authenticatedClient -> hasAccount ( ) ) { $ options [ 'query' ] [ 'account' ] = ( string ) $ this -> authenticatedClient -> getAccount ( ) -> getMpxId ( ) ; } $ uri = $ this -> getBaseUri ( $ annotation , true ) ; $ request = $ this -> authenticatedClient -> requestAsync ( 'GET' , $ uri , $ options ) -> then ( function ( ResponseInterface $ response ) use ( $ objectListQuery ) { return $ this -> deserializeObjectList ( $ response , $ objectListQuery ) ; } ) ; return $ request ; }
docstring: Return a promise to an object list.
  
  @see \Lullabot\Mpx\DataService\DataObjectFactory::select
  
  @param ObjectListQuery $objectListQuery (optional) The fields and values to filter by. Note these are exact
  matches.
  @param array           $options         (optional) An array of HTTP client options.
  
  @return PromiseInterface A promise to return an ObjectList.
docstring_tokens: Return a promise to an object list .