Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / web / core / lib / Drupal / Core / Entity / Query / Sql / TablesInterface.php
1 <?php
2
3 namespace Drupal\Core\Entity\Query\Sql;
4
5 /**
6  * Adds tables and fields to the SQL entity query.
7  */
8 interface TablesInterface {
9
10   /**
11    * Adds a field to a database query.
12    *
13    * @param string $field
14    *   If it doesn't contain a dot, then an entity base field name. If it
15    *   contains a dot, then either field name dot field column or field name dot
16    *   delta dot field column. Delta can be a numeric value or a "%delta" for
17    *   any value.
18    * @param string $type
19    *   Join type, can either be INNER or LEFT.
20    * @param string $langcode
21    *   The language code the field values are to be queried in.
22    *
23    * @return string
24    *   The return value is a string containing the alias of the table, a dot
25    *   and the appropriate SQL column as passed in. This allows the direct use
26    *   of this in a query for a condition or sort.
27    *
28    * @throws \Drupal\Core\Entity\Query\QueryException
29    *   If $field specifies an invalid relationship.
30    */
31   public function addField($field, $type, $langcode);
32
33   /**
34    * Determines whether the given field is case sensitive.
35    *
36    * This information can only be provided after it was added with addField().
37    *
38    * @param string $field_name
39    *   The name of the field.
40    *
41    * @return bool|null
42    *   TRUE if the field is case sensitive, FALSE if not. Returns NULL when the
43    *   field did not define if it is case sensitive or not.
44    */
45   public function isFieldCaseSensitive($field_name);
46
47 }