namespace = $namespace; return true; } /** * Get Namespace * * Get namespace of current set scope * * @throws Exception * @return string */ public function getNamespace() { if(empty($this->namespace)) { throw new Exception('Missing namespace'); } return $this->namespace; } /** * Log * * Add specific event log * * @param int $userId * @param int $userType * @param string $event * @param string $resource * @param string $userAgent * @param string $ip * @param string $location * @param array $data * @return */ abstract public function log($userId, $userType, $event, $resource, $userAgent, $ip, $location, $data); /** * Get All Logs By User * * Get all user logs * * @param int $userId * @param int $userType * @return mixed */ abstract public function getLogsByUser($userId, $userType); /** * Get All Logs By User and Actions * * Get all user logs by given action names * * @param int $userId * @param int $userType * @param array $actions * @return mixed */ abstract public function getLogsByUserAndActions($userId, $userType, array $actions); }