* @author Bernhard Posselt * @author David Guillot * @copyright 2020 Sean Molenaar */ namespace OCA\News\Controller; use OCP\AppFramework\Controller as BaseController; use \OCP\IRequest; use OCP\IUser; use \OCP\IUserSession; /** * Class ApiController * * @package OCA\News\Controller */ class Controller extends BaseController { /** * @var IUserSession */ private $userSession; /** * ApiController constructor. * * Stores the user session to be able to leverage the user in further methods * * @param string $appName The name of the app * @param IRequest $request The request * @param IUserSession $userSession The user session */ public function __construct(string $appName, IRequest $request, IUserSession $userSession) { parent::__construct($appName, $request); $this->userSession = $userSession; } /** * @return IUser */ protected function getUser() { return $this->userSession->getUser(); } /** * @return string */ protected function getUserId() { return $this->getUser()->getUID(); } }