Completed
Push — master ( d75ab4...55d06b )
by adam
04:14
created

MediawikiFactory::newNamespaceGetter()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
c 0
b 0
f 0
dl 0
loc 3
ccs 0
cts 0
cp 0
rs 10
cc 1
eloc 2
nc 1
nop 0
crap 2
1
<?php
2
3
namespace Mediawiki\Api;
4
5
use Mediawiki\Api\Service\CategoryTraverser;
6
use Mediawiki\Api\Service\FileUploader;
7
use Mediawiki\Api\Service\ImageRotator;
8
use Mediawiki\Api\Service\LogListGetter;
9
use Mediawiki\Api\Service\NamespaceGetter;
10
use Mediawiki\Api\Service\PageDeleter;
11
use Mediawiki\Api\Service\PageListGetter;
12
use Mediawiki\Api\Service\PageMover;
13
use Mediawiki\Api\Service\PageProtector;
14
use Mediawiki\Api\Service\PagePurger;
15
use Mediawiki\Api\Service\PageGetter;
16
use Mediawiki\Api\Service\PageRestorer;
17
use Mediawiki\Api\Service\PageWatcher;
18
use Mediawiki\Api\Service\Parser;
19
use Mediawiki\Api\Service\RevisionDeleter;
20
use Mediawiki\Api\Service\RevisionPatroller;
21
use Mediawiki\Api\Service\RevisionRestorer;
22
use Mediawiki\Api\Service\RevisionRollbacker;
23
use Mediawiki\Api\Service\RevisionSaver;
24
use Mediawiki\Api\Service\RevisionUndoer;
25
use Mediawiki\Api\Service\UserBlocker;
26
use Mediawiki\Api\Service\UserCreator;
27
use Mediawiki\Api\Service\UserGetter;
28
use Mediawiki\Api\Service\UserRightsChanger;
29
30
/**
31
 * @access public
32
 *
33
 * @author Addshore
34
 */
35
class MediawikiFactory {
36
37
	/**
38
	 * @var MediawikiApi
39
	 */
40
	private $api;
41
42
	/**
43
	 * @param MediawikiApi $api
44 21
	 */
45 21
	public function __construct( MediawikiApi $api ) {
46 21
		$this->api = $api;
47
	}
48
49
	/**
50
	 * Get a new CategoryTraverser object for this API.
51
	 * @return \Mediawiki\Api\Service\CategoryTraverser
52
	 */
53
	public function newCategoryTraverser() {
54
		return new CategoryTraverser( $this->api );
55
	}
56
57
	/**
58
	 * @since 0.3
59
	 * @return RevisionSaver
60 1
	 */
61 1
	public function newRevisionSaver() {
62
		return new RevisionSaver( $this->api );
63
	}
64
65
	/**
66
	 * @since 0.5
67
	 * @return RevisionUndoer
68 1
	 */
69 1
	public function newRevisionUndoer() {
70
		return new RevisionUndoer( $this->api );
71
	}
72
73
	/**
74
	 * @since 0.3
75
	 * @return PageGetter
76 1
	 */
77 1
	public function newPageGetter() {
78
		return new PageGetter( $this->api );
79
	}
80
81
	/**
82
	 * @since 0.3
83
	 * @return UserGetter
84 1
	 */
85 1
	public function newUserGetter() {
86
		return new UserGetter( $this->api );
87
	}
88
89
	/**
90
	 * @since 0.3
91
	 * @return PageDeleter
92 1
	 */
93 1
	public function newPageDeleter() {
94
		return new PageDeleter( $this->api );
95
	}
96
97
	/**
98
	 * @since 0.3
99
	 * @return PageMover
100 1
	 */
101 1
	public function newPageMover() {
102
		return new PageMover( $this->api );
103
	}
104
105
	/**
106
	 * @since 0.3
107
	 * @return PageListGetter
108 1
	 */
109 1
	public function newPageListGetter() {
110
		return new PageListGetter( $this->api );
111
	}
112
113
	/**
114
	 * @since 0.3
115
	 * @return PageRestorer
116 1
	 */
117 1
	public function newPageRestorer() {
118
		return new PageRestorer( $this->api );
119
	}
120
121
	/**
122
	 * @since 0.3
123
	 * @return PagePurger
124 1
	 */
125 1
	public function newPagePurger() {
126
		return new PagePurger( $this->api );
127
	}
128
129
	/**
130
	 * @since 0.3
131
	 * @return RevisionRollbacker
132 1
	 */
133 1
	public function newRevisionRollbacker() {
134
		return new RevisionRollbacker( $this->api );
135
	}
136
137
	/**
138
	 * @since 0.3
139
	 * @return RevisionPatroller
140 1
	 */
141 1
	public function newRevisionPatroller() {
142
		return new RevisionPatroller( $this->api );
143
	}
144
145
	/**
146
	 * @since 0.3
147
	 * @return PageProtector
148 1
	 */
149 1
	public function newPageProtector() {
150
		return new PageProtector( $this->api );
151
	}
152
153
	/**
154
	 * @since 0.5
155
	 * @return PageWatcher
156 1
	 */
157 1
	public function newPageWatcher() {
158
		return new PageWatcher( $this->api );
159
	}
160
161
	/**
162
	 * @since 0.3
163
	 * @return RevisionDeleter
164 1
	 */
165 1
	public function newRevisionDeleter() {
166
		return new RevisionDeleter( $this->api );
167
	}
168
169
	/**
170
	 * @since 0.3
171
	 * @return RevisionRestorer
172 1
	 */
173 1
	public function newRevisionRestorer() {
174
		return new RevisionRestorer( $this->api );
175
	}
176
177
	/**
178
	 * @since 0.3
179
	 * @return UserBlocker
180 1
	 */
181 1
	public function newUserBlocker() {
182
		return new UserBlocker( $this->api );
183
	}
184
185
	/**
186
	 * @since 0.3
187
	 * @return UserRightsChanger
188 1
	 */
189 1
	public function newUserRightsChanger() {
190
		return new UserRightsChanger( $this->api );
191
	}
192
193
	/**
194
	 * @since 0.5
195
	 * @return UserCreator
196 1
	 */
197 1
	public function newUserCreator() {
198
		return new UserCreator( $this->api );
199
	}
200
201
	/**
202
	 * @since 0.4
203
	 * @return LogListGetter
204 1
	 */
205 1
	public function newLogListGetter() {
206
		return new LogListGetter( $this->api );
207
	}
208
209
	/**
210
	 * @since 0.5
211
	 * @return FileUploader
212 1
	 */
213 1
	public function newFileUploader() {
214
		return new FileUploader( $this->api );
215
	}
216
217
	/**
218
	 * @since 0.5
219
	 * @return ImageRotator
220 1
	 */
221 1
	public function newImageRotator() {
222
		return new ImageRotator( $this->api );
223
	}
224
225
	/**
226
	 * @since 0.6
227
	 * @return Parser
228
	 */
229
	public function newParser() {
230
		return new Parser( $this->api );
231
	}
232
233
	/**
234
	 * @since 0.7
235
	 * @return NamespaceGetter
236
	 */
237
	public function newNamespaceGetter() {
238
		return new NamespaceGetter( $this->api );
239
	}
240
}
241