Open Data Catalog v2.0.0
Query.php
Go to the documentation of this file.
1 <?php
2 
4 
5 use Contracts\SorterInterface;
6 use Contracts\ConditionerInterface;
7 use Contracts\OffsetterInterface;
8 use Contracts\LimiterInterface;
9 
13 class Query implements
14  SorterInterface,
15  ConditionerInterface,
16  OffsetterInterface,
17  LimiterInterface {
18 
19  public $thing;
20  public $properties = [];
21  public $conditions = [];
22  public $sort = ['ASC' => [], 'DESC' => []];
23  public $limit = NULL;
24  public $offset = NULL;
25  public $count = FALSE;
26 
33  public function setThingToRetrieve($id) {
34  $this->thing = $id;
35  }
36 
40  public function filterByProperty($property) {
41  $this->properties[] = $property;
42  }
43 
47  public function conditionByIsEqualTo(string $property, string $value) {
48  $this->conditions[$property] = $value;
49  }
50 
54  public function limitTo(int $number_of_items) {
55  $this->limit = $number_of_items;
56  }
57 
61  public function offsetBy(int $offset) {
62  $this->offset = $offset;
63  }
64 
68  public function sortByAscending(string $property) {
69  $this->sort['ASC'][] = $property;
70  }
71 
75  public function sortByDescending(string $property) {
76  $this->sort['DESC'][] = $property;
77  }
78 
82  public function count() {
83  $this->count = TRUE;
84  }
85 
86 }
Drupal\dkan_datastore\Storage
Definition: DatabaseTable.php:3
Drupal\dkan_datastore\Storage\Query\conditionByIsEqualTo
conditionByIsEqualTo(string $property, string $value)
Definition: Query.php:47
Drupal\dkan_datastore\Storage\Query\$properties
$properties
Definition: Query.php:20
Drupal\dkan_datastore\Storage\Query\sortByAscending
sortByAscending(string $property)
Definition: Query.php:68
Drupal\dkan_datastore\Storage\Query\sortByDescending
sortByDescending(string $property)
Definition: Query.php:75
Drupal\dkan_datastore\Storage\Query
Definition: Query.php:13
Drupal\dkan_datastore\Storage\Query\filterByProperty
filterByProperty($property)
Definition: Query.php:40
Drupal\dkan_datastore\Storage\Query\$thing
$thing
Definition: Query.php:19
Drupal\dkan_datastore\Storage\Query\$limit
$limit
Definition: Query.php:23
Drupal\dkan_datastore\Storage\Query\setThingToRetrieve
setThingToRetrieve($id)
Definition: Query.php:33
Drupal\dkan_datastore\Storage\Query\$conditions
$conditions
Definition: Query.php:21
Drupal\dkan_datastore\Storage\Query\$offset
$offset
Definition: Query.php:24
Drupal\dkan_datastore\Storage\Query\count
count()
Definition: Query.php:82
Drupal\dkan_datastore\Storage\Query\$count
$count
Definition: Query.php:25
Drupal\dkan_datastore\Storage\Query\limitTo
limitTo(int $number_of_items)
Definition: Query.php:54
Drupal\dkan_datastore\Storage\Query\offsetBy
offsetBy(int $offset)
Definition: Query.php:61
Drupal\dkan_datastore\Storage\Query\$sort
$sort
Definition: Query.php:22