PluginProbe ʕ •ᴥ•ʔ
VikAppointments Services Booking Calendar / 1.2.21
VikAppointments Services Booking Calendar v1.2.21
1.2.21 1.2.20 trunk 1.2.17 1.2.18 1.2.19
vikappointments / site / helpers / libraries / action / observable.php
vikappointments / site / helpers / libraries / action Last commit date
container 3 days ago observable 3 days ago result 3 days ago container.php 3 days ago index.html 3 days ago observable.php 3 days ago observer.php 3 days ago result.php 3 days ago state.php 3 days ago
observable.php
48 lines
1 <?php
2 /**
3 * @package VikAppointments
4 * @subpackage core
5 * @author E4J s.r.l.
6 * @copyright Copyright (C) 2021 E4J s.r.l. All Rights Reserved.
7 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
8 * @link https://vikwp.com
9 */
10
11 // No direct access
12 defined('ABSPATH') or die('No script kiddies please!');
13
14 /**
15 * Observable action interface.
16 *
17 * @since 1.7.3
18 */
19 interface VAPActionObservable
20 {
21 /**
22 * Attaches the specified observer to this entity.
23 *
24 * @param VAPActionObserver $observer
25 *
26 * @return void
27 */
28 public function attach(VAPActionObserver $observer);
29
30 /**
31 * Detaches the specified observer from this entity.
32 *
33 * @param VAPActionObserver $observer
34 *
35 * @return boolean True in case of success.
36 */
37 public function detach(VAPActionObserver $observer);
38
39 /**
40 * Notifies the subscribers every time the internal state changes.
41 *
42 * @param VAPActionState $state
43 *
44 * @return VAPActionResult A list of results returned by the observers.
45 */
46 public function notify(VAPActionState $state);
47 }
48