Version 1
[yaffs-website] / web / modules / contrib / entity_browser / src / Events / RegisterJSCallbacks.php
1 <?php
2
3 namespace Drupal\entity_browser\Events;
4
5 /**
6  * Collects "selection completed" JS callbacks.
7  */
8 class RegisterJSCallbacks extends EventBase {
9
10   /**
11    * JS callbacks.
12    *
13    * @var array
14    */
15   protected $callbacks = [];
16
17   /**
18    * Adds callback.
19    *
20    * @param string $callback
21    *   Callback name.
22    */
23   public function registerCallback($callback) {
24     $this->callbacks[] = $callback;
25   }
26
27   /**
28    * Remove callback.
29    *
30    * @param string $callback
31    *   Callback name.
32    */
33   public function removeCallback($callback) {
34     $this->callbacks = array_diff($this->callbacks, [$callback]);
35   }
36
37   /**
38    * Sets callbacks.
39    *
40    * @param array $callbacks
41    *   List of callbacks.
42    */
43   public function setCallbacks($callbacks) {
44     $this->callbacks = $callbacks;
45   }
46
47   /**
48    * Gets callbacks.
49    *
50    * @return array
51    *   List of callbacks.
52    */
53   public function getCallbacks() {
54     return $this->callbacks;
55   }
56
57 }