public static function singleton()
 {
     if (!self::$singleton) {
         self::$singleton = new CRM_Civirules_Utils_HookInvoker();
     }
     return self::$singleton;
 }
 /**
  * @return \Psr\Log\LoggerInterface|NULL
  */
 public static function getLogger()
 {
     if (empty(self::$logger) && self::$loggerHookInvoked === false) {
         $hook = CRM_Civirules_Utils_HookInvoker::singleton();
         $hook->hook_civirules_getlogger(self::$logger);
         self::$loggerHookInvoked = true;
     }
     return self::$logger;
 }
 /**
  * Alter the trigger data with extra data
  *
  * @param \CRM_Civirules_TriggerData_TriggerData $triggerData
  */
 public function alterTriggerData(CRM_Civirules_TriggerData_TriggerData &$triggerData)
 {
     $hook_invoker = CRM_Civirules_Utils_HookInvoker::singleton();
     $hook_invoker->hook_civirules_alterTriggerData($triggerData);
 }