/**
  * Extracts user data from the session and returns the user object.
  * 
  * @param Session $session
  * @throws GeneralException\MissingDependencyException
  * @return UserInterface
  */
 public function getUserFromSession(Session $session)
 {
     $serializer = $this->getUserSerializer();
     if (!$serializer) {
         throw new GeneralException\MissingDependencyException('user serializer');
     }
     return $serializer->unserialize($session->getUserData());
 }
 public function saveSession(Session $session)
 {
     $this->_sessions[$session->getId()] = $session;
 }
 /**
  * (non-PHPdoc)
  * @see \InoOicServer\Session\Hash\Generator\GeneratorInterface::generateAccessToken()
  */
 public function generateAccessToken(Session $session, Client $client)
 {
     $data = $session->getId() . $client->getId() . microtime(true) . 'access_token';
     return Hash::compute('sha1', $data);
 }
 protected function _createSession($data)
 {
     $session = new Session();
     $session->populate($data);
     return $session;
 }