protected function getUniqueSessionId() { $testSession = new Session(); do { $id = \OC::$server->getSecureRandom()->getMediumStrengthGenerator()->generate(30, ISecureRandom::CHAR_LOWER . ISecureRandom::CHAR_DIGITS); } while ($testSession->load($id)->hasData()); return $id; }
protected function loadSession($esId) { if (!$esId) { throw new \Exception('Session id can not be empty'); } $session = new Db\Session(); $session->load($esId); if (!$session->getEsId()) { throw new \Exception('Session does not exist'); } return $session; }
/** * @NoAdminRequired * @PublicPage * Process partial/complete file download */ public function serve($esId) { $session = new Db\Session(); $session->load($esId); $filename = $session->getGenesisUrl() ? $session->getGenesisUrl() : ''; return new DownloadResponse($this->request, $session->getOwner(), $filename); }