Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 75
n/a
0 / 0
CRAP
n/a
0 / 0
1<?php
2
3use MediaWiki\Logger\LoggerFactory;
4use MediaWiki\MediaWikiServices;
5use MediaWiki\Wikispeech\Lexicon\ConfiguredLexiconStorage;
6use MediaWiki\Wikispeech\Lexicon\LexiconHandler;
7use MediaWiki\Wikispeech\Lexicon\LexiconSpeechoidStorage;
8use MediaWiki\Wikispeech\Lexicon\LexiconWanCacheStorage;
9use MediaWiki\Wikispeech\Lexicon\LexiconWikiStorage;
10use MediaWiki\Wikispeech\Segment\SegmentMessagesFactory;
11use MediaWiki\Wikispeech\Segment\SegmentPageFactory;
12use MediaWiki\Wikispeech\SpeechoidConnector;
13use MediaWiki\Wikispeech\Utterance\UtteranceGenerator;
14use MediaWiki\Wikispeech\Utterance\UtteranceStore;
15use MediaWiki\Wikispeech\VoiceHandler;
16use MediaWiki\Wikispeech\WikispeechServices;
17
18/** @phpcs-require-sorted-array */
19return [
20    'Wikispeech.ConfiguredLexiconStorage' => static function (
21        MediaWikiServices $services
22    ): ConfiguredLexiconStorage {
23        return new ConfiguredLexiconStorage(
24            $services->getConfigFactory()
25                ->makeConfig( 'wikispeech' )
26                ->get( 'WikispeechPronunciationLexiconConfiguration' ),
27            $services
28        );
29    },
30    'Wikispeech.LexiconHandler' => static function ( MediaWikiServices $services ): LexiconHandler {
31        return new LexiconHandler(
32            WikispeechServices::getLexiconSpeechoidStorage(),
33            WikispeechServices::getLexiconWanCacheStorage()
34        );
35    },
36    'Wikispeech.LexiconSpeechoidStorage' => static function ( MediaWikiServices $services ): LexiconSpeechoidStorage {
37        return new LexiconSpeechoidStorage(
38            WikispeechServices::getSpeechoidConnector(),
39            $services->getMainWANObjectCache()
40        );
41    },
42    'Wikispeech.LexiconWanCacheStorage' => static function ( MediaWikiServices $services ): LexiconWanCacheStorage {
43        return new LexiconWanCacheStorage(
44            $services->getMainWANObjectCache()
45        );
46    },
47    'Wikispeech.LexiconWikiStorage' => static function ( MediaWikiServices $services ): LexiconWikiStorage {
48        return new LexiconWikiStorage(
49            RequestContext::getMain()->getUser()
50        );
51    },
52    'Wikispeech.SegmentMessagesFactory' => static function ( MediaWikiServices $services ): SegmentMessagesFactory {
53        return new SegmentMessagesFactory(
54            $services->getMainWANObjectCache(),
55            $services->getMainConfig(),
56        );
57    },
58    'Wikispeech.SegmentPageFactory' => static function ( MediaWikiServices $services ): SegmentPageFactory {
59        return new SegmentPageFactory(
60            $services->getMainWANObjectCache(),
61            $services->getMainConfig(),
62            $services->getRevisionStore(),
63            $services->getHttpRequestFactory()
64        );
65    },
66    'Wikispeech.SpeechoidConnector' => static function ( MediaWikiServices $services ): SpeechoidConnector {
67        return new SpeechoidConnector(
68            $services->getMainConfig(),
69            $services->getHttpRequestFactory()
70        );
71    },
72    'Wikispeech.UtteranceGenerator' => static function ( MediaWikiServices $services ): UtteranceGenerator {
73        return new UtteranceGenerator(
74            $services->get( 'Wikispeech.SpeechoidConnector' ),
75            $services->get( 'Wikispeech.UtteranceStore' ),
76            $services->get( 'Wikispeech.SegmentPageFactory' ),
77            $services->getMainWANObjectCache(),
78            $services->get( 'Wikispeech.SegmentMessagesFactory' ),
79            $services->getMainConfig()
80        );
81    },
82    'Wikispeech.UtteranceStore' => static function ( MediaWikiServices $services ): UtteranceStore {
83        return new UtteranceStore();
84    },
85    'Wikispeech.VoiceHandler' => static function ( MediaWikiServices $services ): VoiceHandler {
86        return new VoiceHandler(
87        LoggerFactory::getInstance( 'Wikispeech' ),
88        $services->getMainConfig(),
89        $services->get( 'Wikispeech.SpeechoidConnector' ),
90        $services->getMainWANObjectCache()
91        );
92    }
93
94];