%PDF- %GIF98; %PNG;
Server : ApacheSystem : Linux host.digitalbabaji.in 4.18.0-513.11.1.el8_9.x86_64 #1 SMP Wed Jan 17 02:00:40 EST 2024 x86_64 User : addictionfreeind ( 1003) PHP Version : 7.2.34 Disable Function : exec,passthru,shell_exec,system Directory : /home/addictionfreeind/public_html/vendor/cakephp/debug_kit/src/Model/Behavior/ |
Upload File : |
<?php
/**
* CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
* Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
*
* Licensed under The MIT License
* Redistributions of files must retain the above copyright notice.
*
* @copyright Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
* @link http://cakephp.org CakePHP(tm) Project
* @since DebugKit 1.3
* @license http://www.opensource.org/licenses/mit-license.php MIT License
*/
namespace DebugKit\Model\Behavior;
use Cake\Event\Event;
use Cake\ORM\Behavior;
use DebugKit\DebugTimer;
/**
* Class TimedBehavior
*/
class TimedBehavior extends Behavior
{
/**
* beforeFind, starts a timer for a find operation.
*
* @param \Cake\Event\Event $event The beforeFind event
* @param \Cake\ORM\Query $query Query
* @return \Cake\ORM\Query
*/
public function beforeFind(Event $event, $query)
{
$alias = $event->getSubject()->getAlias();
DebugTimer::start($alias . '_find', $alias . '->find()');
return $query->formatResults(function ($results) use ($alias) {
DebugTimer::stop($alias . '_find');
return $results;
});
}
/**
* beforeSave, starts a time before a save is initiated.
*
* @param \Cake\Event\Event $event The beforeSave event
* @return void
*/
public function beforeSave(Event $event)
{
$alias = $event->getSubject()->getAlias();
DebugTimer::start($alias . '_save', $alias . '->save()');
}
/**
* afterSave, stop the timer started from a save.
*
* @param \Cake\Event\Event $event The afterSave event
* @return void
*/
public function afterSave(Event $event)
{
$alias = $event->getSubject()->getAlias();
DebugTimer::stop($alias . '_save');
}
}