/** * @param array $params Keys include: * - priority: (required) Priority of the returned sessions * - callUserSetCookiesHook: Whether to call the deprecated hook * - sessionName: Session cookie name. Doesn't honor 'prefix'. Defaults to * $wgSessionName, or $wgCookiePrefix . '_session' if that is unset. * - cookieOptions: Options to pass to WebRequest::setCookie(): * - prefix: Cookie prefix, defaults to $wgCookiePrefix * - path: Cookie path, defaults to $wgCookiePath * - domain: Cookie domain, defaults to $wgCookieDomain * - secure: Cookie secure flag, defaults to $wgCookieSecure * - httpOnly: Cookie httpOnly flag, defaults to $wgCookieHttpOnly */ public function __construct($params = array()) { parent::__construct(); $params += array('cookieOptions' => array()); // @codeCoverageIgnoreEnd if (!isset($params['priority'])) { throw new \InvalidArgumentException(__METHOD__ . ': priority must be specified'); } if ($params['priority'] < SessionInfo::MIN_PRIORITY || $params['priority'] > SessionInfo::MAX_PRIORITY) { throw new \InvalidArgumentException(__METHOD__ . ': Invalid priority'); } if (!is_array($params['cookieOptions'])) { throw new \InvalidArgumentException(__METHOD__ . ': cookieOptions must be an array'); } $this->priority = $params['priority']; $this->cookieOptions = $params['cookieOptions']; $this->params = $params; unset($this->params['priority']); unset($this->params['cookieOptions']); }
/** * @param array $params Keys include: * - sessionCookieName: Session cookie name, if multiple sessions per * client are to be supported. * - sessionCookieOptions: Options to pass to WebResponse::setCookie(). */ public function __construct($params = array()) { parent::__construct(); if (isset($params['sessionCookieName'])) { if (!is_string($params['sessionCookieName'])) { throw new \InvalidArgumentException('sessionCookieName must be a string'); } $this->sessionCookieName = $params['sessionCookieName']; } if (isset($params['sessionCookieOptions'])) { if (!is_array($params['sessionCookieOptions'])) { throw new \InvalidArgumentException('sessionCookieOptions must be an array'); } $this->sessionCookieOptions = $params['sessionCookieOptions']; } }