Refactoring the system of events

This commit is contained in:
Valentin Popov 2017-12-21 11:48:05 +04:00
parent a6c6081139
commit 49516bea82
2 changed files with 79 additions and 48 deletions

View File

@ -0,0 +1,65 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Registration of the system of events.
*
* @package local_webhooks
* @copyright 2017 "Valentin Popov" <info@valentineus.link>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
namespace local_webhooks\event;
defined("MOODLE_INTERNAL") || die();
/**
* Defines how to work with events.
*
* @copyright 2017 "Valentin Popov" <info@valentineus.link>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class service_deletedall extends \core\event\base {
/**
* Init method.
*/
protected function init() {
$this->data["crud"] = "d";
$this->data["edulevel"] = self::LEVEL_OTHER;
$this->data["objecttable"] = "local_webhooks_service";
}
/**
* Return localised event name.
*/
public static function get_name() {
return new \lang_string("deleteall", "moodle");
}
/**
* Returns description of what happened.
*/
public function get_description() {
return new \lang_string("eventwebserviceservicedeleted", "webservice");
}
/**
* Get URL related to the action.
*/
public function get_url() {
return new \moodle_url("/local/webhooks/index.php");
}
}

View File

@ -36,14 +36,7 @@ class local_webhooks_events {
*/ */
public static function backup_performed() { public static function backup_performed() {
$context = context_system::instance(); $context = context_system::instance();
$event = local_webhooks\event\backup_performed::create(array("context" => $context, "objectid" => 0));
$event = local_webhooks\event\backup_performed::create(
array(
"context" => $context,
"objectid" => 0
)
);
$event->trigger(); $event->trigger();
} }
@ -52,14 +45,7 @@ class local_webhooks_events {
*/ */
public static function backup_restored() { public static function backup_restored() {
$context = context_system::instance(); $context = context_system::instance();
$event = local_webhooks\event\backup_restored::create(array("context" => $context, "objectid" => 0));
$event = local_webhooks\event\backup_restored::create(
array(
"context" => $context,
"objectid" => 0
)
);
$event->trigger(); $event->trigger();
} }
@ -71,20 +57,12 @@ class local_webhooks_events {
*/ */
public static function response_answer($objectid = 0, $response = array()) { public static function response_answer($objectid = 0, $response = array()) {
$context = context_system::instance(); $context = context_system::instance();
$status = "Error sending request"; $status = "Error sending request";
if (!empty($response["HTTP/1.1"])) { if (!empty($response["HTTP/1.1"])) {
$status = $response["HTTP/1.1"]; $status = $response["HTTP/1.1"];
} }
$event = local_webhooks\event\response_answer::create( $event = local_webhooks\event\response_answer::create(array("context" => $context, "objectid" => $objectid, "other" => array("status" => $status)));
array(
"context" => $context,
"objectid" => $objectid,
"other" => array("status" => $status)
)
);
$event->trigger(); $event->trigger();
} }
@ -95,14 +73,7 @@ class local_webhooks_events {
*/ */
public static function service_added($objectid = 0) { public static function service_added($objectid = 0) {
$context = context_system::instance(); $context = context_system::instance();
$event = local_webhooks\event\service_added::create(array("context" => $context, "objectid" => $objectid));
$event = local_webhooks\event\service_added::create(
array(
"context" => $context,
"objectid" => $objectid
)
);
$event->trigger(); $event->trigger();
} }
@ -113,14 +84,16 @@ class local_webhooks_events {
*/ */
public static function service_deleted($objectid = 0) { public static function service_deleted($objectid = 0) {
$context = context_system::instance(); $context = context_system::instance();
$event = local_webhooks\event\service_deleted::create(array("context" => $context, "objectid" => $objectid));
$event->trigger();
}
$event = local_webhooks\event\service_deleted::create( /**
array( * Call the event when all services are deleted.
"context" => $context, */
"objectid" => $objectid public static function service_deletedall() {
) $context = context_system::instance();
); $event = local_webhooks\event\service_deletedall::create(array("context" => $context, "objectid" => 0));
$event->trigger(); $event->trigger();
} }
@ -131,14 +104,7 @@ class local_webhooks_events {
*/ */
public static function service_updated($objectid = 0) { public static function service_updated($objectid = 0) {
$context = context_system::instance(); $context = context_system::instance();
$event = local_webhooks\event\service_updated::create(array("context" => $context, "objectid" => $objectid));
$event = local_webhooks\event\service_updated::create(
array(
"context" => $context,
"objectid" => $objectid
)
);
$event->trigger(); $event->trigger();
} }
} }