Completed
Push — master ( 37682c...11e3bd )
by
unknown
02:09
created
src/ConstraintCheck/Helper/NowValue.php 1 patch
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -28,7 +28,7 @@  discard block
 block discarded – undo
28 28
 	 * @return string
29 29
 	 */
30 30
 	public function getTime() {
31
-		return gmdate( '+Y-m-d\TH:i:s\Z' );
31
+		return gmdate('+Y-m-d\TH:i:s\Z');
32 32
 	}
33 33
 
34 34
 	public function getTimezone() {
@@ -40,11 +40,11 @@  discard block
 block discarded – undo
40 40
 	}
41 41
 
42 42
 	public function getArrayValue() {
43
-		throw new LogicException( 'NowValue should never be serialized' );
43
+		throw new LogicException('NowValue should never be serialized');
44 44
 	}
45 45
 
46
-	public function equals( $value ) {
47
-		return get_class( $value ) === self::class;
46
+	public function equals($value) {
47
+		return get_class($value) === self::class;
48 48
 	}
49 49
 
50 50
 }
Please login to merge, or discard this patch.
src/ConstraintCheck/Checker/RangeChecker.php 1 patch
Spacing   +32 added lines, -32 removed lines patch added patch discarded remove patch
@@ -91,9 +91,9 @@  discard block
 block discarded – undo
91 91
 	 * @throws ConstraintParameterException
92 92
 	 * @return CheckResult
93 93
 	 */
94
-	public function checkConstraint( Context $context, Constraint $constraint ) {
95
-		if ( $context->getSnakRank() === Statement::RANK_DEPRECATED ) {
96
-			return new CheckResult( $context, $constraint, [], CheckResult::STATUS_DEPRECATED );
94
+	public function checkConstraint(Context $context, Constraint $constraint) {
95
+		if ($context->getSnakRank() === Statement::RANK_DEPRECATED) {
96
+			return new CheckResult($context, $constraint, [], CheckResult::STATUS_DEPRECATED);
97 97
 		}
98 98
 
99 99
 		$parameters = [];
@@ -101,28 +101,28 @@  discard block
 block discarded – undo
101 101
 
102 102
 		$snak = $context->getSnak();
103 103
 
104
-		if ( !$snak instanceof PropertyValueSnak ) {
104
+		if (!$snak instanceof PropertyValueSnak) {
105 105
 			// nothing to check
106
-			return new CheckResult( $context, $constraint, $parameters, CheckResult::STATUS_COMPLIANCE );
106
+			return new CheckResult($context, $constraint, $parameters, CheckResult::STATUS_COMPLIANCE);
107 107
 		}
108 108
 
109 109
 		$dataValue = $snak->getDataValue();
110 110
 
111
-		list( $min, $max ) = $this->constraintParameterParser->parseRangeParameter(
111
+		list($min, $max) = $this->constraintParameterParser->parseRangeParameter(
112 112
 			$constraintParameters,
113 113
 			$constraint->getConstraintTypeItemId(),
114 114
 			$dataValue->getType()
115 115
 		);
116 116
 		$parameterKey = $dataValue->getType() === 'quantity' ? 'quantity' : 'date';
117
-		if ( $min !== null ) {
118
-			$parameters['minimum_' . $parameterKey] = [ $min ];
117
+		if ($min !== null) {
118
+			$parameters['minimum_'.$parameterKey] = [$min];
119 119
 		}
120
-		if ( $max !== null ) {
121
-			$parameters['maximum_' . $parameterKey] = [ $max ];
120
+		if ($max !== null) {
121
+			$parameters['maximum_'.$parameterKey] = [$max];
122 122
 		}
123 123
 
124
-		if ( $this->rangeCheckerHelper->getComparison( $min, $dataValue ) > 0 ||
125
-			 $this->rangeCheckerHelper->getComparison( $dataValue, $max ) > 0
124
+		if ($this->rangeCheckerHelper->getComparison($min, $dataValue) > 0 ||
125
+			 $this->rangeCheckerHelper->getComparison($dataValue, $max) > 0
126 126
 		) {
127 127
 			$message = $this->getViolationMessage(
128 128
 				$context->getSnak()->getPropertyId(),
@@ -138,16 +138,16 @@  discard block
 block discarded – undo
138 138
 
139 139
 		if (
140 140
 			$dataValue instanceof  TimeValue &&
141
-			( $min instanceof NowValue || $max instanceof NowValue ) &&
142
-			$this->rangeCheckerHelper->isFutureTime( $dataValue )
141
+			($min instanceof NowValue || $max instanceof NowValue) &&
142
+			$this->rangeCheckerHelper->isFutureTime($dataValue)
143 143
 		) {
144
-			$dependencyMetadata = DependencyMetadata::ofFutureTime( $dataValue );
144
+			$dependencyMetadata = DependencyMetadata::ofFutureTime($dataValue);
145 145
 		} else {
146 146
 			$dependencyMetadata = DependencyMetadata::blank();
147 147
 		}
148 148
 
149
-		return ( new CheckResult( $context, $constraint, $parameters, $status, $message ) )
150
-			->withMetadata( Metadata::ofDependencyMetadata( $dependencyMetadata ) );
149
+		return (new CheckResult($context, $constraint, $parameters, $status, $message))
150
+			->withMetadata(Metadata::ofDependencyMetadata($dependencyMetadata));
151 151
 	}
152 152
 
153 153
 	/**
@@ -158,7 +158,7 @@  discard block
 block discarded – undo
158 158
 	 *
159 159
 	 * @return ViolationMessage
160 160
 	 */
161
-	private function getViolationMessage( PropertyId $predicate, DataValue $value, $min, $max ) {
161
+	private function getViolationMessage(PropertyId $predicate, DataValue $value, $min, $max) {
162 162
 		// possible message keys:
163 163
 		// wbqc-violation-message-range-quantity-closed
164 164
 		// wbqc-violation-message-range-quantity-leftopen
@@ -171,39 +171,39 @@  discard block
 block discarded – undo
171 171
 		// wbqc-violation-message-range-time-rightopen
172 172
 		// wbqc-violation-message-range-time-rightopen-leftnow
173 173
 		$messageKey = 'wbqc-violation-message-range';
174
-		$messageKey .= '-' . $value->getType();
174
+		$messageKey .= '-'.$value->getType();
175 175
 		// at least one of $min, $max is set, otherwise there could be no violation
176
-		$messageKey .= '-' . ( $min !== null ? ( $max !== null ? 'closed' : 'rightopen' ) : 'leftopen' );
177
-		if ( $min instanceof NowValue ) {
176
+		$messageKey .= '-'.($min !== null ? ($max !== null ? 'closed' : 'rightopen') : 'leftopen');
177
+		if ($min instanceof NowValue) {
178 178
 			$messageKey .= '-leftnow';
179
-		} elseif ( $max instanceof  NowValue ) {
179
+		} elseif ($max instanceof  NowValue) {
180 180
 			$messageKey .= '-rightnow';
181 181
 		}
182
-		$message = ( new ViolationMessage( $messageKey ) )
183
-			->withEntityId( $predicate, Role::PREDICATE )
184
-			->withDataValue( $value, Role::OBJECT );
185
-		if ( $min !== null && !( $min instanceof NowValue ) ) {
186
-			$message = $message->withDataValue( $min, Role::OBJECT );
182
+		$message = (new ViolationMessage($messageKey))
183
+			->withEntityId($predicate, Role::PREDICATE)
184
+			->withDataValue($value, Role::OBJECT);
185
+		if ($min !== null && !($min instanceof NowValue)) {
186
+			$message = $message->withDataValue($min, Role::OBJECT);
187 187
 		}
188
-		if ( $max !== null && !( $max instanceof  NowValue ) ) {
189
-			$message = $message->withDataValue( $max, Role::OBJECT );
188
+		if ($max !== null && !($max instanceof  NowValue)) {
189
+			$message = $message->withDataValue($max, Role::OBJECT);
190 190
 		}
191 191
 		return $message;
192 192
 	}
193 193
 
194
-	public function checkConstraintParameters( Constraint $constraint ) {
194
+	public function checkConstraintParameters(Constraint $constraint) {
195 195
 		$constraintParameters = $constraint->getConstraintParameters();
196 196
 		$exceptions = [];
197 197
 		try {
198 198
 			// we don’t have a data value here, so get the type from the property instead
199 199
 			// (the distinction between data type and data value type is irrelevant for 'quantity' and 'time')
200
-			$type = $this->propertyDataTypeLookup->getDataTypeIdForProperty( $constraint->getPropertyId() );
200
+			$type = $this->propertyDataTypeLookup->getDataTypeIdForProperty($constraint->getPropertyId());
201 201
 			$this->constraintParameterParser->parseRangeParameter(
202 202
 				$constraintParameters,
203 203
 				$constraint->getConstraintTypeItemId(),
204 204
 				$type
205 205
 			);
206
-		} catch ( ConstraintParameterException $e ) {
206
+		} catch (ConstraintParameterException $e) {
207 207
 			$exceptions[] = $e;
208 208
 		}
209 209
 		return $exceptions;
Please login to merge, or discard this patch.
src/ConstraintSerializer.php 1 patch
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -16,7 +16,7 @@  discard block
 block discarded – undo
16 16
 	/**
17 17
 	 * @param bool $serializeConstraintParameters Whether to serialize constraint parameters or not.
18 18
 	 */
19
-	public function __construct( $serializeConstraintParameters = true ) {
19
+	public function __construct($serializeConstraintParameters = true) {
20 20
 		$this->serializeConstraintParameters = $serializeConstraintParameters;
21 21
 	}
22 22
 
@@ -24,13 +24,13 @@  discard block
 block discarded – undo
24 24
 	 * @param Constraint $constraint
25 25
 	 * @return array
26 26
 	 */
27
-	public function serialize( Constraint $constraint ) {
27
+	public function serialize(Constraint $constraint) {
28 28
 		$serialization = [
29 29
 			'id' => $constraint->getConstraintId(),
30 30
 			'pid' => $constraint->getPropertyId()->getSerialization(),
31 31
 			'qid' => $constraint->getConstraintTypeItemId(),
32 32
 		];
33
-		if ( $this->serializeConstraintParameters ) {
33
+		if ($this->serializeConstraintParameters) {
34 34
 			$serialization['params'] = $constraint->getConstraintParameters();
35 35
 		}
36 36
 		return $serialization;
Please login to merge, or discard this patch.
src/ConstraintDeserializer.php 1 patch
Spacing   +4 added lines, -5 removed lines patch added patch discarded remove patch
@@ -10,14 +10,13 @@
 block discarded – undo
10 10
  */
11 11
 class ConstraintDeserializer {
12 12
 
13
-	public function deserialize( array $serialization ) {
13
+	public function deserialize(array $serialization) {
14 14
 		return new Constraint(
15 15
 			$serialization['id'],
16
-			new PropertyId( $serialization['pid'] ),
16
+			new PropertyId($serialization['pid']),
17 17
 			$serialization['qid'],
18
-			array_key_exists( 'params', $serialization ) ?
19
-				$serialization['params'] :
20
-				[]
18
+			array_key_exists('params', $serialization) ?
19
+				$serialization['params'] : []
21 20
 		);
22 21
 	}
23 22
 
Please login to merge, or discard this patch.
src/Api/CheckConstraintParameters.php 1 patch
Spacing   +53 added lines, -53 removed lines patch added patch discarded remove patch
@@ -74,20 +74,20 @@  discard block
 block discarded – undo
74 74
 	 *
75 75
 	 * @return self
76 76
 	 */
77
-	public static function newFromGlobalState( ApiMain $main, $name, $prefix = '' ) {
77
+	public static function newFromGlobalState(ApiMain $main, $name, $prefix = '') {
78 78
 		$constraintReportFactory = ConstraintReportFactory::getDefaultInstance();
79 79
 		$repo = WikibaseRepo::getDefaultInstance();
80
-		$helperFactory = $repo->getApiHelperFactory( RequestContext::getMain() );
80
+		$helperFactory = $repo->getApiHelperFactory(RequestContext::getMain());
81 81
 		$language = $repo->getUserLanguage();
82 82
 
83 83
 		$languageFallbackLabelDescriptionLookupFactory = $repo->getLanguageFallbackLabelDescriptionLookupFactory();
84
-		$labelDescriptionLookup = $languageFallbackLabelDescriptionLookupFactory->newLabelDescriptionLookup( $language );
84
+		$labelDescriptionLookup = $languageFallbackLabelDescriptionLookupFactory->newLabelDescriptionLookup($language);
85 85
 		$entityIdHtmlLinkFormatterFactory = $repo->getEntityIdHtmlLinkFormatterFactory();
86
-		$entityIdHtmlLinkFormatter = $entityIdHtmlLinkFormatterFactory->getEntityIdFormatter( $labelDescriptionLookup );
86
+		$entityIdHtmlLinkFormatter = $entityIdHtmlLinkFormatterFactory->getEntityIdFormatter($labelDescriptionLookup);
87 87
 		$formatterOptions = new FormatterOptions();
88
-		$formatterOptions->setOption( SnakFormatter::OPT_LANG, $language->getCode() );
88
+		$formatterOptions->setOption(SnakFormatter::OPT_LANG, $language->getCode());
89 89
 		$valueFormatterFactory = $repo->getValueFormatterFactory();
90
-		$dataValueFormatter = $valueFormatterFactory->getValueFormatter( SnakFormatter::FORMAT_HTML, $formatterOptions );
90
+		$dataValueFormatter = $valueFormatterFactory->getValueFormatter(SnakFormatter::FORMAT_HTML, $formatterOptions);
91 91
 		$config = MediaWikiServices::getInstance()->getMainConfig();
92 92
 		$violationMessageRenderer = new MultilingualTextViolationMessageRenderer(
93 93
 			$entityIdHtmlLinkFormatter,
@@ -126,9 +126,9 @@  discard block
 block discarded – undo
126 126
 		StatementGuidParser $statementGuidParser,
127 127
 		IBufferingStatsdDataFactory $dataFactory
128 128
 	) {
129
-		parent::__construct( $main, $name, $prefix );
129
+		parent::__construct($main, $name, $prefix);
130 130
 
131
-		$this->apiErrorReporter = $apiHelperFactory->getErrorReporter( $this );
131
+		$this->apiErrorReporter = $apiHelperFactory->getErrorReporter($this);
132 132
 		$this->delegatingConstraintChecker = $delegatingConstraintChecker;
133 133
 		$this->violationMessageRenderer = $violationMessageRenderer;
134 134
 		$this->statementGuidParser = $statementGuidParser;
@@ -143,39 +143,39 @@  discard block
 block discarded – undo
143 143
 		$params = $this->extractRequestParams();
144 144
 		$result = $this->getResult();
145 145
 
146
-		$propertyIds = $this->parsePropertyIds( $params[self::PARAM_PROPERTY_ID] );
147
-		$constraintIds = $this->parseConstraintIds( $params[self::PARAM_CONSTRAINT_ID] );
146
+		$propertyIds = $this->parsePropertyIds($params[self::PARAM_PROPERTY_ID]);
147
+		$constraintIds = $this->parseConstraintIds($params[self::PARAM_CONSTRAINT_ID]);
148 148
 
149
-		$this->checkPropertyIds( $propertyIds, $result );
150
-		$this->checkConstraintIds( $constraintIds, $result );
149
+		$this->checkPropertyIds($propertyIds, $result);
150
+		$this->checkConstraintIds($constraintIds, $result);
151 151
 
152
-		$result->addValue( null, 'success', 1 );
152
+		$result->addValue(null, 'success', 1);
153 153
 	}
154 154
 
155 155
 	/**
156 156
 	 * @param array|null $propertyIdSerializations
157 157
 	 * @return PropertyId[]
158 158
 	 */
159
-	private function parsePropertyIds( $propertyIdSerializations ) {
160
-		if ( $propertyIdSerializations === null ) {
159
+	private function parsePropertyIds($propertyIdSerializations) {
160
+		if ($propertyIdSerializations === null) {
161 161
 			return [];
162
-		} elseif ( empty( $propertyIdSerializations ) ) {
162
+		} elseif (empty($propertyIdSerializations)) {
163 163
 			$this->apiErrorReporter->dieError(
164
-				'If ' . self::PARAM_PROPERTY_ID . ' is specified, it must be nonempty.',
164
+				'If '.self::PARAM_PROPERTY_ID.' is specified, it must be nonempty.',
165 165
 				'no-data'
166 166
 			);
167 167
 		}
168 168
 
169 169
 		return array_map(
170
-			function( $propertyIdSerialization ) {
170
+			function($propertyIdSerialization) {
171 171
 				try {
172
-					return new PropertyId( $propertyIdSerialization );
173
-				} catch ( InvalidArgumentException $e ) {
172
+					return new PropertyId($propertyIdSerialization);
173
+				} catch (InvalidArgumentException $e) {
174 174
 					$this->apiErrorReporter->dieError(
175 175
 						"Invalid id: $propertyIdSerialization",
176 176
 						'invalid-property-id',
177 177
 						0, // default argument
178
-						[ self::PARAM_PROPERTY_ID => $propertyIdSerialization ]
178
+						[self::PARAM_PROPERTY_ID => $propertyIdSerialization]
179 179
 					);
180 180
 				}
181 181
 			},
@@ -187,35 +187,35 @@  discard block
 block discarded – undo
187 187
 	 * @param array|null $constraintIds
188 188
 	 * @return string[]
189 189
 	 */
190
-	private function parseConstraintIds( $constraintIds ) {
191
-		if ( $constraintIds === null ) {
190
+	private function parseConstraintIds($constraintIds) {
191
+		if ($constraintIds === null) {
192 192
 			return [];
193
-		} elseif ( empty( $constraintIds ) ) {
193
+		} elseif (empty($constraintIds)) {
194 194
 			$this->apiErrorReporter->dieError(
195
-				'If ' . self::PARAM_CONSTRAINT_ID . ' is specified, it must be nonempty.',
195
+				'If '.self::PARAM_CONSTRAINT_ID.' is specified, it must be nonempty.',
196 196
 				'no-data'
197 197
 			);
198 198
 		}
199 199
 
200 200
 		return array_map(
201
-			function( $constraintId ) {
201
+			function($constraintId) {
202 202
 				try {
203
-					$propertyId = $this->statementGuidParser->parse( $constraintId )->getEntityId();
204
-					if ( !$propertyId instanceof PropertyId ) {
203
+					$propertyId = $this->statementGuidParser->parse($constraintId)->getEntityId();
204
+					if (!$propertyId instanceof PropertyId) {
205 205
 						$this->apiErrorReporter->dieError(
206 206
 							"Invalid property ID: {$propertyId->getSerialization()}",
207 207
 							'invalid-property-id',
208 208
 							0, // default argument
209
-							[ self::PARAM_CONSTRAINT_ID => $constraintId ]
209
+							[self::PARAM_CONSTRAINT_ID => $constraintId]
210 210
 						);
211 211
 					}
212 212
 					return $constraintId;
213
-				} catch ( StatementGuidParsingException $e ) {
213
+				} catch (StatementGuidParsingException $e) {
214 214
 					$this->apiErrorReporter->dieError(
215 215
 						"Invalid statement GUID: $constraintId",
216 216
 						'invalid-guid',
217 217
 						0, // default argument
218
-						[ self::PARAM_CONSTRAINT_ID => $constraintId ]
218
+						[self::PARAM_CONSTRAINT_ID => $constraintId]
219 219
 					);
220 220
 				}
221 221
 			},
@@ -227,12 +227,12 @@  discard block
 block discarded – undo
227 227
 	 * @param PropertyId[] $propertyIds
228 228
 	 * @param ApiResult $result
229 229
 	 */
230
-	private function checkPropertyIds( array $propertyIds, ApiResult $result ) {
231
-		foreach ( $propertyIds as $propertyId ) {
232
-			$result->addArrayType( $this->getResultPathForPropertyId( $propertyId ), 'assoc' );
233
-			$allConstraintExceptions = $this->delegatingConstraintChecker->checkConstraintParametersOnPropertyId( $propertyId );
234
-			foreach ( $allConstraintExceptions as $constraintId => $constraintParameterExceptions ) {
235
-				$this->addConstraintParameterExceptionsToResult( $constraintId, $constraintParameterExceptions, $result );
230
+	private function checkPropertyIds(array $propertyIds, ApiResult $result) {
231
+		foreach ($propertyIds as $propertyId) {
232
+			$result->addArrayType($this->getResultPathForPropertyId($propertyId), 'assoc');
233
+			$allConstraintExceptions = $this->delegatingConstraintChecker->checkConstraintParametersOnPropertyId($propertyId);
234
+			foreach ($allConstraintExceptions as $constraintId => $constraintParameterExceptions) {
235
+				$this->addConstraintParameterExceptionsToResult($constraintId, $constraintParameterExceptions, $result);
236 236
 			}
237 237
 		}
238 238
 	}
@@ -241,14 +241,14 @@  discard block
 block discarded – undo
241 241
 	 * @param string[] $constraintIds
242 242
 	 * @param ApiResult $result
243 243
 	 */
244
-	private function checkConstraintIds( array $constraintIds, ApiResult $result ) {
245
-		foreach ( $constraintIds as $constraintId ) {
246
-			if ( $result->getResultData( $this->getResultPathForConstraintId( $constraintId ) ) ) {
244
+	private function checkConstraintIds(array $constraintIds, ApiResult $result) {
245
+		foreach ($constraintIds as $constraintId) {
246
+			if ($result->getResultData($this->getResultPathForConstraintId($constraintId))) {
247 247
 				// already checked as part of checkPropertyIds()
248 248
 				continue;
249 249
 			}
250
-			$constraintParameterExceptions = $this->delegatingConstraintChecker->checkConstraintParametersOnConstraintId( $constraintId );
251
-			$this->addConstraintParameterExceptionsToResult( $constraintId, $constraintParameterExceptions, $result );
250
+			$constraintParameterExceptions = $this->delegatingConstraintChecker->checkConstraintParametersOnConstraintId($constraintId);
251
+			$this->addConstraintParameterExceptionsToResult($constraintId, $constraintParameterExceptions, $result);
252 252
 		}
253 253
 	}
254 254
 
@@ -256,17 +256,17 @@  discard block
 block discarded – undo
256 256
 	 * @param PropertyId $propertyId
257 257
 	 * @return string[]
258 258
 	 */
259
-	private function getResultPathForPropertyId( PropertyId $propertyId ) {
260
-		return [ $this->getModuleName(), $propertyId->getSerialization() ];
259
+	private function getResultPathForPropertyId(PropertyId $propertyId) {
260
+		return [$this->getModuleName(), $propertyId->getSerialization()];
261 261
 	}
262 262
 
263 263
 	/**
264 264
 	 * @param string $constraintId
265 265
 	 * @return string[]
266 266
 	 */
267
-	private function getResultPathForConstraintId( $constraintId ) {
268
-		$propertyId = $this->statementGuidParser->parse( $constraintId )->getEntityId();
269
-		return array_merge( $this->getResultPathForPropertyId( $propertyId ), [ $constraintId ] );
267
+	private function getResultPathForConstraintId($constraintId) {
268
+		$propertyId = $this->statementGuidParser->parse($constraintId)->getEntityId();
269
+		return array_merge($this->getResultPathForPropertyId($propertyId), [$constraintId]);
270 270
 	}
271 271
 
272 272
 	/**
@@ -276,9 +276,9 @@  discard block
 block discarded – undo
276 276
 	 * @param ConstraintParameterException[]|null $constraintParameterExceptions
277 277
 	 * @param ApiResult $result
278 278
 	 */
279
-	private function addConstraintParameterExceptionsToResult( $constraintId, $constraintParameterExceptions, ApiResult $result ) {
280
-		$path = $this->getResultPathForConstraintId( $constraintId );
281
-		if ( $constraintParameterExceptions === null ) {
279
+	private function addConstraintParameterExceptionsToResult($constraintId, $constraintParameterExceptions, ApiResult $result) {
280
+		$path = $this->getResultPathForConstraintId($constraintId);
281
+		if ($constraintParameterExceptions === null) {
282 282
 			$result->addValue(
283 283
 				$path,
284 284
 				self::KEY_STATUS,
@@ -288,12 +288,12 @@  discard block
 block discarded – undo
288 288
 			$result->addValue(
289 289
 				$path,
290 290
 				self::KEY_STATUS,
291
-				empty( $constraintParameterExceptions ) ? self::STATUS_OKAY : self::STATUS_NOT_OKAY
291
+				empty($constraintParameterExceptions) ? self::STATUS_OKAY : self::STATUS_NOT_OKAY
292 292
 			);
293 293
 			$result->addValue(
294 294
 				$path,
295 295
 				self::KEY_PROBLEMS,
296
-				array_map( [ $this, 'formatConstraintParameterException' ], $constraintParameterExceptions )
296
+				array_map([$this, 'formatConstraintParameterException'], $constraintParameterExceptions)
297 297
 			);
298 298
 		}
299 299
 	}
@@ -304,7 +304,7 @@  discard block
 block discarded – undo
304 304
 	 * @param ConstraintParameterException $e
305 305
 	 * @return array
306 306
 	 */
307
-	private function formatConstraintParameterException( ConstraintParameterException $e ) {
307
+	private function formatConstraintParameterException(ConstraintParameterException $e) {
308 308
 		return [
309 309
 			self::KEY_MESSAGE_HTML => $this->violationMessageRenderer->render(
310 310
 				$e->getViolationMessage()
Please login to merge, or discard this patch.
src/ConstraintCheck/Helper/ConstraintParameterException.php 1 patch
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -21,13 +21,13 @@
 block discarded – undo
21 21
 	/**
22 22
 	 * @param ViolationMessage|string $violationMessage
23 23
 	 */
24
-	public function __construct( $violationMessage ) {
25
-		if ( $violationMessage instanceof ViolationMessage ) {
26
-			$message = '⧼' . $violationMessage->getMessageKey() . '⧽';
24
+	public function __construct($violationMessage) {
25
+		if ($violationMessage instanceof ViolationMessage) {
26
+			$message = '⧼'.$violationMessage->getMessageKey().'⧽';
27 27
 		} else {
28 28
 			$message = $violationMessage;
29 29
 		}
30
-		parent::__construct( $message );
30
+		parent::__construct($message);
31 31
 
32 32
 		// TODO remove support for string $violationMessage (see ViolationMessageRenderer::render())
33 33
 		$this->violationMessage = $violationMessage;
Please login to merge, or discard this patch.
src/ConstraintCheck/Helper/ConstraintParameterParser.php 1 patch
Spacing   +215 added lines, -215 removed lines patch added patch discarded remove patch
@@ -77,15 +77,15 @@  discard block
 block discarded – undo
77 77
 	 * @param array $parameters
78 78
 	 * @throws ConstraintParameterException
79 79
 	 */
80
-	public function checkError( array $parameters ) {
81
-		if ( array_key_exists( '@error', $parameters ) ) {
80
+	public function checkError(array $parameters) {
81
+		if (array_key_exists('@error', $parameters)) {
82 82
 			$error = $parameters['@error'];
83
-			if ( array_key_exists( 'toolong', $error ) && $error['toolong'] ) {
83
+			if (array_key_exists('toolong', $error) && $error['toolong']) {
84 84
 				$msg = 'wbqc-violation-message-parameters-error-toolong';
85 85
 			} else {
86 86
 				$msg = 'wbqc-violation-message-parameters-error-unknown';
87 87
 			}
88
-			throw new ConstraintParameterException( new ViolationMessage( $msg ) );
88
+			throw new ConstraintParameterException(new ViolationMessage($msg));
89 89
 		}
90 90
 	}
91 91
 
@@ -95,11 +95,11 @@  discard block
 block discarded – undo
95 95
 	 * @param string $parameterId
96 96
 	 * @throws ConstraintParameterException
97 97
 	 */
98
-	private function requireSingleParameter( array $parameters, $parameterId ) {
99
-		if ( count( $parameters[$parameterId] ) !== 1 ) {
98
+	private function requireSingleParameter(array $parameters, $parameterId) {
99
+		if (count($parameters[$parameterId]) !== 1) {
100 100
 			throw new ConstraintParameterException(
101
-				( new ViolationMessage( 'wbqc-violation-message-parameter-single' ) )
102
-					->withEntityId( new PropertyId( $parameterId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
101
+				(new ViolationMessage('wbqc-violation-message-parameter-single'))
102
+					->withEntityId(new PropertyId($parameterId), Role::CONSTRAINT_PARAMETER_PROPERTY)
103 103
 			);
104 104
 		}
105 105
 	}
@@ -111,11 +111,11 @@  discard block
 block discarded – undo
111 111
 	 * @return void
112 112
 	 * @throws ConstraintParameterException
113 113
 	 */
114
-	private function requireValueParameter( Snak $snak, $parameterId ) {
115
-		if ( !( $snak instanceof PropertyValueSnak ) ) {
114
+	private function requireValueParameter(Snak $snak, $parameterId) {
115
+		if (!($snak instanceof PropertyValueSnak)) {
116 116
 			throw new ConstraintParameterException(
117
-				( new ViolationMessage( 'wbqc-violation-message-parameter-value' ) )
118
-					->withEntityId( new PropertyId( $parameterId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
117
+				(new ViolationMessage('wbqc-violation-message-parameter-value'))
118
+					->withEntityId(new PropertyId($parameterId), Role::CONSTRAINT_PARAMETER_PROPERTY)
119 119
 			);
120 120
 		}
121 121
 	}
@@ -127,17 +127,17 @@  discard block
 block discarded – undo
127 127
 	 * @throws ConstraintParameterException
128 128
 	 * @return EntityId
129 129
 	 */
130
-	private function parseEntityIdParameter( array $snakSerialization, $parameterId ) {
131
-		$snak = $this->snakDeserializer->deserialize( $snakSerialization );
132
-		$this->requireValueParameter( $snak, $parameterId );
130
+	private function parseEntityIdParameter(array $snakSerialization, $parameterId) {
131
+		$snak = $this->snakDeserializer->deserialize($snakSerialization);
132
+		$this->requireValueParameter($snak, $parameterId);
133 133
 		$value = $snak->getDataValue();
134
-		if ( $value instanceof EntityIdValue ) {
134
+		if ($value instanceof EntityIdValue) {
135 135
 			return $value->getEntityId();
136 136
 		} else {
137 137
 			throw new ConstraintParameterException(
138
-				( new ViolationMessage( 'wbqc-violation-message-parameter-entity' ) )
139
-					->withEntityId( new PropertyId( $parameterId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
140
-					->withDataValue( $value, Role::CONSTRAINT_PARAMETER_VALUE )
138
+				(new ViolationMessage('wbqc-violation-message-parameter-entity'))
139
+					->withEntityId(new PropertyId($parameterId), Role::CONSTRAINT_PARAMETER_PROPERTY)
140
+					->withDataValue($value, Role::CONSTRAINT_PARAMETER_VALUE)
141 141
 			);
142 142
 		}
143 143
 	}
@@ -148,20 +148,20 @@  discard block
 block discarded – undo
148 148
 	 * @throws ConstraintParameterException if the parameter is invalid or missing
149 149
 	 * @return string[] class entity ID serializations
150 150
 	 */
151
-	public function parseClassParameter( array $constraintParameters, $constraintTypeItemId ) {
152
-		$this->checkError( $constraintParameters );
153
-		$classId = $this->config->get( 'WBQualityConstraintsClassId' );
154
-		if ( !array_key_exists( $classId, $constraintParameters ) ) {
151
+	public function parseClassParameter(array $constraintParameters, $constraintTypeItemId) {
152
+		$this->checkError($constraintParameters);
153
+		$classId = $this->config->get('WBQualityConstraintsClassId');
154
+		if (!array_key_exists($classId, $constraintParameters)) {
155 155
 			throw new ConstraintParameterException(
156
-				( new ViolationMessage( 'wbqc-violation-message-parameter-needed' ) )
157
-					->withEntityId( new ItemId( $constraintTypeItemId ), Role::CONSTRAINT_TYPE_ITEM )
158
-					->withEntityId( new PropertyId( $classId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
156
+				(new ViolationMessage('wbqc-violation-message-parameter-needed'))
157
+					->withEntityId(new ItemId($constraintTypeItemId), Role::CONSTRAINT_TYPE_ITEM)
158
+					->withEntityId(new PropertyId($classId), Role::CONSTRAINT_PARAMETER_PROPERTY)
159 159
 			);
160 160
 		}
161 161
 
162 162
 		$classes = [];
163
-		foreach ( $constraintParameters[$classId] as $class ) {
164
-			$classes[] = $this->parseEntityIdParameter( $class, $classId )->getSerialization();
163
+		foreach ($constraintParameters[$classId] as $class) {
164
+			$classes[] = $this->parseEntityIdParameter($class, $classId)->getSerialization();
165 165
 		}
166 166
 		return $classes;
167 167
 	}
@@ -172,23 +172,23 @@  discard block
 block discarded – undo
172 172
 	 * @throws ConstraintParameterException if the parameter is invalid or missing
173 173
 	 * @return string 'instance', 'subclass', or 'instanceOrSubclass'
174 174
 	 */
175
-	public function parseRelationParameter( array $constraintParameters, $constraintTypeItemId ) {
176
-		$this->checkError( $constraintParameters );
177
-		$relationId = $this->config->get( 'WBQualityConstraintsRelationId' );
178
-		if ( !array_key_exists( $relationId, $constraintParameters ) ) {
175
+	public function parseRelationParameter(array $constraintParameters, $constraintTypeItemId) {
176
+		$this->checkError($constraintParameters);
177
+		$relationId = $this->config->get('WBQualityConstraintsRelationId');
178
+		if (!array_key_exists($relationId, $constraintParameters)) {
179 179
 			throw new ConstraintParameterException(
180
-				( new ViolationMessage( 'wbqc-violation-message-parameter-needed' ) )
181
-					->withEntityId( new ItemId( $constraintTypeItemId ), Role::CONSTRAINT_TYPE_ITEM )
182
-					->withEntityId( new PropertyId( $relationId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
180
+				(new ViolationMessage('wbqc-violation-message-parameter-needed'))
181
+					->withEntityId(new ItemId($constraintTypeItemId), Role::CONSTRAINT_TYPE_ITEM)
182
+					->withEntityId(new PropertyId($relationId), Role::CONSTRAINT_PARAMETER_PROPERTY)
183 183
 			);
184 184
 		}
185 185
 
186
-		$this->requireSingleParameter( $constraintParameters, $relationId );
187
-		$relationEntityId = $this->parseEntityIdParameter( $constraintParameters[$relationId][0], $relationId );
188
-		$instanceId = $this->config->get( 'WBQualityConstraintsInstanceOfRelationId' );
189
-		$subclassId = $this->config->get( 'WBQualityConstraintsSubclassOfRelationId' );
190
-		$instanceOrSubclassId = $this->config->get( 'WBQualityConstraintsInstanceOrSubclassOfRelationId' );
191
-		switch ( $relationEntityId ) {
186
+		$this->requireSingleParameter($constraintParameters, $relationId);
187
+		$relationEntityId = $this->parseEntityIdParameter($constraintParameters[$relationId][0], $relationId);
188
+		$instanceId = $this->config->get('WBQualityConstraintsInstanceOfRelationId');
189
+		$subclassId = $this->config->get('WBQualityConstraintsSubclassOfRelationId');
190
+		$instanceOrSubclassId = $this->config->get('WBQualityConstraintsInstanceOrSubclassOfRelationId');
191
+		switch ($relationEntityId) {
192 192
 			case $instanceId:
193 193
 				return 'instance';
194 194
 			case $subclassId:
@@ -197,13 +197,13 @@  discard block
 block discarded – undo
197 197
 				return 'instanceOrSubclass';
198 198
 			default:
199 199
 				throw new ConstraintParameterException(
200
-					( new ViolationMessage( 'wbqc-violation-message-parameter-oneof' ) )
201
-						->withEntityId( new PropertyId( $relationId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
200
+					(new ViolationMessage('wbqc-violation-message-parameter-oneof'))
201
+						->withEntityId(new PropertyId($relationId), Role::CONSTRAINT_PARAMETER_PROPERTY)
202 202
 						->withEntityIdList(
203 203
 							[
204
-								new ItemId( $instanceId ),
205
-								new ItemId( $subclassId ),
206
-								new ItemId( $instanceOrSubclassId ),
204
+								new ItemId($instanceId),
205
+								new ItemId($subclassId),
206
+								new ItemId($instanceOrSubclassId),
207 207
 							],
208 208
 							Role::CONSTRAINT_PARAMETER_VALUE
209 209
 						)
@@ -218,20 +218,20 @@  discard block
 block discarded – undo
218 218
 	 * @throws ConstraintParameterException
219 219
 	 * @return PropertyId
220 220
 	 */
221
-	private function parsePropertyIdParameter( array $snakSerialization, $parameterId ) {
222
-		$snak = $this->snakDeserializer->deserialize( $snakSerialization );
223
-		$this->requireValueParameter( $snak, $parameterId );
221
+	private function parsePropertyIdParameter(array $snakSerialization, $parameterId) {
222
+		$snak = $this->snakDeserializer->deserialize($snakSerialization);
223
+		$this->requireValueParameter($snak, $parameterId);
224 224
 		$value = $snak->getDataValue();
225
-		if ( $value instanceof EntityIdValue ) {
225
+		if ($value instanceof EntityIdValue) {
226 226
 			$id = $value->getEntityId();
227
-			if ( $id instanceof PropertyId ) {
227
+			if ($id instanceof PropertyId) {
228 228
 				return $id;
229 229
 			}
230 230
 		}
231 231
 		throw new ConstraintParameterException(
232
-			( new ViolationMessage( 'wbqc-violation-message-parameter-property' ) )
233
-				->withEntityId( new PropertyId( $parameterId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
234
-				->withDataValue( $value, Role::CONSTRAINT_PARAMETER_VALUE )
232
+			(new ViolationMessage('wbqc-violation-message-parameter-property'))
233
+				->withEntityId(new PropertyId($parameterId), Role::CONSTRAINT_PARAMETER_PROPERTY)
234
+				->withDataValue($value, Role::CONSTRAINT_PARAMETER_VALUE)
235 235
 		);
236 236
 	}
237 237
 
@@ -242,32 +242,32 @@  discard block
 block discarded – undo
242 242
 	 * @throws ConstraintParameterException if the parameter is invalid or missing
243 243
 	 * @return PropertyId
244 244
 	 */
245
-	public function parsePropertyParameter( array $constraintParameters, $constraintTypeItemId ) {
246
-		$this->checkError( $constraintParameters );
247
-		$propertyId = $this->config->get( 'WBQualityConstraintsPropertyId' );
248
-		if ( !array_key_exists( $propertyId, $constraintParameters ) ) {
245
+	public function parsePropertyParameter(array $constraintParameters, $constraintTypeItemId) {
246
+		$this->checkError($constraintParameters);
247
+		$propertyId = $this->config->get('WBQualityConstraintsPropertyId');
248
+		if (!array_key_exists($propertyId, $constraintParameters)) {
249 249
 			throw new ConstraintParameterException(
250
-				( new ViolationMessage( 'wbqc-violation-message-parameter-needed' ) )
251
-					->withEntityId( new ItemId( $constraintTypeItemId ), Role::CONSTRAINT_TYPE_ITEM )
252
-					->withEntityId( new PropertyId( $propertyId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
250
+				(new ViolationMessage('wbqc-violation-message-parameter-needed'))
251
+					->withEntityId(new ItemId($constraintTypeItemId), Role::CONSTRAINT_TYPE_ITEM)
252
+					->withEntityId(new PropertyId($propertyId), Role::CONSTRAINT_PARAMETER_PROPERTY)
253 253
 			);
254 254
 		}
255 255
 
256
-		$this->requireSingleParameter( $constraintParameters, $propertyId );
257
-		return $this->parsePropertyIdParameter( $constraintParameters[$propertyId][0], $propertyId );
256
+		$this->requireSingleParameter($constraintParameters, $propertyId);
257
+		return $this->parsePropertyIdParameter($constraintParameters[$propertyId][0], $propertyId);
258 258
 	}
259 259
 
260
-	private function parseItemIdParameter( PropertyValueSnak $snak, $parameterId ) {
260
+	private function parseItemIdParameter(PropertyValueSnak $snak, $parameterId) {
261 261
 		$dataValue = $snak->getDataValue();
262
-		if ( $dataValue instanceof EntityIdValue &&
262
+		if ($dataValue instanceof EntityIdValue &&
263 263
 			$dataValue->getEntityId() instanceof ItemId
264 264
 		) {
265
-			return ItemIdSnakValue::fromItemId( $dataValue->getEntityId() );
265
+			return ItemIdSnakValue::fromItemId($dataValue->getEntityId());
266 266
 		} else {
267 267
 			throw new ConstraintParameterException(
268
-				( new ViolationMessage( 'wbqc-violation-message-parameter-item' ) )
269
-					->withEntityId( new PropertyId( $parameterId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
270
-					->withDataValue( $dataValue, Role::CONSTRAINT_PARAMETER_VALUE )
268
+				(new ViolationMessage('wbqc-violation-message-parameter-item'))
269
+					->withEntityId(new PropertyId($parameterId), Role::CONSTRAINT_PARAMETER_PROPERTY)
270
+					->withDataValue($dataValue, Role::CONSTRAINT_PARAMETER_VALUE)
271 271
 			);
272 272
 		}
273 273
 	}
@@ -279,15 +279,15 @@  discard block
 block discarded – undo
279 279
 	 * @throws ConstraintParameterException if the parameter is invalid or missing
280 280
 	 * @return ItemIdSnakValue[] array of values
281 281
 	 */
282
-	public function parseItemsParameter( array $constraintParameters, $constraintTypeItemId, $required ) {
283
-		$this->checkError( $constraintParameters );
284
-		$qualifierId = $this->config->get( 'WBQualityConstraintsQualifierOfPropertyConstraintId' );
285
-		if ( !array_key_exists( $qualifierId, $constraintParameters ) ) {
286
-			if ( $required ) {
282
+	public function parseItemsParameter(array $constraintParameters, $constraintTypeItemId, $required) {
283
+		$this->checkError($constraintParameters);
284
+		$qualifierId = $this->config->get('WBQualityConstraintsQualifierOfPropertyConstraintId');
285
+		if (!array_key_exists($qualifierId, $constraintParameters)) {
286
+			if ($required) {
287 287
 				throw new ConstraintParameterException(
288
-					( new ViolationMessage( 'wbqc-violation-message-parameter-needed' ) )
289
-						->withEntityId( new ItemId( $constraintTypeItemId ), Role::CONSTRAINT_TYPE_ITEM )
290
-						->withEntityId( new PropertyId( $qualifierId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
288
+					(new ViolationMessage('wbqc-violation-message-parameter-needed'))
289
+						->withEntityId(new ItemId($constraintTypeItemId), Role::CONSTRAINT_TYPE_ITEM)
290
+						->withEntityId(new PropertyId($qualifierId), Role::CONSTRAINT_PARAMETER_PROPERTY)
291 291
 				);
292 292
 			} else {
293 293
 				return [];
@@ -295,11 +295,11 @@  discard block
 block discarded – undo
295 295
 		}
296 296
 
297 297
 		$values = [];
298
-		foreach ( $constraintParameters[$qualifierId] as $parameter ) {
299
-			$snak = $this->snakDeserializer->deserialize( $parameter );
300
-			switch ( true ) {
298
+		foreach ($constraintParameters[$qualifierId] as $parameter) {
299
+			$snak = $this->snakDeserializer->deserialize($parameter);
300
+			switch (true) {
301 301
 				case $snak instanceof PropertyValueSnak:
302
-					$values[] = $this->parseItemIdParameter( $snak, $qualifierId );
302
+					$values[] = $this->parseItemIdParameter($snak, $qualifierId);
303 303
 					break;
304 304
 				case $snak instanceof PropertySomeValueSnak:
305 305
 					$values[] = ItemIdSnakValue::someValue();
@@ -318,27 +318,27 @@  discard block
 block discarded – undo
318 318
 	 * @throws ConstraintParameterException if the parameter is invalid or missing
319 319
 	 * @return PropertyId[]
320 320
 	 */
321
-	public function parsePropertiesParameter( array $constraintParameters, $constraintTypeItemId ) {
322
-		$this->checkError( $constraintParameters );
323
-		$propertyId = $this->config->get( 'WBQualityConstraintsPropertyId' );
324
-		if ( !array_key_exists( $propertyId, $constraintParameters ) ) {
321
+	public function parsePropertiesParameter(array $constraintParameters, $constraintTypeItemId) {
322
+		$this->checkError($constraintParameters);
323
+		$propertyId = $this->config->get('WBQualityConstraintsPropertyId');
324
+		if (!array_key_exists($propertyId, $constraintParameters)) {
325 325
 			throw new ConstraintParameterException(
326
-				( new ViolationMessage( 'wbqc-violation-message-parameter-needed' ) )
327
-					->withEntityId( new ItemId( $constraintTypeItemId ), Role::CONSTRAINT_TYPE_ITEM )
328
-					->withEntityId( new PropertyId( $propertyId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
326
+				(new ViolationMessage('wbqc-violation-message-parameter-needed'))
327
+					->withEntityId(new ItemId($constraintTypeItemId), Role::CONSTRAINT_TYPE_ITEM)
328
+					->withEntityId(new PropertyId($propertyId), Role::CONSTRAINT_PARAMETER_PROPERTY)
329 329
 			);
330 330
 		}
331 331
 
332 332
 		$parameters = $constraintParameters[$propertyId];
333
-		if ( count( $parameters ) === 1 &&
334
-			$this->snakDeserializer->deserialize( $parameters[0] ) instanceof PropertyNoValueSnak
333
+		if (count($parameters) === 1 &&
334
+			$this->snakDeserializer->deserialize($parameters[0]) instanceof PropertyNoValueSnak
335 335
 		) {
336 336
 			return [];
337 337
 		}
338 338
 
339 339
 		$properties = [];
340
-		foreach ( $parameters as $parameter ) {
341
-			$properties[] = $this->parsePropertyIdParameter( $parameter, $propertyId );
340
+		foreach ($parameters as $parameter) {
341
+			$properties[] = $this->parsePropertyIdParameter($parameter, $propertyId);
342 342
 		}
343 343
 		return $properties;
344 344
 	}
@@ -349,16 +349,16 @@  discard block
 block discarded – undo
349 349
 	 * @throws ConstraintParameterException
350 350
 	 * @return DataValue|null
351 351
 	 */
352
-	private function parseValueOrNoValueParameter( array $snakSerialization, $parameterId ) {
353
-		$snak = $this->snakDeserializer->deserialize( $snakSerialization );
354
-		if ( $snak instanceof PropertyValueSnak ) {
352
+	private function parseValueOrNoValueParameter(array $snakSerialization, $parameterId) {
353
+		$snak = $this->snakDeserializer->deserialize($snakSerialization);
354
+		if ($snak instanceof PropertyValueSnak) {
355 355
 			return $snak->getDataValue();
356
-		} elseif ( $snak instanceof PropertyNoValueSnak ) {
356
+		} elseif ($snak instanceof PropertyNoValueSnak) {
357 357
 			return null;
358 358
 		} else {
359 359
 			throw new ConstraintParameterException(
360
-				( new ViolationMessage( 'wbqc-violation-message-parameter-value-or-novalue' ) )
361
-					->withEntityId( new PropertyId( $parameterId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
360
+				(new ViolationMessage('wbqc-violation-message-parameter-value-or-novalue'))
361
+					->withEntityId(new PropertyId($parameterId), Role::CONSTRAINT_PARAMETER_PROPERTY)
362 362
 			);
363 363
 		}
364 364
 	}
@@ -368,10 +368,10 @@  discard block
 block discarded – undo
368 368
 	 * @param string $parameterId
369 369
 	 * @return DataValue|null
370 370
 	 */
371
-	private function parseValueOrNoValueOrNowParameter( array $snakSerialization, $parameterId ) {
371
+	private function parseValueOrNoValueOrNowParameter(array $snakSerialization, $parameterId) {
372 372
 		try {
373
-			return $this->parseValueOrNoValueParameter( $snakSerialization, $parameterId );
374
-		} catch ( ConstraintParameterException $e ) {
373
+			return $this->parseValueOrNoValueParameter($snakSerialization, $parameterId);
374
+		} catch (ConstraintParameterException $e) {
375 375
 			// unknown value means “now”
376 376
 			return new NowValue();
377 377
 		}
@@ -384,14 +384,14 @@  discard block
 block discarded – undo
384 384
 	 * @param string $unit
385 385
 	 * @return bool
386 386
 	 */
387
-	private function exactlyOneQuantityWithUnit( DataValue $min = null, DataValue $max = null, $unit ) {
388
-		if ( !( $min instanceof UnboundedQuantityValue ) ||
389
-			!( $max instanceof UnboundedQuantityValue )
387
+	private function exactlyOneQuantityWithUnit(DataValue $min = null, DataValue $max = null, $unit) {
388
+		if (!($min instanceof UnboundedQuantityValue) ||
389
+			!($max instanceof UnboundedQuantityValue)
390 390
 		) {
391 391
 			return false;
392 392
 		}
393 393
 
394
-		return ( $min->getUnit() === $unit ) !== ( $max->getUnit() === $unit );
394
+		return ($min->getUnit() === $unit) !== ($max->getUnit() === $unit);
395 395
 	}
396 396
 
397 397
 	/**
@@ -402,9 +402,9 @@  discard block
 block discarded – undo
402 402
 	 * @throws ConstraintParameterException if the parameter is invalid or missing
403 403
 	 * @return DataValue[] a pair of two data values, either of which may be null to signify an open range
404 404
 	 */
405
-	public function parseRangeParameter( array $constraintParameters, $constraintTypeItemId, $type ) {
406
-		$this->checkError( $constraintParameters );
407
-		switch ( $type ) {
405
+	public function parseRangeParameter(array $constraintParameters, $constraintTypeItemId, $type) {
406
+		$this->checkError($constraintParameters);
407
+		switch ($type) {
408 408
 			case 'quantity':
409 409
 				$configKey = 'Quantity';
410 410
 				break;
@@ -413,48 +413,48 @@  discard block
 block discarded – undo
413 413
 				break;
414 414
 			default:
415 415
 				throw new ConstraintParameterException(
416
-					( new ViolationMessage( 'wbqc-violation-message-value-needed-of-types-2' ) )
417
-						->withEntityId( new ItemId( $constraintTypeItemId ), Role::CONSTRAINT_TYPE_ITEM )
418
-						->withDataValueType( 'quantity' )
419
-						->withDataValueType( 'time' )
416
+					(new ViolationMessage('wbqc-violation-message-value-needed-of-types-2'))
417
+						->withEntityId(new ItemId($constraintTypeItemId), Role::CONSTRAINT_TYPE_ITEM)
418
+						->withDataValueType('quantity')
419
+						->withDataValueType('time')
420 420
 				);
421 421
 		}
422
-		$minimumId = $this->config->get( 'WBQualityConstraintsMinimum' . $configKey . 'Id' );
423
-		$maximumId = $this->config->get( 'WBQualityConstraintsMaximum' . $configKey . 'Id' );
424
-		if ( !array_key_exists( $minimumId, $constraintParameters ) ||
425
-			!array_key_exists( $maximumId, $constraintParameters )
422
+		$minimumId = $this->config->get('WBQualityConstraintsMinimum'.$configKey.'Id');
423
+		$maximumId = $this->config->get('WBQualityConstraintsMaximum'.$configKey.'Id');
424
+		if (!array_key_exists($minimumId, $constraintParameters) ||
425
+			!array_key_exists($maximumId, $constraintParameters)
426 426
 		) {
427 427
 			throw new ConstraintParameterException(
428
-				( new ViolationMessage( 'wbqc-violation-message-range-parameters-needed' ) )
429
-					->withDataValueType( $type )
430
-					->withEntityId( new PropertyId( $minimumId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
431
-					->withEntityId( new PropertyId( $maximumId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
432
-					->withEntityId( new ItemId( $constraintTypeItemId ), Role::CONSTRAINT_TYPE_ITEM )
428
+				(new ViolationMessage('wbqc-violation-message-range-parameters-needed'))
429
+					->withDataValueType($type)
430
+					->withEntityId(new PropertyId($minimumId), Role::CONSTRAINT_PARAMETER_PROPERTY)
431
+					->withEntityId(new PropertyId($maximumId), Role::CONSTRAINT_PARAMETER_PROPERTY)
432
+					->withEntityId(new ItemId($constraintTypeItemId), Role::CONSTRAINT_TYPE_ITEM)
433 433
 			);
434 434
 		}
435 435
 
436
-		$this->requireSingleParameter( $constraintParameters, $minimumId );
437
-		$this->requireSingleParameter( $constraintParameters, $maximumId );
436
+		$this->requireSingleParameter($constraintParameters, $minimumId);
437
+		$this->requireSingleParameter($constraintParameters, $maximumId);
438 438
 		$parseFunction = $configKey === 'Date' ? 'parseValueOrNoValueOrNowParameter' : 'parseValueOrNoValueParameter';
439
-		$min = $this->$parseFunction( $constraintParameters[$minimumId][0], $minimumId );
440
-		$max = $this->$parseFunction( $constraintParameters[$maximumId][0], $maximumId );
439
+		$min = $this->$parseFunction($constraintParameters[$minimumId][0], $minimumId);
440
+		$max = $this->$parseFunction($constraintParameters[$maximumId][0], $maximumId);
441 441
 
442
-		$yearUnit = $this->config->get( 'WBQualityConstraintsYearUnit' );
443
-		if ( $this->exactlyOneQuantityWithUnit( $min, $max, $yearUnit ) ) {
442
+		$yearUnit = $this->config->get('WBQualityConstraintsYearUnit');
443
+		if ($this->exactlyOneQuantityWithUnit($min, $max, $yearUnit)) {
444 444
 			throw new ConstraintParameterException(
445
-				new ViolationMessage( 'wbqc-violation-message-range-parameters-one-year' )
445
+				new ViolationMessage('wbqc-violation-message-range-parameters-one-year')
446 446
 			);
447 447
 		}
448
-		if ( $min === null && $max === null ||
449
-			$min !== null && $max !== null && $min->equals( $max ) ) {
448
+		if ($min === null && $max === null ||
449
+			$min !== null && $max !== null && $min->equals($max)) {
450 450
 			throw new ConstraintParameterException(
451
-				( new ViolationMessage( 'wbqc-violation-message-range-parameters-same' ) )
452
-					->withEntityId( new PropertyId( $minimumId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
453
-					->withEntityId( new PropertyId( $maximumId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
451
+				(new ViolationMessage('wbqc-violation-message-range-parameters-same'))
452
+					->withEntityId(new PropertyId($minimumId), Role::CONSTRAINT_PARAMETER_PROPERTY)
453
+					->withEntityId(new PropertyId($maximumId), Role::CONSTRAINT_PARAMETER_PROPERTY)
454 454
 			);
455 455
 		}
456 456
 
457
-		return [ $min, $max ];
457
+		return [$min, $max];
458 458
 	}
459 459
 
460 460
 	/**
@@ -464,17 +464,17 @@  discard block
 block discarded – undo
464 464
 	 * @throws ConstraintParameterException
465 465
 	 * @return string
466 466
 	 */
467
-	private function parseStringParameter( array $snakSerialization, $parameterId ) {
468
-		$snak = $this->snakDeserializer->deserialize( $snakSerialization );
469
-		$this->requireValueParameter( $snak, $parameterId );
467
+	private function parseStringParameter(array $snakSerialization, $parameterId) {
468
+		$snak = $this->snakDeserializer->deserialize($snakSerialization);
469
+		$this->requireValueParameter($snak, $parameterId);
470 470
 		$value = $snak->getDataValue();
471
-		if ( $value instanceof StringValue ) {
471
+		if ($value instanceof StringValue) {
472 472
 			return $value->getValue();
473 473
 		} else {
474 474
 			throw new ConstraintParameterException(
475
-				( new ViolationMessage( 'wbqc-violation-message-parameter-string' ) )
476
-					->withEntityId( new PropertyId( $parameterId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
477
-					->withDataValue( $value, Role::CONSTRAINT_PARAMETER_VALUE )
475
+				(new ViolationMessage('wbqc-violation-message-parameter-string'))
476
+					->withEntityId(new PropertyId($parameterId), Role::CONSTRAINT_PARAMETER_PROPERTY)
477
+					->withDataValue($value, Role::CONSTRAINT_PARAMETER_VALUE)
478 478
 			);
479 479
 		}
480 480
 	}
@@ -485,15 +485,15 @@  discard block
 block discarded – undo
485 485
 	 * @throws ConstraintParameterException if the parameter is invalid or missing
486 486
 	 * @return string
487 487
 	 */
488
-	public function parseNamespaceParameter( array $constraintParameters, $constraintTypeItemId ) {
489
-		$this->checkError( $constraintParameters );
490
-		$namespaceId = $this->config->get( 'WBQualityConstraintsNamespaceId' );
491
-		if ( !array_key_exists( $namespaceId, $constraintParameters ) ) {
488
+	public function parseNamespaceParameter(array $constraintParameters, $constraintTypeItemId) {
489
+		$this->checkError($constraintParameters);
490
+		$namespaceId = $this->config->get('WBQualityConstraintsNamespaceId');
491
+		if (!array_key_exists($namespaceId, $constraintParameters)) {
492 492
 			return '';
493 493
 		}
494 494
 
495
-		$this->requireSingleParameter( $constraintParameters, $namespaceId );
496
-		return $this->parseStringParameter( $constraintParameters[$namespaceId][0], $namespaceId );
495
+		$this->requireSingleParameter($constraintParameters, $namespaceId);
496
+		return $this->parseStringParameter($constraintParameters[$namespaceId][0], $namespaceId);
497 497
 	}
498 498
 
499 499
 	/**
@@ -502,19 +502,19 @@  discard block
 block discarded – undo
502 502
 	 * @throws ConstraintParameterException if the parameter is invalid or missing
503 503
 	 * @return string
504 504
 	 */
505
-	public function parseFormatParameter( array $constraintParameters, $constraintTypeItemId ) {
506
-		$this->checkError( $constraintParameters );
507
-		$formatId = $this->config->get( 'WBQualityConstraintsFormatAsARegularExpressionId' );
508
-		if ( !array_key_exists( $formatId, $constraintParameters ) ) {
505
+	public function parseFormatParameter(array $constraintParameters, $constraintTypeItemId) {
506
+		$this->checkError($constraintParameters);
507
+		$formatId = $this->config->get('WBQualityConstraintsFormatAsARegularExpressionId');
508
+		if (!array_key_exists($formatId, $constraintParameters)) {
509 509
 			throw new ConstraintParameterException(
510
-				( new ViolationMessage( 'wbqc-violation-message-parameter-needed' ) )
511
-					->withEntityId( new ItemId( $constraintTypeItemId ), Role::CONSTRAINT_TYPE_ITEM )
512
-					->withEntityId( new PropertyId( $formatId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
510
+				(new ViolationMessage('wbqc-violation-message-parameter-needed'))
511
+					->withEntityId(new ItemId($constraintTypeItemId), Role::CONSTRAINT_TYPE_ITEM)
512
+					->withEntityId(new PropertyId($formatId), Role::CONSTRAINT_PARAMETER_PROPERTY)
513 513
 			);
514 514
 		}
515 515
 
516
-		$this->requireSingleParameter( $constraintParameters, $formatId );
517
-		return $this->parseStringParameter( $constraintParameters[$formatId][0], $formatId );
516
+		$this->requireSingleParameter($constraintParameters, $formatId);
517
+		return $this->parseStringParameter($constraintParameters[$formatId][0], $formatId);
518 518
 	}
519 519
 
520 520
 	/**
@@ -522,16 +522,16 @@  discard block
 block discarded – undo
522 522
 	 * @throws ConstraintParameterException if the parameter is invalid
523 523
 	 * @return EntityId[]
524 524
 	 */
525
-	public function parseExceptionParameter( array $constraintParameters ) {
526
-		$this->checkError( $constraintParameters );
527
-		$exceptionId = $this->config->get( 'WBQualityConstraintsExceptionToConstraintId' );
528
-		if ( !array_key_exists( $exceptionId, $constraintParameters ) ) {
525
+	public function parseExceptionParameter(array $constraintParameters) {
526
+		$this->checkError($constraintParameters);
527
+		$exceptionId = $this->config->get('WBQualityConstraintsExceptionToConstraintId');
528
+		if (!array_key_exists($exceptionId, $constraintParameters)) {
529 529
 			return [];
530 530
 		}
531 531
 
532 532
 		return array_map(
533
-			function( $snakSerialization ) use ( $exceptionId ) {
534
-				return $this->parseEntityIdParameter( $snakSerialization, $exceptionId );
533
+			function($snakSerialization) use ($exceptionId) {
534
+				return $this->parseEntityIdParameter($snakSerialization, $exceptionId);
535 535
 			},
536 536
 			$constraintParameters[$exceptionId]
537 537
 		);
@@ -542,26 +542,26 @@  discard block
 block discarded – undo
542 542
 	 * @throws ConstraintParameterException if the parameter is invalid
543 543
 	 * @return string|null 'mandatory' or null
544 544
 	 */
545
-	public function parseConstraintStatusParameter( array $constraintParameters ) {
546
-		$this->checkError( $constraintParameters );
547
-		$constraintStatusId = $this->config->get( 'WBQualityConstraintsConstraintStatusId' );
548
-		if ( !array_key_exists( $constraintStatusId, $constraintParameters ) ) {
545
+	public function parseConstraintStatusParameter(array $constraintParameters) {
546
+		$this->checkError($constraintParameters);
547
+		$constraintStatusId = $this->config->get('WBQualityConstraintsConstraintStatusId');
548
+		if (!array_key_exists($constraintStatusId, $constraintParameters)) {
549 549
 			return null;
550 550
 		}
551 551
 
552
-		$mandatoryId = $this->config->get( 'WBQualityConstraintsMandatoryConstraintId' );
553
-		$this->requireSingleParameter( $constraintParameters, $constraintStatusId );
554
-		$snak = $this->snakDeserializer->deserialize( $constraintParameters[$constraintStatusId][0] );
555
-		$this->requireValueParameter( $snak, $constraintStatusId );
552
+		$mandatoryId = $this->config->get('WBQualityConstraintsMandatoryConstraintId');
553
+		$this->requireSingleParameter($constraintParameters, $constraintStatusId);
554
+		$snak = $this->snakDeserializer->deserialize($constraintParameters[$constraintStatusId][0]);
555
+		$this->requireValueParameter($snak, $constraintStatusId);
556 556
 		$statusId = $snak->getDataValue()->getEntityId()->getSerialization();
557 557
 
558
-		if ( $statusId === $mandatoryId ) {
558
+		if ($statusId === $mandatoryId) {
559 559
 			return 'mandatory';
560 560
 		} else {
561 561
 			throw new ConstraintParameterException(
562
-				( new ViolationMessage( 'wbqc-violation-message-parameter-oneof' ) )
563
-					->withEntityId( new PropertyId( $constraintStatusId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
564
-					->withEntityIdList( [ new ItemId( $mandatoryId ) ], Role::CONSTRAINT_PARAMETER_VALUE )
562
+				(new ViolationMessage('wbqc-violation-message-parameter-oneof'))
563
+					->withEntityId(new PropertyId($constraintStatusId), Role::CONSTRAINT_PARAMETER_PROPERTY)
564
+					->withEntityIdList([new ItemId($mandatoryId)], Role::CONSTRAINT_PARAMETER_VALUE)
565 565
 			);
566 566
 		}
567 567
 	}
@@ -573,12 +573,12 @@  discard block
 block discarded – undo
573 573
 	 * @return void
574 574
 	 * @throws ConstraintParameterException
575 575
 	 */
576
-	private function requireMonolingualTextParameter( DataValue $dataValue, $parameterId ) {
577
-		if ( !( $dataValue instanceof MonolingualTextValue ) ) {
576
+	private function requireMonolingualTextParameter(DataValue $dataValue, $parameterId) {
577
+		if (!($dataValue instanceof MonolingualTextValue)) {
578 578
 			throw new ConstraintParameterException(
579
-				( new ViolationMessage( 'wbqc-violation-message-parameter-monolingualtext' ) )
580
-					->withEntityId( new PropertyId( $parameterId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
581
-					->withDataValue( $dataValue, Role::CONSTRAINT_PARAMETER_VALUE )
579
+				(new ViolationMessage('wbqc-violation-message-parameter-monolingualtext'))
580
+					->withEntityId(new PropertyId($parameterId), Role::CONSTRAINT_PARAMETER_PROPERTY)
581
+					->withDataValue($dataValue, Role::CONSTRAINT_PARAMETER_VALUE)
582 582
 			);
583 583
 		}
584 584
 	}
@@ -591,30 +591,30 @@  discard block
 block discarded – undo
591 591
 	 * @throws ConstraintParameterException if invalid snaks are found or a language has multiple texts
592 592
 	 * @return MultilingualTextValue
593 593
 	 */
594
-	private function parseMultilingualTextParameter( array $snakSerializations, $parameterId ) {
594
+	private function parseMultilingualTextParameter(array $snakSerializations, $parameterId) {
595 595
 		$result = [];
596 596
 
597
-		foreach ( $snakSerializations as $snakSerialization ) {
598
-			$snak = $this->snakDeserializer->deserialize( $snakSerialization );
599
-			$this->requireValueParameter( $snak, $parameterId );
597
+		foreach ($snakSerializations as $snakSerialization) {
598
+			$snak = $this->snakDeserializer->deserialize($snakSerialization);
599
+			$this->requireValueParameter($snak, $parameterId);
600 600
 
601 601
 			$value = $snak->getDataValue();
602
-			$this->requireMonolingualTextParameter( $value, $parameterId );
602
+			$this->requireMonolingualTextParameter($value, $parameterId);
603 603
 			/** @var MonolingualTextValue $value */
604 604
 
605 605
 			$code = $value->getLanguageCode();
606
-			if ( array_key_exists( $code, $result ) ) {
606
+			if (array_key_exists($code, $result)) {
607 607
 				throw new ConstraintParameterException(
608
-					( new ViolationMessage( 'wbqc-violation-message-parameter-single-per-language' ) )
609
-						->withEntityId( new PropertyId( $parameterId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
610
-						->withLanguage( $code )
608
+					(new ViolationMessage('wbqc-violation-message-parameter-single-per-language'))
609
+						->withEntityId(new PropertyId($parameterId), Role::CONSTRAINT_PARAMETER_PROPERTY)
610
+						->withLanguage($code)
611 611
 				);
612 612
 			}
613 613
 
614 614
 			$result[$code] = $value;
615 615
 		}
616 616
 
617
-		return new MultilingualTextValue( $result );
617
+		return new MultilingualTextValue($result);
618 618
 	}
619 619
 
620 620
 	/**
@@ -622,11 +622,11 @@  discard block
 block discarded – undo
622 622
 	 * @throws ConstraintParameterException if the parameter is invalid
623 623
 	 * @return MultilingualTextValue
624 624
 	 */
625
-	public function parseSyntaxClarificationParameter( array $constraintParameters ) {
626
-		$syntaxClarificationId = $this->config->get( 'WBQualityConstraintsSyntaxClarificationId' );
625
+	public function parseSyntaxClarificationParameter(array $constraintParameters) {
626
+		$syntaxClarificationId = $this->config->get('WBQualityConstraintsSyntaxClarificationId');
627 627
 
628
-		if ( !array_key_exists( $syntaxClarificationId, $constraintParameters ) ) {
629
-			return new MultilingualTextValue( [] );
628
+		if (!array_key_exists($syntaxClarificationId, $constraintParameters)) {
629
+			return new MultilingualTextValue([]);
630 630
 		}
631 631
 
632 632
 		$syntaxClarifications = $this->parseMultilingualTextParameter(
@@ -645,20 +645,20 @@  discard block
 block discarded – undo
645 645
 	 * @throws ConstraintParameterException if the parameter is invalid
646 646
 	 * @return string[]|null Context::TYPE_* constants
647 647
 	 */
648
-	public function parseConstraintScopeParameter( array $constraintParameters, $constraintTypeItemId, array $validScopes = null ) {
649
-		$constraintScopeId = $this->config->get( 'WBQualityConstraintsConstraintScopeId' );
650
-		$mainSnakId = $this->config->get( 'WBQualityConstraintsConstraintCheckedOnMainValueId' );
651
-		$qualifiersId = $this->config->get( 'WBQualityConstraintsConstraintCheckedOnQualifiersId' );
652
-		$referencesId = $this->config->get( 'WBQualityConstraintsConstraintCheckedOnReferencesId' );
648
+	public function parseConstraintScopeParameter(array $constraintParameters, $constraintTypeItemId, array $validScopes = null) {
649
+		$constraintScopeId = $this->config->get('WBQualityConstraintsConstraintScopeId');
650
+		$mainSnakId = $this->config->get('WBQualityConstraintsConstraintCheckedOnMainValueId');
651
+		$qualifiersId = $this->config->get('WBQualityConstraintsConstraintCheckedOnQualifiersId');
652
+		$referencesId = $this->config->get('WBQualityConstraintsConstraintCheckedOnReferencesId');
653 653
 
654
-		if ( !array_key_exists( $constraintScopeId, $constraintParameters ) ) {
654
+		if (!array_key_exists($constraintScopeId, $constraintParameters)) {
655 655
 			return null;
656 656
 		}
657 657
 
658 658
 		$contextTypes = [];
659
-		foreach ( $constraintParameters[$constraintScopeId] as $snakSerialization ) {
660
-			$scopeEntityId = $this->parseEntityIdParameter( $snakSerialization, $constraintScopeId );
661
-			switch ( $scopeEntityId->getSerialization() ) {
659
+		foreach ($constraintParameters[$constraintScopeId] as $snakSerialization) {
660
+			$scopeEntityId = $this->parseEntityIdParameter($snakSerialization, $constraintScopeId);
661
+			switch ($scopeEntityId->getSerialization()) {
662 662
 				case $mainSnakId:
663 663
 					$contextTypes[] = Context::TYPE_STATEMENT;
664 664
 					break;
@@ -670,13 +670,13 @@  discard block
 block discarded – undo
670 670
 					break;
671 671
 				default:
672 672
 					throw new ConstraintParameterException(
673
-						( new ViolationMessage( 'wbqc-violation-message-parameter-oneof' ) )
674
-							->withEntityId( new PropertyId( $constraintScopeId ), Role::CONSTRAINT_PARAMETER_PROPERTY )
673
+						(new ViolationMessage('wbqc-violation-message-parameter-oneof'))
674
+							->withEntityId(new PropertyId($constraintScopeId), Role::CONSTRAINT_PARAMETER_PROPERTY)
675 675
 							->withEntityIdList(
676 676
 								[
677
-									new ItemId( $mainSnakId ),
678
-									new ItemId( $qualifiersId ),
679
-									new ItemId( $referencesId ),
677
+									new ItemId($mainSnakId),
678
+									new ItemId($qualifiersId),
679
+									new ItemId($referencesId),
680 680
 								],
681 681
 								Role::CONSTRAINT_PARAMETER_VALUE
682 682
 							)
@@ -684,15 +684,15 @@  discard block
 block discarded – undo
684 684
 			}
685 685
 		}
686 686
 
687
-		if ( $validScopes !== null ) {
688
-			$invalidScopes = array_diff( $contextTypes, $validScopes );
689
-			if ( $invalidScopes !== [] ) {
690
-				$invalidScope = array_pop( $invalidScopes );
687
+		if ($validScopes !== null) {
688
+			$invalidScopes = array_diff($contextTypes, $validScopes);
689
+			if ($invalidScopes !== []) {
690
+				$invalidScope = array_pop($invalidScopes);
691 691
 				throw new ConstraintParameterException(
692
-					( new ViolationMessage( 'wbqc-violation-message-invalid-scope' ) )
693
-						->withConstraintScope( $invalidScope, Role::CONSTRAINT_PARAMETER_VALUE )
694
-						->withEntityId( new ItemId( $constraintTypeItemId ), Role::CONSTRAINT_TYPE_ITEM )
695
-						->withConstraintScopeList( $validScopes, Role::CONSTRAINT_PARAMETER_VALUE )
692
+					(new ViolationMessage('wbqc-violation-message-invalid-scope'))
693
+						->withConstraintScope($invalidScope, Role::CONSTRAINT_PARAMETER_VALUE)
694
+						->withEntityId(new ItemId($constraintTypeItemId), Role::CONSTRAINT_TYPE_ITEM)
695
+						->withConstraintScopeList($validScopes, Role::CONSTRAINT_PARAMETER_VALUE)
696 696
 				);
697 697
 			}
698 698
 		}
Please login to merge, or discard this patch.
src/ConstraintCheck/Helper/SparqlHelper.php 1 patch
Spacing   +143 added lines, -145 removed lines patch added patch discarded remove patch
@@ -107,18 +107,18 @@  discard block
 block discarded – undo
107 107
 		$this->violationMessageDeserializer = $violationMessageDeserializer;
108 108
 		$this->dataFactory = $dataFactory;
109 109
 
110
-		$this->entityPrefix = $rdfVocabulary->getNamespaceURI( RdfVocabulary::NS_ENTITY );
110
+		$this->entityPrefix = $rdfVocabulary->getNamespaceURI(RdfVocabulary::NS_ENTITY);
111 111
 		$this->prefixes = <<<EOT
112
-PREFIX wd: <{$rdfVocabulary->getNamespaceURI( RdfVocabulary::NS_ENTITY )}>
113
-PREFIX wds: <{$rdfVocabulary->getNamespaceURI( RdfVocabulary::NS_STATEMENT )}>
114
-PREFIX wdt: <{$rdfVocabulary->getNamespaceURI( RdfVocabulary::NSP_DIRECT_CLAIM )}>
115
-PREFIX wdv: <{$rdfVocabulary->getNamespaceURI( RdfVocabulary::NS_VALUE )}>
116
-PREFIX p: <{$rdfVocabulary->getNamespaceURI( RdfVocabulary::NSP_CLAIM )}>
117
-PREFIX ps: <{$rdfVocabulary->getNamespaceURI( RdfVocabulary::NSP_CLAIM_STATEMENT )}>
118
-PREFIX pq: <{$rdfVocabulary->getNamespaceURI( RdfVocabulary::NSP_QUALIFIER )}>
119
-PREFIX pqv: <{$rdfVocabulary->getNamespaceURI( RdfVocabulary::NSP_QUALIFIER_VALUE )}>
120
-PREFIX pr: <{$rdfVocabulary->getNamespaceURI( RdfVocabulary::NSP_REFERENCE )}>
121
-PREFIX prv: <{$rdfVocabulary->getNamespaceURI( RdfVocabulary::NSP_REFERENCE_VALUE )}>
112
+PREFIX wd: <{$rdfVocabulary->getNamespaceURI(RdfVocabulary::NS_ENTITY)}>
113
+PREFIX wds: <{$rdfVocabulary->getNamespaceURI(RdfVocabulary::NS_STATEMENT)}>
114
+PREFIX wdt: <{$rdfVocabulary->getNamespaceURI(RdfVocabulary::NSP_DIRECT_CLAIM)}>
115
+PREFIX wdv: <{$rdfVocabulary->getNamespaceURI(RdfVocabulary::NS_VALUE)}>
116
+PREFIX p: <{$rdfVocabulary->getNamespaceURI(RdfVocabulary::NSP_CLAIM)}>
117
+PREFIX ps: <{$rdfVocabulary->getNamespaceURI(RdfVocabulary::NSP_CLAIM_STATEMENT)}>
118
+PREFIX pq: <{$rdfVocabulary->getNamespaceURI(RdfVocabulary::NSP_QUALIFIER)}>
119
+PREFIX pqv: <{$rdfVocabulary->getNamespaceURI(RdfVocabulary::NSP_QUALIFIER_VALUE)}>
120
+PREFIX pr: <{$rdfVocabulary->getNamespaceURI(RdfVocabulary::NSP_REFERENCE)}>
121
+PREFIX prv: <{$rdfVocabulary->getNamespaceURI(RdfVocabulary::NSP_REFERENCE_VALUE)}>
122 122
 PREFIX wikibase: <http://wikiba.se/ontology#>
123 123
 PREFIX wikibase-beta: <http://wikiba.se/ontology-beta#>
124 124
 EOT;
@@ -133,21 +133,21 @@  discard block
 block discarded – undo
133 133
 	 * @return CachedBool
134 134
 	 * @throws SparqlHelperException if the query times out or some other error occurs
135 135
 	 */
136
-	public function hasType( $id, array $classes, $withInstance ) {
137
-		$instanceOfId = $this->config->get( 'WBQualityConstraintsInstanceOfId' );
138
-		$subclassOfId = $this->config->get( 'WBQualityConstraintsSubclassOfId' );
136
+	public function hasType($id, array $classes, $withInstance) {
137
+		$instanceOfId = $this->config->get('WBQualityConstraintsInstanceOfId');
138
+		$subclassOfId = $this->config->get('WBQualityConstraintsSubclassOfId');
139 139
 
140
-		$path = ( $withInstance ? "wdt:$instanceOfId/" : "" ) . "wdt:$subclassOfId*";
140
+		$path = ($withInstance ? "wdt:$instanceOfId/" : "")."wdt:$subclassOfId*";
141 141
 
142 142
 		$metadatas = [];
143 143
 
144
-		foreach ( array_chunk( $classes, 20 ) as $classesChunk ) {
145
-			$classesValues = implode( ' ', array_map(
146
-				function( $class ) {
147
-					return 'wd:' . $class;
144
+		foreach (array_chunk($classes, 20) as $classesChunk) {
145
+			$classesValues = implode(' ', array_map(
146
+				function($class) {
147
+					return 'wd:'.$class;
148 148
 				},
149 149
 				$classesChunk
150
-			) );
150
+			));
151 151
 
152 152
 			$query = <<<EOF
153 153
 ASK {
@@ -158,19 +158,19 @@  discard block
 block discarded – undo
158 158
 EOF;
159 159
 			// TODO hint:gearing is a workaround for T168973 and can hopefully be removed eventually
160 160
 
161
-			$result = $this->runQuery( $query );
161
+			$result = $this->runQuery($query);
162 162
 			$metadatas[] = $result->getMetadata();
163
-			if ( $result->getArray()['boolean'] ) {
163
+			if ($result->getArray()['boolean']) {
164 164
 				return new CachedBool(
165 165
 					true,
166
-					Metadata::merge( $metadatas )
166
+					Metadata::merge($metadatas)
167 167
 				);
168 168
 			}
169 169
 		}
170 170
 
171 171
 		return new CachedBool(
172 172
 			false,
173
-			Metadata::merge( $metadatas )
173
+			Metadata::merge($metadatas)
174 174
 		);
175 175
 	}
176 176
 
@@ -186,10 +186,10 @@  discard block
 block discarded – undo
186 186
 		$ignoreDeprecatedStatements
187 187
 	) {
188 188
 		$pid = $statement->getPropertyId()->serialize();
189
-		$guid = str_replace( '$', '-', $statement->getGuid() );
189
+		$guid = str_replace('$', '-', $statement->getGuid());
190 190
 
191 191
 		$deprecatedFilter = '';
192
-		if ( $ignoreDeprecatedStatements ) {
192
+		if ($ignoreDeprecatedStatements) {
193 193
 			$deprecatedFilter .= 'MINUS { ?otherStatement wikibase:rank wikibase:DeprecatedRank. }';
194 194
 			$deprecatedFilter .= 'MINUS { ?otherStatement wikibase-beta:rank wikibase-beta:DeprecatedRank. }';
195 195
 		}
@@ -209,9 +209,9 @@  discard block
 block discarded – undo
209 209
 LIMIT 10
210 210
 EOF;
211 211
 
212
-		$result = $this->runQuery( $query );
212
+		$result = $this->runQuery($query);
213 213
 
214
-		return $this->getOtherEntities( $result );
214
+		return $this->getOtherEntities($result);
215 215
 	}
216 216
 
217 217
 	/**
@@ -236,16 +236,15 @@  discard block
 block discarded – undo
236 236
 		$dataType = $this->propertyDataTypeLookup->getDataTypeIdForProperty(
237 237
 			$snak->getPropertyId()
238 238
 		);
239
-		list( $value, $isFullValue ) = $this->getRdfLiteral( $dataType, $dataValue );
240
-		if ( $isFullValue ) {
239
+		list($value, $isFullValue) = $this->getRdfLiteral($dataType, $dataValue);
240
+		if ($isFullValue) {
241 241
 			$prefix .= 'v';
242 242
 		}
243 243
 		$path = $type === Context::TYPE_QUALIFIER ?
244
-			"$prefix:$pid" :
245
-			"prov:wasDerivedFrom/$prefix:$pid";
244
+			"$prefix:$pid" : "prov:wasDerivedFrom/$prefix:$pid";
246 245
 
247 246
 		$deprecatedFilter = '';
248
-		if ( $ignoreDeprecatedStatements ) {
247
+		if ($ignoreDeprecatedStatements) {
249 248
 			$deprecatedFilter = <<< EOF
250 249
   MINUS { ?otherStatement wikibase:rank wikibase:DeprecatedRank. }
251 250
   MINUS { ?otherStatement wikibase-beta:rank wikibase-beta:DeprecatedRank. }
@@ -266,9 +265,9 @@  discard block
 block discarded – undo
266 265
 LIMIT 10
267 266
 EOF;
268 267
 
269
-		$result = $this->runQuery( $query );
268
+		$result = $this->runQuery($query);
270 269
 
271
-		return $this->getOtherEntities( $result );
270
+		return $this->getOtherEntities($result);
272 271
 	}
273 272
 
274 273
 	/**
@@ -278,8 +277,8 @@  discard block
 block discarded – undo
278 277
 	 *
279 278
 	 * @return string
280 279
 	 */
281
-	private function stringLiteral( $text ) {
282
-		return '"' . strtr( $text, [ '"' => '\\"', '\\' => '\\\\' ] ) . '"';
280
+	private function stringLiteral($text) {
281
+		return '"'.strtr($text, ['"' => '\\"', '\\' => '\\\\']).'"';
283 282
 	}
284 283
 
285 284
 	/**
@@ -289,17 +288,17 @@  discard block
 block discarded – undo
289 288
 	 *
290 289
 	 * @return CachedEntityIds
291 290
 	 */
292
-	private function getOtherEntities( CachedQueryResults $results ) {
293
-		return new CachedEntityIds( array_map(
294
-			function ( $resultBindings ) {
291
+	private function getOtherEntities(CachedQueryResults $results) {
292
+		return new CachedEntityIds(array_map(
293
+			function($resultBindings) {
295 294
 				$entityIRI = $resultBindings['otherEntity']['value'];
296
-				$entityPrefixLength = strlen( $this->entityPrefix );
297
-				if ( substr( $entityIRI, 0, $entityPrefixLength ) === $this->entityPrefix ) {
295
+				$entityPrefixLength = strlen($this->entityPrefix);
296
+				if (substr($entityIRI, 0, $entityPrefixLength) === $this->entityPrefix) {
298 297
 					try {
299 298
 						return $this->entityIdParser->parse(
300
-							substr( $entityIRI, $entityPrefixLength )
299
+							substr($entityIRI, $entityPrefixLength)
301 300
 						);
302
-					} catch ( EntityIdParsingException $e ) {
301
+					} catch (EntityIdParsingException $e) {
303 302
 						// fall through
304 303
 					}
305 304
 				}
@@ -307,7 +306,7 @@  discard block
 block discarded – undo
307 306
 				return null;
308 307
 			},
309 308
 			$results->getArray()['results']['bindings']
310
-		), $results->getMetadata() );
309
+		), $results->getMetadata());
311 310
 	}
312 311
 
313 312
 	// @codingStandardsIgnoreStart cyclomatic complexity of this function is too high
@@ -320,47 +319,47 @@  discard block
 block discarded – undo
320 319
 	 * @return array the literal or IRI as a string in SPARQL syntax,
321 320
 	 * and a boolean indicating whether it refers to a full value node or not
322 321
 	 */
323
-	private function getRdfLiteral( $dataType, DataValue $dataValue ) {
324
-		switch ( $dataType ) {
322
+	private function getRdfLiteral($dataType, DataValue $dataValue) {
323
+		switch ($dataType) {
325 324
 			case 'string':
326 325
 			case 'external-id':
327
-				return [ $this->stringLiteral( $dataValue->getValue() ), false ];
326
+				return [$this->stringLiteral($dataValue->getValue()), false];
328 327
 			case 'commonsMedia':
329
-				$url = $this->rdfVocabulary->getMediaFileURI( $dataValue->getValue() );
330
-				return [ '<' . $url . '>', false ];
328
+				$url = $this->rdfVocabulary->getMediaFileURI($dataValue->getValue());
329
+				return ['<'.$url.'>', false];
331 330
 			case 'geo-shape':
332
-				$url = $this->rdfVocabulary->getGeoShapeURI( $dataValue->getValue() );
333
-				return [ '<' . $url . '>', false ];
331
+				$url = $this->rdfVocabulary->getGeoShapeURI($dataValue->getValue());
332
+				return ['<'.$url.'>', false];
334 333
 			case 'tabular-data':
335
-				$url = $this->rdfVocabulary->getTabularDataURI( $dataValue->getValue() );
336
-				return [ '<' . $url . '>', false ];
334
+				$url = $this->rdfVocabulary->getTabularDataURI($dataValue->getValue());
335
+				return ['<'.$url.'>', false];
337 336
 			case 'url':
338 337
 				$url = $dataValue->getValue();
339
-				if ( !preg_match( '/^[^<>"{}\\\\|^`\\x00-\\x20]*$/D', $url ) ) {
338
+				if (!preg_match('/^[^<>"{}\\\\|^`\\x00-\\x20]*$/D', $url)) {
340 339
 					// not a valid URL for SPARQL (see SPARQL spec, production 139 IRIREF)
341 340
 					// such an URL should never reach us, so just throw
342
-					throw new InvalidArgumentException( 'invalid URL: ' . $url );
341
+					throw new InvalidArgumentException('invalid URL: '.$url);
343 342
 				}
344
-				return [ '<' . $url . '>', false ];
343
+				return ['<'.$url.'>', false];
345 344
 			case 'wikibase-item':
346 345
 			case 'wikibase-property':
347 346
 				/** @var EntityIdValue $dataValue */
348
-				return [ 'wd:' . $dataValue->getEntityId()->getSerialization(), false ];
347
+				return ['wd:'.$dataValue->getEntityId()->getSerialization(), false];
349 348
 			case 'monolingualtext':
350 349
 				/** @var MonolingualTextValue $dataValue */
351 350
 				$lang = $dataValue->getLanguageCode();
352
-				if ( !preg_match( '/^[a-zA-Z]+(-[a-zA-Z0-9]+)*$/D', $lang ) ) {
351
+				if (!preg_match('/^[a-zA-Z]+(-[a-zA-Z0-9]+)*$/D', $lang)) {
353 352
 					// not a valid language tag for SPARQL (see SPARQL spec, production 145 LANGTAG)
354 353
 					// such a language tag should never reach us, so just throw
355
-					throw new InvalidArgumentException( 'invalid language tag: ' . $lang );
354
+					throw new InvalidArgumentException('invalid language tag: '.$lang);
356 355
 				}
357
-				return [ $this->stringLiteral( $dataValue->getText() ) . '@' . $lang, false ];
356
+				return [$this->stringLiteral($dataValue->getText()).'@'.$lang, false];
358 357
 			case 'globe-coordinate':
359 358
 			case 'quantity':
360 359
 			case 'time':
361
-				return [ 'wdv:' . $dataValue->getHash(), true ];
360
+				return ['wdv:'.$dataValue->getHash(), true];
362 361
 			default:
363
-				throw new InvalidArgumentException( 'unknown data type: ' . $dataType );
362
+				throw new InvalidArgumentException('unknown data type: '.$dataType);
364 363
 		}
365 364
 	}
366 365
 	// @codingStandardsIgnoreEnd
@@ -373,45 +372,45 @@  discard block
 block discarded – undo
373 372
 	 * @throws SparqlHelperException if the query times out or some other error occurs
374 373
 	 * @throws ConstraintParameterException if the $regex is invalid
375 374
 	 */
376
-	public function matchesRegularExpression( $text, $regex ) {
375
+	public function matchesRegularExpression($text, $regex) {
377 376
 		// caching wrapper around matchesRegularExpressionWithSparql
378 377
 
379
-		$textHash = hash( 'sha256', $text );
378
+		$textHash = hash('sha256', $text);
380 379
 		$cacheKey = $this->cache->makeKey(
381 380
 			'WikibaseQualityConstraints', // extension
382 381
 			'regex', // action
383 382
 			'WDQS-Java', // regex flavor
384
-			hash( 'sha256', $regex )
383
+			hash('sha256', $regex)
385 384
 		);
386
-		$cacheMapSize = $this->config->get( 'WBQualityConstraintsFormatCacheMapSize' );
385
+		$cacheMapSize = $this->config->get('WBQualityConstraintsFormatCacheMapSize');
387 386
 
388 387
 		$cacheMapArray = $this->cache->getWithSetCallback(
389 388
 			$cacheKey,
390 389
 			WANObjectCache::TTL_DAY,
391
-			function( $cacheMapArray ) use ( $text, $regex, $textHash, $cacheMapSize ) {
390
+			function($cacheMapArray) use ($text, $regex, $textHash, $cacheMapSize) {
392 391
 				// Initialize the cache map if not set
393
-				if ( $cacheMapArray === false ) {
392
+				if ($cacheMapArray === false) {
394 393
 					$key = 'wikibase.quality.constraints.regex.cache.refresh.init';
395
-					$this->dataFactory->increment( $key );
394
+					$this->dataFactory->increment($key);
396 395
 					return [];
397 396
 				}
398 397
 
399 398
 				$key = 'wikibase.quality.constraints.regex.cache.refresh';
400
-				$this->dataFactory->increment( $key );
401
-				$cacheMapArray = $this->cleanupConstraintParameterExceptions( $cacheMapArray );
402
-				$cacheMap = MapCacheLRU::newFromArray( $cacheMapArray, $cacheMapSize );
403
-				if ( $cacheMap->has( $textHash ) ) {
399
+				$this->dataFactory->increment($key);
400
+				$cacheMapArray = $this->cleanupConstraintParameterExceptions($cacheMapArray);
401
+				$cacheMap = MapCacheLRU::newFromArray($cacheMapArray, $cacheMapSize);
402
+				if ($cacheMap->has($textHash)) {
404 403
 					$key = 'wikibase.quality.constraints.regex.cache.refresh.hit';
405
-					$this->dataFactory->increment( $key );
406
-					$cacheMap->get( $textHash ); // ping cache
404
+					$this->dataFactory->increment($key);
405
+					$cacheMap->get($textHash); // ping cache
407 406
 				} else {
408 407
 					$key = 'wikibase.quality.constraints.regex.cache.refresh.miss';
409
-					$this->dataFactory->increment( $key );
408
+					$this->dataFactory->increment($key);
410 409
 					try {
411
-						$matches = $this->matchesRegularExpressionWithSparql( $text, $regex );
412
-					} catch ( ConstraintParameterException $e ) {
413
-						$matches = $this->serializeConstraintParameterException( $e );
414
-					} catch ( SparqlHelperException $e ) {
410
+						$matches = $this->matchesRegularExpressionWithSparql($text, $regex);
411
+					} catch (ConstraintParameterException $e) {
412
+						$matches = $this->serializeConstraintParameterException($e);
413
+					} catch (SparqlHelperException $e) {
415 414
 						// don’t cache this
416 415
 						return $cacheMap->toArray();
417 416
 					}
@@ -435,36 +434,36 @@  discard block
 block discarded – undo
435 434
 			]
436 435
 		);
437 436
 
438
-		if ( isset( $cacheMapArray[$textHash] ) ) {
437
+		if (isset($cacheMapArray[$textHash])) {
439 438
 			$key = 'wikibase.quality.constraints.regex.cache.hit';
440
-			$this->dataFactory->increment( $key );
439
+			$this->dataFactory->increment($key);
441 440
 			$matches = $cacheMapArray[$textHash];
442
-			if ( is_bool( $matches ) ) {
441
+			if (is_bool($matches)) {
443 442
 				return $matches;
444
-			} elseif ( is_array( $matches ) &&
445
-				$matches['type'] == ConstraintParameterException::class ) {
446
-				throw $this->deserializeConstraintParameterException( $matches );
443
+			} elseif (is_array($matches) &&
444
+				$matches['type'] == ConstraintParameterException::class) {
445
+				throw $this->deserializeConstraintParameterException($matches);
447 446
 			} else {
448 447
 				throw new MWException(
449
-					'Value of unknown type in object cache (' .
450
-					'cache key: ' . $cacheKey . ', ' .
451
-					'cache map key: ' . $textHash . ', ' .
452
-					'value type: ' . gettype( $matches ) . ')'
448
+					'Value of unknown type in object cache ('.
449
+					'cache key: '.$cacheKey.', '.
450
+					'cache map key: '.$textHash.', '.
451
+					'value type: '.gettype($matches).')'
453 452
 				);
454 453
 			}
455 454
 		} else {
456 455
 			$key = 'wikibase.quality.constraints.regex.cache.miss';
457
-			$this->dataFactory->increment( $key );
458
-			return $this->matchesRegularExpressionWithSparql( $text, $regex );
456
+			$this->dataFactory->increment($key);
457
+			return $this->matchesRegularExpressionWithSparql($text, $regex);
459 458
 		}
460 459
 	}
461 460
 
462
-	private function serializeConstraintParameterException( ConstraintParameterException $cpe ) {
461
+	private function serializeConstraintParameterException(ConstraintParameterException $cpe) {
463 462
 		$message = $cpe->getViolationMessage();
464
-		if ( $message instanceof ViolationMessage ) {
463
+		if ($message instanceof ViolationMessage) {
465 464
 			return [
466 465
 				'type' => ConstraintParameterException::class,
467
-				'violationMessage' => $this->violationMessageSerializer->serialize( $message ),
466
+				'violationMessage' => $this->violationMessageSerializer->serialize($message),
468 467
 			];
469 468
 		} else {
470 469
 			return [
@@ -474,19 +473,19 @@  discard block
 block discarded – undo
474 473
 		}
475 474
 	}
476 475
 
477
-	private function isViolationMessageSerialization( array $serialization ) {
478
-		return array_key_exists( 'violationMessage', $serialization );
476
+	private function isViolationMessageSerialization(array $serialization) {
477
+		return array_key_exists('violationMessage', $serialization);
479 478
 	}
480 479
 
481
-	private function deserializeConstraintParameterException( array $serialization ) {
482
-		if ( $this->isViolationMessageSerialization( $serialization ) ) {
480
+	private function deserializeConstraintParameterException(array $serialization) {
481
+		if ($this->isViolationMessageSerialization($serialization)) {
483 482
 			$message = $this->violationMessageDeserializer->deserialize(
484 483
 				$serialization['violationMessage']
485 484
 			);
486 485
 		} else {
487 486
 			$message = $serialization['message'];
488 487
 		}
489
-		return new ConstraintParameterException( $message );
488
+		return new ConstraintParameterException($message);
490 489
 	}
491 490
 
492 491
 	/**
@@ -496,13 +495,13 @@  discard block
 block discarded – undo
496 495
 	 * @param array $cacheMapArray {@link MapCacheLRU::toArray}
497 496
 	 * @return array
498 497
 	 */
499
-	private function cleanupConstraintParameterExceptions( array $cacheMapArray ) {
498
+	private function cleanupConstraintParameterExceptions(array $cacheMapArray) {
500 499
 		$cleanedCacheMapArray = [];
501
-		foreach ( $cacheMapArray as $key => $value ) {
500
+		foreach ($cacheMapArray as $key => $value) {
502 501
 			if (
503
-				is_array( $value ) &&
502
+				is_array($value) &&
504 503
 				$value['type'] === ConstraintParameterException::class &&
505
-				!$this->isViolationMessageSerialization( $value )
504
+				!$this->isViolationMessageSerialization($value)
506 505
 			) {
507 506
 				continue;
508 507
 			}
@@ -522,25 +521,25 @@  discard block
 block discarded – undo
522 521
 	 * @throws SparqlHelperException if the query times out or some other error occurs
523 522
 	 * @throws ConstraintParameterException if the $regex is invalid
524 523
 	 */
525
-	public function matchesRegularExpressionWithSparql( $text, $regex ) {
526
-		$textStringLiteral = $this->stringLiteral( $text );
527
-		$regexStringLiteral = $this->stringLiteral( '^' . $regex . '$' );
524
+	public function matchesRegularExpressionWithSparql($text, $regex) {
525
+		$textStringLiteral = $this->stringLiteral($text);
526
+		$regexStringLiteral = $this->stringLiteral('^'.$regex.'$');
528 527
 
529 528
 		$query = <<<EOF
530 529
 SELECT (REGEX($textStringLiteral, $regexStringLiteral) AS ?matches) {}
531 530
 EOF;
532 531
 
533
-		$result = $this->runQuery( $query );
532
+		$result = $this->runQuery($query);
534 533
 
535 534
 		$vars = $result->getArray()['results']['bindings'][0];
536
-		if ( array_key_exists( 'matches', $vars ) ) {
535
+		if (array_key_exists('matches', $vars)) {
537 536
 			// true or false ⇒ regex okay, text matches or not
538 537
 			return $vars['matches']['value'] === 'true';
539 538
 		} else {
540 539
 			// empty result: regex broken
541 540
 			throw new ConstraintParameterException(
542
-				( new ViolationMessage( 'wbqc-violation-message-parameter-regex' ) )
543
-					->withInlineCode( $regex, Role::CONSTRAINT_PARAMETER_VALUE )
541
+				(new ViolationMessage('wbqc-violation-message-parameter-regex'))
542
+					->withInlineCode($regex, Role::CONSTRAINT_PARAMETER_VALUE)
544 543
 			);
545 544
 		}
546 545
 	}
@@ -552,14 +551,14 @@  discard block
 block discarded – undo
552 551
 	 *
553 552
 	 * @return boolean
554 553
 	 */
555
-	public function isTimeout( $responseContent ) {
556
-		$timeoutRegex = implode( '|', array_map(
557
-			function ( $fqn ) {
558
-				return preg_quote( $fqn, '/' );
554
+	public function isTimeout($responseContent) {
555
+		$timeoutRegex = implode('|', array_map(
556
+			function($fqn) {
557
+				return preg_quote($fqn, '/');
559 558
 			},
560
-			$this->config->get( 'WBQualityConstraintsSparqlTimeoutExceptionClasses' )
561
-		) );
562
-		return (bool)preg_match( '/' . $timeoutRegex . '/', $responseContent );
559
+			$this->config->get('WBQualityConstraintsSparqlTimeoutExceptionClasses')
560
+		));
561
+		return (bool) preg_match('/'.$timeoutRegex.'/', $responseContent);
563 562
 	}
564 563
 
565 564
 	/**
@@ -571,17 +570,17 @@  discard block
 block discarded – undo
571 570
 	 * @return integer|boolean the max-age (in seconds)
572 571
 	 * or a plain boolean if no max-age can be determined
573 572
 	 */
574
-	public function getCacheMaxAge( $responseHeaders ) {
573
+	public function getCacheMaxAge($responseHeaders) {
575 574
 		if (
576
-			array_key_exists( 'x-cache-status', $responseHeaders ) &&
577
-			preg_match( '/^hit(?:-.*)?$/', $responseHeaders['x-cache-status'][0] )
575
+			array_key_exists('x-cache-status', $responseHeaders) &&
576
+			preg_match('/^hit(?:-.*)?$/', $responseHeaders['x-cache-status'][0])
578 577
 		) {
579 578
 			$maxage = [];
580 579
 			if (
581
-				array_key_exists( 'cache-control', $responseHeaders ) &&
582
-				preg_match( '/\bmax-age=(\d+)\b/', $responseHeaders['cache-control'][0], $maxage )
580
+				array_key_exists('cache-control', $responseHeaders) &&
581
+				preg_match('/\bmax-age=(\d+)\b/', $responseHeaders['cache-control'][0], $maxage)
583 582
 			) {
584
-				return intval( $maxage[1] );
583
+				return intval($maxage[1]);
585 584
 			} else {
586 585
 				return true;
587 586
 			}
@@ -599,59 +598,58 @@  discard block
 block discarded – undo
599 598
 	 *
600 599
 	 * @throws SparqlHelperException if the query times out or some other error occurs
601 600
 	 */
602
-	public function runQuery( $query ) {
601
+	public function runQuery($query) {
603 602
 
604
-		$endpoint = $this->config->get( 'WBQualityConstraintsSparqlEndpoint' );
605
-		$maxQueryTimeMillis = $this->config->get( 'WBQualityConstraintsSparqlMaxMillis' );
606
-		$url = $endpoint . '?' . http_build_query(
603
+		$endpoint = $this->config->get('WBQualityConstraintsSparqlEndpoint');
604
+		$maxQueryTimeMillis = $this->config->get('WBQualityConstraintsSparqlMaxMillis');
605
+		$url = $endpoint.'?'.http_build_query(
607 606
 			[
608
-				'query' => "#wbqc\n" . $this->prefixes . $query,
607
+				'query' => "#wbqc\n".$this->prefixes.$query,
609 608
 				'format' => 'json',
610 609
 				'maxQueryTimeMillis' => $maxQueryTimeMillis,
611 610
 			],
612
-			null, ini_get( 'arg_separator.output' ),
611
+			null, ini_get('arg_separator.output'),
613 612
 			// encode spaces with %20, not +
614 613
 			PHP_QUERY_RFC3986
615 614
 		);
616 615
 
617 616
 		$options = [
618 617
 			'method' => 'GET',
619
-			'timeout' => (int)round( ( $maxQueryTimeMillis + 1000 ) / 1000 ),
618
+			'timeout' => (int) round(($maxQueryTimeMillis + 1000) / 1000),
620 619
 			'connectTimeout' => 'default',
621 620
 		];
622
-		$request = MWHttpRequest::factory( $url, $options );
623
-		$startTime = microtime( true );
621
+		$request = MWHttpRequest::factory($url, $options);
622
+		$startTime = microtime(true);
624 623
 		$status = $request->execute();
625
-		$endTime = microtime( true );
624
+		$endTime = microtime(true);
626 625
 		$this->dataFactory->timing(
627 626
 			'wikibase.quality.constraints.sparql.timing',
628
-			( $endTime - $startTime ) * 1000
627
+			($endTime - $startTime) * 1000
629 628
 		);
630 629
 
631
-		$maxAge = $this->getCacheMaxAge( $request->getResponseHeaders() );
632
-		if ( $maxAge ) {
633
-			$this->dataFactory->increment( 'wikibase.quality.constraints.sparql.cached' );
630
+		$maxAge = $this->getCacheMaxAge($request->getResponseHeaders());
631
+		if ($maxAge) {
632
+			$this->dataFactory->increment('wikibase.quality.constraints.sparql.cached');
634 633
 		}
635 634
 
636
-		if ( $status->isOK() ) {
635
+		if ($status->isOK()) {
637 636
 			$json = $request->getContent();
638
-			$arr = json_decode( $json, true );
637
+			$arr = json_decode($json, true);
639 638
 			return new CachedQueryResults(
640 639
 				$arr,
641 640
 				Metadata::ofCachingMetadata(
642 641
 					$maxAge ?
643
-						CachingMetadata::ofMaximumAgeInSeconds( $maxAge ) :
644
-						CachingMetadata::fresh()
642
+						CachingMetadata::ofMaximumAgeInSeconds($maxAge) : CachingMetadata::fresh()
645 643
 				)
646 644
 			);
647 645
 		} else {
648
-			$this->dataFactory->increment( 'wikibase.quality.constraints.sparql.error' );
646
+			$this->dataFactory->increment('wikibase.quality.constraints.sparql.error');
649 647
 
650 648
 			$this->dataFactory->increment(
651 649
 				"wikibase.quality.constraints.sparql.error.http.{$request->getStatus()}"
652 650
 			);
653 651
 
654
-			if ( $this->isTimeout( $request->getContent() ) ) {
652
+			if ($this->isTimeout($request->getContent())) {
655 653
 				$this->dataFactory->increment(
656 654
 					'wikibase.quality.constraints.sparql.error.timeout'
657 655
 				);
Please login to merge, or discard this patch.
src/ConstraintParameterRenderer.php 1 patch
Spacing   +30 added lines, -30 removed lines patch added patch discarded remove patch
@@ -62,20 +62,20 @@  discard block
 block discarded – undo
62 62
 	 *
63 63
 	 * @return string HTML
64 64
 	 */
65
-	public function formatValue( $value ) {
66
-		if ( is_string( $value ) ) {
65
+	public function formatValue($value) {
66
+		if (is_string($value)) {
67 67
 			// Cases like 'Format' 'pattern' or 'minimum'/'maximum' values, which we have stored as
68 68
 			// strings
69
-			return htmlspecialchars( $value );
70
-		} elseif ( $value instanceof EntityId ) {
69
+			return htmlspecialchars($value);
70
+		} elseif ($value instanceof EntityId) {
71 71
 			// Cases like 'Conflicts with' 'property', to which we can link
72
-			return $this->formatEntityId( $value );
73
-		} elseif ( $value instanceof ItemIdSnakValue ) {
72
+			return $this->formatEntityId($value);
73
+		} elseif ($value instanceof ItemIdSnakValue) {
74 74
 			// Cases like EntityId but can also be somevalue or novalue
75
-			return $this->formatItemIdSnakValue( $value );
75
+			return $this->formatItemIdSnakValue($value);
76 76
 		} else {
77 77
 			// Cases where we format a DataValue
78
-			return $this->formatDataValue( $value );
78
+			return $this->formatDataValue($value);
79 79
 		}
80 80
 	}
81 81
 
@@ -86,23 +86,23 @@  discard block
 block discarded – undo
86 86
 	 *
87 87
 	 * @return string HTML
88 88
 	 */
89
-	public function formatParameters( $parameters ) {
90
-		if ( $parameters === null || count( $parameters ) == 0 ) {
89
+	public function formatParameters($parameters) {
90
+		if ($parameters === null || count($parameters) == 0) {
91 91
 			return null;
92 92
 		}
93 93
 
94
-		$valueFormatter = function ( $value ) {
95
-			return $this->formatValue( $value );
94
+		$valueFormatter = function($value) {
95
+			return $this->formatValue($value);
96 96
 		};
97 97
 
98 98
 		$formattedParameters = [];
99
-		foreach ( $parameters as $parameterName => $parameterValue ) {
100
-			$formattedParameterValues = implode( ', ',
101
-				$this->limitArrayLength( array_map( $valueFormatter, $parameterValue ) ) );
102
-			$formattedParameters[] = sprintf( '%s: %s', $parameterName, $formattedParameterValues );
99
+		foreach ($parameters as $parameterName => $parameterValue) {
100
+			$formattedParameterValues = implode(', ',
101
+				$this->limitArrayLength(array_map($valueFormatter, $parameterValue)));
102
+			$formattedParameters[] = sprintf('%s: %s', $parameterName, $formattedParameterValues);
103 103
 		}
104 104
 
105
-		return implode( '; ', $formattedParameters );
105
+		return implode('; ', $formattedParameters);
106 106
 	}
107 107
 
108 108
 	/**
@@ -112,10 +112,10 @@  discard block
 block discarded – undo
112 112
 	 *
113 113
 	 * @return array
114 114
 	 */
115
-	private function limitArrayLength( array $array ) {
116
-		if ( count( $array ) > self::MAX_PARAMETER_ARRAY_LENGTH ) {
117
-			$array = array_slice( $array, 0, self::MAX_PARAMETER_ARRAY_LENGTH );
118
-			array_push( $array, '...' );
115
+	private function limitArrayLength(array $array) {
116
+		if (count($array) > self::MAX_PARAMETER_ARRAY_LENGTH) {
117
+			$array = array_slice($array, 0, self::MAX_PARAMETER_ARRAY_LENGTH);
118
+			array_push($array, '...');
119 119
 		}
120 120
 
121 121
 		return $array;
@@ -125,16 +125,16 @@  discard block
 block discarded – undo
125 125
 	 * @param DataValue $value
126 126
 	 * @return string HTML
127 127
 	 */
128
-	public function formatDataValue( DataValue $value ) {
129
-		return $this->dataValueFormatter->format( $value );
128
+	public function formatDataValue(DataValue $value) {
129
+		return $this->dataValueFormatter->format($value);
130 130
 	}
131 131
 
132 132
 	/**
133 133
 	 * @param EntityId $entityId
134 134
 	 * @return string HTML
135 135
 	 */
136
-	public function formatEntityId( EntityId $entityId ) {
137
-		return $this->entityIdLabelFormatter->formatEntityId( $entityId );
136
+	public function formatEntityId(EntityId $entityId) {
137
+		return $this->entityIdLabelFormatter->formatEntityId($entityId);
138 138
 	}
139 139
 
140 140
 	/**
@@ -143,14 +143,14 @@  discard block
 block discarded – undo
143 143
 	 * @param ItemIdSnakValue $value
144 144
 	 * @return string HTML
145 145
 	 */
146
-	public function formatItemIdSnakValue( ItemIdSnakValue $value ) {
147
-		switch ( true ) {
146
+	public function formatItemIdSnakValue(ItemIdSnakValue $value) {
147
+		switch (true) {
148 148
 			case $value->isValue():
149
-				return $this->formatEntityId( $value->getItemId() );
149
+				return $this->formatEntityId($value->getItemId());
150 150
 			case $value->isSomeValue():
151
-				return wfMessage( 'wikibase-snakview-snaktypeselector-somevalue' )->escaped();
151
+				return wfMessage('wikibase-snakview-snaktypeselector-somevalue')->escaped();
152 152
 			case $value->isNoValue():
153
-				return wfMessage( 'wikibase-snakview-snaktypeselector-novalue' )->escaped();
153
+				return wfMessage('wikibase-snakview-snaktypeselector-novalue')->escaped();
154 154
 		}
155 155
 	}
156 156
 
Please login to merge, or discard this patch.