mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-07-23 19:34:15 +00:00
Added Permission/Permissible calculation timings
This commit is contained in:
parent
7923c40b33
commit
6c7e16d9d4
@ -48,6 +48,10 @@ abstract class Timings{
|
|||||||
public static $serverCommandTimer;
|
public static $serverCommandTimer;
|
||||||
/** @var TimingsHandler */
|
/** @var TimingsHandler */
|
||||||
public static $worldSaveTimer;
|
public static $worldSaveTimer;
|
||||||
|
/** @var TimingsHandler */
|
||||||
|
public static $permissibleCalculationTimer;
|
||||||
|
/** @var TimingsHandler */
|
||||||
|
public static $permissionDefaultTimer;
|
||||||
|
|
||||||
/** @var TimingsHandler */
|
/** @var TimingsHandler */
|
||||||
public static $entityMoveTimer;
|
public static $entityMoveTimer;
|
||||||
@ -98,6 +102,8 @@ abstract class Timings{
|
|||||||
self::$timeUpdateTimer = new TimingsHandler("Time Update");
|
self::$timeUpdateTimer = new TimingsHandler("Time Update");
|
||||||
self::$serverCommandTimer = new TimingsHandler("Server Command");
|
self::$serverCommandTimer = new TimingsHandler("Server Command");
|
||||||
self::$worldSaveTimer = new TimingsHandler("World Save");
|
self::$worldSaveTimer = new TimingsHandler("World Save");
|
||||||
|
self::$permissibleCalculationTimer = new TimingsHandler("Permissible Calculation");
|
||||||
|
self::$permissionDefaultTimer = new TimingsHandler("Default Permission Calculation");
|
||||||
|
|
||||||
self::$entityMoveTimer = new TimingsHandler("** entityMove");
|
self::$entityMoveTimer = new TimingsHandler("** entityMove");
|
||||||
self::$tickEntityTimer = new TimingsHandler("** tickEntity");
|
self::$tickEntityTimer = new TimingsHandler("** tickEntity");
|
||||||
|
@ -21,6 +21,7 @@
|
|||||||
|
|
||||||
namespace pocketmine\permission;
|
namespace pocketmine\permission;
|
||||||
|
|
||||||
|
use pocketmine\event\Timings;
|
||||||
use pocketmine\plugin\Plugin;
|
use pocketmine\plugin\Plugin;
|
||||||
use pocketmine\Server;
|
use pocketmine\Server;
|
||||||
|
|
||||||
@ -162,6 +163,8 @@ class PermissibleBase implements Permissible{
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function recalculatePermissions(){
|
public function recalculatePermissions(){
|
||||||
|
Timings::$permissibleCalculationTimer->startTiming();
|
||||||
|
|
||||||
$this->clearPermissions();
|
$this->clearPermissions();
|
||||||
$defaults = Server::getInstance()->getPluginManager()->getDefaultPermissions($this->isOp());
|
$defaults = Server::getInstance()->getPluginManager()->getDefaultPermissions($this->isOp());
|
||||||
Server::getInstance()->getPluginManager()->subscribeToDefaultPerms($this->isOp(), $this->parent);
|
Server::getInstance()->getPluginManager()->subscribeToDefaultPerms($this->isOp(), $this->parent);
|
||||||
@ -176,6 +179,8 @@ class PermissibleBase implements Permissible{
|
|||||||
foreach($this->attachments as $attachment){
|
foreach($this->attachments as $attachment){
|
||||||
$this->calculateChildPermissions($attachment->getPermissions(), false, $attachment);
|
$this->calculateChildPermissions($attachment->getPermissions(), false, $attachment);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Timings::$permissibleCalculationTimer->stopTiming();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function clearPermissions(){
|
public function clearPermissions(){
|
||||||
|
@ -28,6 +28,7 @@ use pocketmine\event\Event;
|
|||||||
use pocketmine\event\EventPriority;
|
use pocketmine\event\EventPriority;
|
||||||
use pocketmine\event\HandlerList;
|
use pocketmine\event\HandlerList;
|
||||||
use pocketmine\event\Listener;
|
use pocketmine\event\Listener;
|
||||||
|
use pocketmine\event\Timings;
|
||||||
use pocketmine\event\TimingsHandler;
|
use pocketmine\event\TimingsHandler;
|
||||||
use pocketmine\permission\Permissible;
|
use pocketmine\permission\Permissible;
|
||||||
use pocketmine\permission\Permission;
|
use pocketmine\permission\Permission;
|
||||||
@ -396,6 +397,7 @@ class PluginManager{
|
|||||||
* @param Permission $permission
|
* @param Permission $permission
|
||||||
*/
|
*/
|
||||||
private function calculatePermissionDefault(Permission $permission){
|
private function calculatePermissionDefault(Permission $permission){
|
||||||
|
Timings::$permissionDefaultTimer->startTiming();
|
||||||
if($permission->getDefault() === Permission::DEFAULT_OP or $permission->getDefault() === Permission::DEFAULT_TRUE){
|
if($permission->getDefault() === Permission::DEFAULT_OP or $permission->getDefault() === Permission::DEFAULT_TRUE){
|
||||||
$this->defaultPermsOp[$permission->getName()] = $permission;
|
$this->defaultPermsOp[$permission->getName()] = $permission;
|
||||||
$this->dirtyPermissibles(true);
|
$this->dirtyPermissibles(true);
|
||||||
@ -405,6 +407,7 @@ class PluginManager{
|
|||||||
$this->defaultPerms[$permission->getName()] = $permission;
|
$this->defaultPerms[$permission->getName()] = $permission;
|
||||||
$this->dirtyPermissibles(false);
|
$this->dirtyPermissibles(false);
|
||||||
}
|
}
|
||||||
|
Timings::$permissionDefaultTimer->startTiming();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
x
Reference in New Issue
Block a user