mediawiki-extensions-OATHAuth/ServiceWiring.php

42 lines
1.2 KiB
PHP
Raw Normal View History

<?php
use MediaWiki\Config\ServiceOptions;
use MediaWiki\Extension\OATHAuth\OATHAuthDatabase;
use MediaWiki\Extension\OATHAuth\OATHAuthModuleRegistry;
use MediaWiki\Extension\OATHAuth\OATHUserRepository;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\MediaWikiServices;
return [
'OATHAuthDatabase' => static function ( MediaWikiServices $services ) {
return new OATHAuthDatabase(
new ServiceOptions(
OATHAuthDatabase::CONSTRUCTOR_OPTIONS,
$services->getMainConfig(),
),
$services->getDBLoadBalancerFactory(),
);
},
'OATHAuthModuleRegistry' => static function ( MediaWikiServices $services ) {
return new OATHAuthModuleRegistry(
$services->getService( 'OATHAuthDatabase' ),
ExtensionRegistry::getInstance()->getAttribute( 'OATHAuthModules' ),
);
},
'OATHUserRepository' => static function ( MediaWikiServices $services ) {
return new OATHUserRepository(
new ServiceOptions(
OATHUserRepository::CONSTRUCTOR_OPTIONS,
$services->getMainConfig(),
),
$services->getService( 'OATHAuthDatabase' ),
new HashBagOStuff( [
'maxKey' => 5
] ),
$services->getService( 'OATHAuthModuleRegistry' ),
$services->getCentralIdLookupFactory(),
LoggerFactory::getInstance( 'authentication' )
);
}
];