Cake\ORM\Table::implementedEvents PHP Method

implementedEvents() public method

By implementing the conventional methods a table class is assumed to be interested in the related event. Override this method if you need to add non-conventional event listeners. Or if you want you table to listen to non-standard events. The conventional method map is: - Model.beforeMarshal => beforeMarshal - Model.buildValidator => buildValidator - Model.beforeFind => beforeFind - Model.beforeSave => beforeSave - Model.afterSave => afterSave - Model.afterSaveCommit => afterSaveCommit - Model.beforeDelete => beforeDelete - Model.afterDelete => afterDelete - Model.afterDeleteCommit => afterDeleteCommit - Model.beforeRules => beforeRules - Model.afterRules => afterRules
public implementedEvents ( ) : array
return array
    public function implementedEvents()
    {
        $eventMap = ['Model.beforeMarshal' => 'beforeMarshal', 'Model.buildValidator' => 'buildValidator', 'Model.beforeFind' => 'beforeFind', 'Model.beforeSave' => 'beforeSave', 'Model.afterSave' => 'afterSave', 'Model.afterSaveCommit' => 'afterSaveCommit', 'Model.beforeDelete' => 'beforeDelete', 'Model.afterDelete' => 'afterDelete', 'Model.afterDeleteCommit' => 'afterDeleteCommit', 'Model.beforeRules' => 'beforeRules', 'Model.afterRules' => 'afterRules'];
        $events = [];
        foreach ($eventMap as $event => $method) {
            if (!method_exists($this, $method)) {
                continue;
            }
            $events[$event] = $method;
        }
        return $events;
    }

Usage Example

Example #1
0
 /**
  * Get the Model callbacks this table is interested in.
  *
  * @return array
  */
 public function implementedEvents()
 {
     $events = parent::implementedEvents();
     $events['Blocks.settings.validate'] = 'settingsValidate';
     $events['Blocks.settings.defaultValues'] = 'settingsDefaultValues';
     return $events;
 }