Completed
Push — main ( 2daa48...b5d932 )
by
unknown
08:38
created

MediawikiFactory   A

Complexity

Total Complexity 25

Size/Duplication

Total Lines 206
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 24

Importance

Changes 0
Metric Value
wmc 25
lcom 1
cbo 24
dl 0
loc 206
rs 10
c 0
b 0
f 0
1
<?php
2
3
namespace Addwiki\Mediawiki\Api;
4
5
use Addwiki\Mediawiki\Api\Client\MediawikiApi;
6
use Addwiki\Mediawiki\Api\Service\CategoryTraverser;
7
use Addwiki\Mediawiki\Api\Service\FileUploader;
8
use Addwiki\Mediawiki\Api\Service\ImageRotator;
9
use Addwiki\Mediawiki\Api\Service\LogListGetter;
10
use Addwiki\Mediawiki\Api\Service\NamespaceGetter;
11
use Addwiki\Mediawiki\Api\Service\PageDeleter;
12
use Addwiki\Mediawiki\Api\Service\PageGetter;
13
use Addwiki\Mediawiki\Api\Service\PageListGetter;
14
use Addwiki\Mediawiki\Api\Service\PageMover;
15
use Addwiki\Mediawiki\Api\Service\PageProtector;
16
use Addwiki\Mediawiki\Api\Service\PagePurger;
17
use Addwiki\Mediawiki\Api\Service\PageRestorer;
18
use Addwiki\Mediawiki\Api\Service\PageWatcher;
19
use Addwiki\Mediawiki\Api\Service\Parser;
20
use Addwiki\Mediawiki\Api\Service\RevisionDeleter;
21
use Addwiki\Mediawiki\Api\Service\RevisionPatroller;
22
use Addwiki\Mediawiki\Api\Service\RevisionRestorer;
23
use Addwiki\Mediawiki\Api\Service\RevisionRollbacker;
24
use Addwiki\Mediawiki\Api\Service\RevisionSaver;
25
use Addwiki\Mediawiki\Api\Service\RevisionUndoer;
26
use Addwiki\Mediawiki\Api\Service\UserBlocker;
27
use Addwiki\Mediawiki\Api\Service\UserCreator;
28
use Addwiki\Mediawiki\Api\Service\UserGetter;
29
use Addwiki\Mediawiki\Api\Service\UserRightsChanger;
30
31
/**
32
 * @access public
33
 *
34
 * @author Addshore
35
 */
36
class MediawikiFactory {
37
38
	private MediawikiApi $api;
0 ignored issues
show
Bug introduced by
This code did not parse for me. Apparently, there is an error somewhere around this line:

Syntax error, unexpected T_STRING, expecting T_FUNCTION or T_CONST
Loading history...
39
40
	/**
41
	 * @param MediawikiApi $api
42
	 */
43
	public function __construct( MediawikiApi $api ) {
44
		$this->api = $api;
45
	}
46
47
	/**
48
	 * Get a new CategoryTraverser object for this API.
49
	 */
50
	public function newCategoryTraverser(): CategoryTraverser {
51
		return new CategoryTraverser( $this->api );
52
	}
53
54
	/**
55
	 * @since 0.3
56
	 */
57
	public function newRevisionSaver(): RevisionSaver {
58
		return new RevisionSaver( $this->api );
59
	}
60
61
	/**
62
	 * @since 0.5
63
	 */
64
	public function newRevisionUndoer(): RevisionUndoer {
65
		return new RevisionUndoer( $this->api );
66
	}
67
68
	/**
69
	 * @since 0.3
70
	 */
71
	public function newPageGetter(): PageGetter {
72
		return new PageGetter( $this->api );
73
	}
74
75
	/**
76
	 * @since 0.3
77
	 */
78
	public function newUserGetter(): UserGetter {
79
		return new UserGetter( $this->api );
80
	}
81
82
	/**
83
	 * @since 0.3
84
	 */
85
	public function newPageDeleter(): PageDeleter {
86
		return new PageDeleter( $this->api );
87
	}
88
89
	/**
90
	 * @since 0.3
91
	 */
92
	public function newPageMover(): PageMover {
93
		return new PageMover( $this->api );
94
	}
95
96
	/**
97
	 * @since 0.3
98
	 */
99
	public function newPageListGetter(): PageListGetter {
100
		return new PageListGetter( $this->api );
101
	}
102
103
	/**
104
	 * @since 0.3
105
	 */
106
	public function newPageRestorer(): PageRestorer {
107
		return new PageRestorer( $this->api );
108
	}
109
110
	/**
111
	 * @since 0.3
112
	 */
113
	public function newPagePurger(): PagePurger {
114
		return new PagePurger( $this->api );
115
	}
116
117
	/**
118
	 * @since 0.3
119
	 */
120
	public function newRevisionRollbacker(): RevisionRollbacker {
121
		return new RevisionRollbacker( $this->api );
122
	}
123
124
	/**
125
	 * @since 0.3
126
	 */
127
	public function newRevisionPatroller(): RevisionPatroller {
128
		return new RevisionPatroller( $this->api );
129
	}
130
131
	/**
132
	 * @since 0.3
133
	 */
134
	public function newPageProtector(): PageProtector {
135
		return new PageProtector( $this->api );
136
	}
137
138
	/**
139
	 * @since 0.5
140
	 */
141
	public function newPageWatcher(): PageWatcher {
142
		return new PageWatcher( $this->api );
143
	}
144
145
	/**
146
	 * @since 0.3
147
	 */
148
	public function newRevisionDeleter(): RevisionDeleter {
149
		return new RevisionDeleter( $this->api );
150
	}
151
152
	/**
153
	 * @since 0.3
154
	 */
155
	public function newRevisionRestorer(): RevisionRestorer {
156
		return new RevisionRestorer( $this->api );
157
	}
158
159
	/**
160
	 * @since 0.3
161
	 */
162
	public function newUserBlocker(): UserBlocker {
163
		return new UserBlocker( $this->api );
164
	}
165
166
	/**
167
	 * @since 0.3
168
	 */
169
	public function newUserRightsChanger(): UserRightsChanger {
170
		return new UserRightsChanger( $this->api );
171
	}
172
173
	/**
174
	 * @since 0.5
175
	 */
176
	public function newUserCreator(): UserCreator {
177
		return new UserCreator( $this->api );
178
	}
179
180
	/**
181
	 * @since 0.4
182
	 */
183
	public function newLogListGetter(): LogListGetter {
184
		return new LogListGetter( $this->api );
185
	}
186
187
	/**
188
	 * @since 0.5
189
	 */
190
	public function newFileUploader(): FileUploader {
191
		return new FileUploader( $this->api );
192
	}
193
194
	/**
195
	 * @since 0.5
196
	 */
197
	public function newImageRotator(): ImageRotator {
198
		return new ImageRotator( $this->api );
199
	}
200
201
	/**
202
	 * @since 0.6
203
	 */
204
	public function newParser(): Parser {
205
		return new Parser( $this->api );
206
	}
207
208
	/**
209
	 * @since 0.7
210
	 */
211
	public function newNamespaceGetter(): NamespaceGetter {
212
		return new NamespaceGetter( $this->api );
213
	}
214
}
215