Пример #1
0
 /**
  * @return \Google_Service_Datastore_Filter
  * @throws MissingFieldsException
  */
 public function build()
 {
     $propertyFilter = new \Google_Service_Datastore_PropertyFilter();
     $missing = [];
     if (empty($this->property)) {
         $missing[] = '$propertyName';
     }
     if (empty($this->operator)) {
         $missing[] = '$operator';
     }
     if (empty($this->value)) {
         $missing[] = '$value';
     }
     if (!empty($missing)) {
         throw new MissingFieldsException(self::class, $missing);
     }
     $propertyFilter->setProperty($this->property);
     $propertyFilter->setOperator($this->operator->value());
     $propertyFilter->setValue($this->value);
     $filter = new \Google_Service_Datastore_Filter();
     $filter->setPropertyFilter($propertyFilter);
     return $filter;
 }
 /**
  * Create a composite 'and' filter.
  * @param $filters Array of filters
  */
 protected static function createCompositeFilter($filters)
 {
     $composite_filter = new Google_Service_Datastore_CompositeFilter();
     $composite_filter->setOperator('and');
     $composite_filter->setFilters($filters);
     $filter = new Google_Service_Datastore_Filter();
     $filter->setCompositeFilter($composite_filter);
     return $filter;
 }
Пример #3
0
 /**
  * @return \Google_Service_Datastore_Filter
  * @throws MissingFieldsException
  */
 public function build()
 {
     $compositeFilter = new \Google_Service_Datastore_CompositeFilter();
     $missing = [];
     if (empty($this->filters)) {
         $missing[] = '$filter';
     }
     if (empty($this->operator)) {
         $missing[] = '$operator';
     }
     if (!empty($missing)) {
         throw new MissingFieldsException(self::class, $missing);
     }
     $compositeFilter->setFilters($this->filters);
     $compositeFilter->setOperator($this->operator);
     $filter = new \Google_Service_Datastore_Filter();
     $filter->setCompositeFilter($compositeFilter);
     return $filter;
 }