public function getCallbacks() { if (!$this->callbacks) { parent::getCallbacks(); $options = ['scope' => ['kind', 'name'], 'terminator' => false, 'skipAfterCallbacksIfTerminated' => true]; $this->callbacks->defineCallbacks(['create' => $options, 'save' => $options, 'update' => $options, 'destroy' => $options, 'validation' => $options, 'delete' => $options, 'recover' => $options]); foreach ($this->getAllCallbacks() as $kind => $callbacks) { $this->callbacks->setCallbacks($kind, $callbacks); } } return $this->callbacks; }