2016-02-01 20:44:03 +00:00
|
|
|
<?php
|
2019-05-28 14:04:23 +00:00
|
|
|
|
2016-02-01 20:44:03 +00:00
|
|
|
use MediaWiki\Session\SessionBackend;
|
2020-01-10 00:00:51 +00:00
|
|
|
use MediaWiki\Session\SessionInfo;
|
|
|
|
|
use MediaWiki\Session\SessionProvider;
|
2016-02-01 20:44:03 +00:00
|
|
|
use MediaWiki\Session\UserInfo;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Dummy session provider
|
|
|
|
|
*
|
|
|
|
|
* An implementation of a session provider that doesn't actually do anything.
|
|
|
|
|
*/
|
|
|
|
|
class DummySessionProvider extends SessionProvider {
|
|
|
|
|
|
2020-05-09 23:32:25 +00:00
|
|
|
public const ID = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
|
2016-02-01 20:44:03 +00:00
|
|
|
|
|
|
|
|
public function provideSessionInfo( WebRequest $request ) {
|
2016-02-17 09:09:32 +00:00
|
|
|
return new SessionInfo( SessionInfo::MIN_PRIORITY, [
|
2016-02-01 20:44:03 +00:00
|
|
|
'provider' => $this,
|
|
|
|
|
'id' => self::ID,
|
|
|
|
|
'persisted' => true,
|
|
|
|
|
'userInfo' => UserInfo::newAnonymous(),
|
2016-02-17 09:09:32 +00:00
|
|
|
] );
|
2016-02-01 20:44:03 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function newSessionInfo( $id = null ) {
|
2016-02-17 09:09:32 +00:00
|
|
|
return new SessionInfo( SessionInfo::MIN_PRIORITY, [
|
2016-02-01 20:44:03 +00:00
|
|
|
'id' => $id,
|
|
|
|
|
'idIsSafe' => true,
|
|
|
|
|
'provider' => $this,
|
|
|
|
|
'persisted' => false,
|
|
|
|
|
'userInfo' => UserInfo::newAnonymous(),
|
2016-02-17 09:09:32 +00:00
|
|
|
] );
|
2016-02-01 20:44:03 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function persistsSessionId() {
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function canChangeUser() {
|
|
|
|
|
return $this->persistsSessionId();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function persistSession( SessionBackend $session, WebRequest $request ) {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function unpersistSession( WebRequest $request ) {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function immutableSessionCouldExistForUser( $user ) {
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function preventImmutableSessionsForUser( $user ) {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function suggestLoginUsername( WebRequest $request ) {
|
|
|
|
|
return $request->getCookie( 'UserName' );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|