Updated Drupal to 8.6. This goes with the following updates because it's possible...
[yaffs-website] / web / core / modules / taxonomy / src / TermStorageInterface.php
1 <?php
2
3 namespace Drupal\taxonomy;
4
5 use Drupal\Core\Entity\EntityInterface;
6 use Drupal\Core\Entity\ContentEntityStorageInterface;
7
8 /**
9  * Defines an interface for taxonomy_term entity storage classes.
10  */
11 interface TermStorageInterface extends ContentEntityStorageInterface {
12
13   /**
14    * Removed reference to terms from term_hierarchy.
15    *
16    * @param array $tids
17    *   Array of terms that need to be removed from hierarchy.
18    *
19    * @todo Remove this method in Drupal 9.0.x. Now the parent references are
20    *   automatically cleared when deleting a taxonomy term.
21    *   https://www.drupal.org/node/2785693
22    */
23   public function deleteTermHierarchy($tids);
24
25   /**
26    * Updates terms hierarchy information with the hierarchy trail of it.
27    *
28    * @param \Drupal\Core\Entity\EntityInterface $term
29    *   Term entity that needs to be added to term hierarchy information.
30    *
31    * @todo remove this method Drupal 9.0.x. Now the parent references are
32    *   automatically updates when when a taxonomy term is added/updated.
33    *   https://www.drupal.org/node/2785693
34    */
35   public function updateTermHierarchy(EntityInterface $term);
36
37   /**
38    * Finds all parents of a given term ID.
39    *
40    * @param int $tid
41    *   Term ID to retrieve parents for.
42    *
43    * @return \Drupal\taxonomy\TermInterface[]
44    *   An array of term objects which are the parents of the term $tid.
45    */
46   public function loadParents($tid);
47
48   /**
49    * Finds all ancestors of a given term ID.
50    *
51    * @param int $tid
52    *   Term ID to retrieve ancestors for.
53    *
54    * @return \Drupal\taxonomy\TermInterface[]
55    *   An array of term objects which are the ancestors of the term $tid.
56    */
57   public function loadAllParents($tid);
58
59   /**
60    * Finds all children of a term ID.
61    *
62    * @param int $tid
63    *   Term ID to retrieve children for.
64    * @param string $vid
65    *   An optional vocabulary ID to restrict the child search.
66    *
67    * @return \Drupal\taxonomy\TermInterface[]
68    *   An array of term objects that are the children of the term $tid.
69    */
70   public function loadChildren($tid, $vid = NULL);
71
72   /**
73    * Finds all terms in a given vocabulary ID.
74    *
75    * @param string $vid
76    *   Vocabulary ID to retrieve terms for.
77    * @param int $parent
78    *   The term ID under which to generate the tree. If 0, generate the tree
79    *   for the entire vocabulary.
80    * @param int $max_depth
81    *   The number of levels of the tree to return. Leave NULL to return all
82    *   levels.
83    * @param bool $load_entities
84    *   If TRUE, a full entity load will occur on the term objects. Otherwise
85    *   they are partial objects queried directly from the {taxonomy_term_data}
86    *   table to save execution time and memory consumption when listing large
87    *   numbers of terms. Defaults to FALSE.
88    *
89    * @return object[]|\Drupal\taxonomy\TermInterface[]
90    *   An array of term objects that are the children of the vocabulary $vid.
91    */
92   public function loadTree($vid, $parent = 0, $max_depth = NULL, $load_entities = FALSE);
93
94   /**
95    * Count the number of nodes in a given vocabulary ID.
96    *
97    * @param string $vid
98    *   Vocabulary ID to retrieve terms for.
99    *
100    * @return int
101    *   A count of the nodes in a given vocabulary ID.
102    */
103   public function nodeCount($vid);
104
105   /**
106    * Reset the weights for a given vocabulary ID.
107    *
108    * @param string $vid
109    *   Vocabulary ID to retrieve terms for.
110    */
111   public function resetWeights($vid);
112
113   /**
114    * Returns all terms used to tag some given nodes.
115    *
116    * @param array $nids
117    *   Node IDs to retrieve terms for.
118    * @param array $vocabs
119    *   (optional) A vocabularies array to restrict the term search. Defaults to
120    *   empty array.
121    * @param string $langcode
122    *   (optional) A language code to restrict the term search. Defaults to NULL.
123    *
124    * @return array
125    *   An array of nids and the term entities they were tagged with.
126    */
127   public function getNodeTerms(array $nids, array $vocabs = [], $langcode = NULL);
128
129 }