Completed
Pull Request — master (#81)
by
unknown
31s
created
src/Api/ExpiryLock.php 1 patch
Spacing   +19 added lines, -19 removed lines patch added patch discarded remove patch
@@ -26,7 +26,7 @@  discard block
 block discarded – undo
26 26
 	/**
27 27
 	 * @param BagOStuff $cache
28 28
 	 */
29
-	public function __construct( BagOStuff $cache ) {
29
+	public function __construct(BagOStuff $cache) {
30 30
 		$this->cache = $cache;
31 31
 	}
32 32
 
@@ -37,17 +37,17 @@  discard block
 block discarded – undo
37 37
 	 *
38 38
 	 * @throws \Wikimedia\Assert\ParameterTypeException
39 39
 	 */
40
-	private function makeKey( $id ) {
41
-		if ( empty( trim( $id ) ) ) {
42
-			throw new ParameterTypeException( '$id', 'non-empty string' );
40
+	private function makeKey($id) {
41
+		if (empty(trim($id))) {
42
+			throw new ParameterTypeException('$id', 'non-empty string');
43 43
 		}
44 44
 
45
-		Assert::parameterType( 'string', $id, '$id' );
45
+		Assert::parameterType('string', $id, '$id');
46 46
 
47 47
 		return $this->cache->makeKey(
48 48
 			'WikibaseQualityConstraints',
49 49
 			'ExpiryLock',
50
-			(string)$id
50
+			(string) $id
51 51
 		);
52 52
 	}
53 53
 
@@ -59,15 +59,15 @@  discard block
 block discarded – undo
59 59
 	 *
60 60
 	 * @throws \Wikimedia\Assert\ParameterTypeException
61 61
 	 */
62
-	public function lock( $id, ConvertibleTimestamp $expiryTimestamp ) {
62
+	public function lock($id, ConvertibleTimestamp $expiryTimestamp) {
63 63
 
64
-		$cacheId = $this->makeKey( $id );
64
+		$cacheId = $this->makeKey($id);
65 65
 
66
-		if ( !$this->isLockedInternal( $cacheId ) ) {
66
+		if (!$this->isLockedInternal($cacheId)) {
67 67
 			return $this->cache->set(
68 68
 				$cacheId,
69
-				$expiryTimestamp->getTimestamp( TS_UNIX ),
70
-				(int)$expiryTimestamp->getTimestamp( TS_UNIX )
69
+				$expiryTimestamp->getTimestamp(TS_UNIX),
70
+				(int) $expiryTimestamp->getTimestamp(TS_UNIX)
71 71
 			);
72 72
 		} else {
73 73
 			return false;
@@ -81,20 +81,20 @@  discard block
 block discarded – undo
81 81
 	 *
82 82
 	 * @throws \Wikimedia\Assert\ParameterTypeException
83 83
 	 */
84
-	private function isLockedInternal( $cacheId ) {
85
-		$expiryTime = $this->cache->get( $cacheId );
86
-		if ( !$expiryTime ) {
84
+	private function isLockedInternal($cacheId) {
85
+		$expiryTime = $this->cache->get($cacheId);
86
+		if (!$expiryTime) {
87 87
 			return false;
88 88
 		}
89 89
 
90 90
 		try {
91
-			$lockExpiryTimeStamp = new ConvertibleTimestamp( $expiryTime );
92
-		} catch ( TimestampException $exception ) {
91
+			$lockExpiryTimeStamp = new ConvertibleTimestamp($expiryTime);
92
+		} catch (TimestampException $exception) {
93 93
 			return false;
94 94
 		}
95 95
 
96 96
 		$now = new ConvertibleTimestamp();
97
-		if ( $now->timestamp < $lockExpiryTimeStamp->timestamp ) {
97
+		if ($now->timestamp < $lockExpiryTimeStamp->timestamp) {
98 98
 			return true;
99 99
 		} else {
100 100
 			return false;
@@ -108,8 +108,8 @@  discard block
 block discarded – undo
108 108
 	 *
109 109
 	 * @throws \Wikimedia\Assert\ParameterTypeException
110 110
 	 */
111
-	public function isLocked( $id ) {
112
-		return $this->isLockedInternal( $this->makeKey( $id ) );
111
+	public function isLocked($id) {
112
+		return $this->isLockedInternal($this->makeKey($id));
113 113
 	}
114 114
 
115 115
 }
Please login to merge, or discard this patch.
src/CachingConstraintLookup.php 1 patch
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -26,7 +26,7 @@  discard block
 block discarded – undo
26 26
 	/**
27 27
 	 * @param ConstraintLookup $lookup The lookup to which all queries are delegated.
28 28
 	 */
29
-	public function __construct( ConstraintLookup $lookup ) {
29
+	public function __construct(ConstraintLookup $lookup) {
30 30
 		$this->lookup = $lookup;
31 31
 	}
32 32
 
@@ -35,10 +35,10 @@  discard block
 block discarded – undo
35 35
 	 *
36 36
 	 * @return Constraint[]
37 37
 	 */
38
-	public function queryConstraintsForProperty( NumericPropertyId $propertyId ) {
38
+	public function queryConstraintsForProperty(NumericPropertyId $propertyId) {
39 39
 		$id = $propertyId->getSerialization();
40
-		if ( !array_key_exists( $id, $this->cache ) ) {
41
-			$this->cache[$id] = $this->lookup->queryConstraintsForProperty( $propertyId );
40
+		if (!array_key_exists($id, $this->cache)) {
41
+			$this->cache[$id] = $this->lookup->queryConstraintsForProperty($propertyId);
42 42
 		}
43 43
 		return $this->cache[$id];
44 44
 	}
Please login to merge, or discard this patch.
src/ConstraintLookup.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -14,6 +14,6 @@
 block discarded – undo
14 14
 	 *
15 15
 	 * @return Constraint[]
16 16
 	 */
17
-	public function queryConstraintsForProperty( NumericPropertyId $propertyId );
17
+	public function queryConstraintsForProperty(NumericPropertyId $propertyId);
18 18
 
19 19
 }
Please login to merge, or discard this patch.
src/Job/UpdateConstraintsTableJob.php 1 patch
Spacing   +28 added lines, -28 removed lines patch added patch discarded remove patch
@@ -38,8 +38,8 @@  discard block
 block discarded – undo
38 38
 	 */
39 39
 	private const BATCH_SIZE = 50;
40 40
 
41
-	public static function newFromGlobalState( Title $title, array $params ) {
42
-		Assert::parameterType( 'string', $params['propertyId'], '$params["propertyId"]' );
41
+	public static function newFromGlobalState(Title $title, array $params) {
42
+		Assert::parameterType('string', $params['propertyId'], '$params["propertyId"]');
43 43
 		$services = MediaWikiServices::getInstance();
44 44
 		return new UpdateConstraintsTableJob(
45 45
 			$title,
@@ -49,8 +49,8 @@  discard block
 block discarded – undo
49 49
 			$services->getMainConfig(),
50 50
 			ConstraintsServices::getConstraintStore(),
51 51
 			$services->getDBLoadBalancerFactory(),
52
-			WikibaseRepo::getStore()->getEntityRevisionLookup( Store::LOOKUP_CACHING_DISABLED ),
53
-			WikibaseRepo::getBaseDataModelSerializerFactory( $services )
52
+			WikibaseRepo::getStore()->getEntityRevisionLookup(Store::LOOKUP_CACHING_DISABLED),
53
+			WikibaseRepo::getBaseDataModelSerializerFactory($services)
54 54
 				->newSnakSerializer(),
55 55
 			$services->getJobQueueGroup()
56 56
 		);
@@ -118,7 +118,7 @@  discard block
 block discarded – undo
118 118
 		Serializer $snakSerializer,
119 119
 		JobQueueGroup $jobQueueGroup
120 120
 	) {
121
-		parent::__construct( 'constraintsTableUpdate', $title, $params );
121
+		parent::__construct('constraintsTableUpdate', $title, $params);
122 122
 
123 123
 		$this->propertyId = $propertyId;
124 124
 		$this->revisionId = $revisionId;
@@ -130,11 +130,11 @@  discard block
 block discarded – undo
130 130
 		$this->jobQueueGroup = $jobQueueGroup;
131 131
 	}
132 132
 
133
-	public function extractParametersFromQualifiers( SnakList $qualifiers ) {
133
+	public function extractParametersFromQualifiers(SnakList $qualifiers) {
134 134
 		$parameters = [];
135
-		foreach ( $qualifiers as $qualifier ) {
135
+		foreach ($qualifiers as $qualifier) {
136 136
 			$qualifierId = $qualifier->getPropertyId()->getSerialization();
137
-			$paramSerialization = $this->snakSerializer->serialize( $qualifier );
137
+			$paramSerialization = $this->snakSerializer->serialize($qualifier);
138 138
 			$parameters[$qualifierId][] = $paramSerialization;
139 139
 		}
140 140
 		return $parameters;
@@ -151,7 +151,7 @@  discard block
 block discarded – undo
151 151
 		'@phan-var \Wikibase\DataModel\Entity\EntityIdValue $dataValue';
152 152
 		$entityId = $dataValue->getEntityId();
153 153
 		$constraintTypeQid = $entityId->getSerialization();
154
-		$parameters = $this->extractParametersFromQualifiers( $constraintStatement->getQualifiers() );
154
+		$parameters = $this->extractParametersFromQualifiers($constraintStatement->getQualifiers());
155 155
 		return new Constraint(
156 156
 			$constraintId,
157 157
 			$propertyId,
@@ -166,25 +166,25 @@  discard block
 block discarded – undo
166 166
 		NumericPropertyId $propertyConstraintPropertyId
167 167
 	) {
168 168
 		$constraintsStatements = $property->getStatements()
169
-			->getByPropertyId( $propertyConstraintPropertyId )
170
-			->getByRank( [ Statement::RANK_PREFERRED, Statement::RANK_NORMAL ] );
169
+			->getByPropertyId($propertyConstraintPropertyId)
170
+			->getByRank([Statement::RANK_PREFERRED, Statement::RANK_NORMAL]);
171 171
 		$constraints = [];
172
-		foreach ( $constraintsStatements->getIterator() as $constraintStatement ) {
172
+		foreach ($constraintsStatements->getIterator() as $constraintStatement) {
173 173
 			// @phan-suppress-next-line PhanTypeMismatchArgumentSuperType
174
-			$constraints[] = $this->extractConstraintFromStatement( $property->getId(), $constraintStatement );
175
-			if ( count( $constraints ) >= self::BATCH_SIZE ) {
176
-				$constraintStore->insertBatch( $constraints );
174
+			$constraints[] = $this->extractConstraintFromStatement($property->getId(), $constraintStatement);
175
+			if (count($constraints) >= self::BATCH_SIZE) {
176
+				$constraintStore->insertBatch($constraints);
177 177
 				// interrupt transaction and wait for replication
178
-				$connection = $this->lbFactory->getMainLB()->getConnection( DB_PRIMARY );
179
-				$connection->endAtomic( __CLASS__ );
180
-				if ( !$connection->explicitTrxActive() ) {
178
+				$connection = $this->lbFactory->getMainLB()->getConnection(DB_PRIMARY);
179
+				$connection->endAtomic(__CLASS__);
180
+				if (!$connection->explicitTrxActive()) {
181 181
 					$this->lbFactory->waitForReplication();
182 182
 				}
183
-				$connection->startAtomic( __CLASS__ );
183
+				$connection->startAtomic(__CLASS__);
184 184
 				$constraints = [];
185 185
 			}
186 186
 		}
187
-		$constraintStore->insertBatch( $constraints );
187
+		$constraintStore->insertBatch($constraints);
188 188
 	}
189 189
 
190 190
 	/**
@@ -195,24 +195,24 @@  discard block
 block discarded – undo
195 195
 	public function run() {
196 196
 		// TODO in the future: only touch constraints affected by the edit (requires T163465)
197 197
 
198
-		$propertyId = new NumericPropertyId( $this->propertyId );
198
+		$propertyId = new NumericPropertyId($this->propertyId);
199 199
 		$propertyRevision = $this->entityRevisionLookup->getEntityRevision(
200 200
 			$propertyId,
201 201
 			0, // latest
202 202
 			LookupConstants::LATEST_FROM_REPLICA
203 203
 		);
204 204
 
205
-		if ( $this->revisionId !== null && $propertyRevision->getRevisionId() < $this->revisionId ) {
206
-			$this->jobQueueGroup->push( $this );
205
+		if ($this->revisionId !== null && $propertyRevision->getRevisionId() < $this->revisionId) {
206
+			$this->jobQueueGroup->push($this);
207 207
 			return true;
208 208
 		}
209 209
 
210
-		$connection = $this->lbFactory->getMainLB()->getConnection( DB_PRIMARY );
210
+		$connection = $this->lbFactory->getMainLB()->getConnection(DB_PRIMARY);
211 211
 		// start transaction (if not started yet) – using __CLASS__, not __METHOD__,
212 212
 		// because importConstraintsForProperty() can interrupt the transaction
213
-		$connection->startAtomic( __CLASS__ );
213
+		$connection->startAtomic(__CLASS__);
214 214
 
215
-		$this->constraintStore->deleteForProperty( $propertyId );
215
+		$this->constraintStore->deleteForProperty($propertyId);
216 216
 
217 217
 		/** @var Property $property */
218 218
 		$property = $propertyRevision->getEntity();
@@ -220,10 +220,10 @@  discard block
 block discarded – undo
220 220
 		$this->importConstraintsForProperty(
221 221
 			$property,
222 222
 			$this->constraintStore,
223
-			new NumericPropertyId( $this->config->get( 'WBQualityConstraintsPropertyConstraintId' ) )
223
+			new NumericPropertyId($this->config->get('WBQualityConstraintsPropertyConstraintId'))
224 224
 		);
225 225
 
226
-		$connection->endAtomic( __CLASS__ );
226
+		$connection->endAtomic(__CLASS__);
227 227
 
228 228
 		return true;
229 229
 	}
Please login to merge, or discard this patch.
src/ConstraintRepositoryLookup.php 1 patch
Spacing   +18 added lines, -18 removed lines patch added patch discarded remove patch
@@ -25,7 +25,7 @@  discard block
 block discarded – undo
25 25
 	 * then using the main DBLoadBalancer service may be incorrect.
26 26
 	 * @param string|false $dbName Database name ($domain for ILoadBalancer methods).
27 27
 	 */
28
-	public function __construct( ILoadBalancer $lb, $dbName ) {
28
+	public function __construct(ILoadBalancer $lb, $dbName) {
29 29
 		$this->lb = $lb;
30 30
 		$this->dbName = $dbName;
31 31
 	}
@@ -35,22 +35,22 @@  discard block
 block discarded – undo
35 35
 	 *
36 36
 	 * @return Constraint[]
37 37
 	 */
38
-	public function queryConstraintsForProperty( NumericPropertyId $propertyId ) {
39
-		$dbr = $this->lb->getConnection( ILoadBalancer::DB_REPLICA, [], $this->dbName );
38
+	public function queryConstraintsForProperty(NumericPropertyId $propertyId) {
39
+		$dbr = $this->lb->getConnection(ILoadBalancer::DB_REPLICA, [], $this->dbName);
40 40
 
41 41
 		$results = $dbr->newSelectQueryBuilder()
42
-			->select( [
42
+			->select([
43 43
 				'constraint_type_qid',
44 44
 				'constraint_parameters',
45 45
 				'constraint_guid',
46 46
 				'pid',
47
-			] )
48
-			->from( 'wbqc_constraints' )
49
-			->where( [ 'pid' => $propertyId->getNumericId() ] )
50
-			->caller( __METHOD__ )
47
+			])
48
+			->from('wbqc_constraints')
49
+			->where(['pid' => $propertyId->getNumericId()])
50
+			->caller(__METHOD__)
51 51
 			->fetchResultSet();
52 52
 
53
-		return $this->convertToConstraints( $results );
53
+		return $this->convertToConstraints($results);
54 54
 	}
55 55
 
56 56
 	/**
@@ -58,26 +58,26 @@  discard block
 block discarded – undo
58 58
 	 *
59 59
 	 * @return Constraint[]
60 60
 	 */
61
-	private function convertToConstraints( IResultWrapper $results ) {
61
+	private function convertToConstraints(IResultWrapper $results) {
62 62
 		$constraints = [];
63
-		$logger = LoggerFactory::getInstance( 'WikibaseQualityConstraints' );
64
-		foreach ( $results as $result ) {
63
+		$logger = LoggerFactory::getInstance('WikibaseQualityConstraints');
64
+		foreach ($results as $result) {
65 65
 			$constraintTypeItemId = $result->constraint_type_qid;
66
-			$constraintParameters = json_decode( $result->constraint_parameters, true );
66
+			$constraintParameters = json_decode($result->constraint_parameters, true);
67 67
 
68
-			if ( $constraintParameters === null ) {
68
+			if ($constraintParameters === null) {
69 69
 				// T171295
70
-				$logger->warning( 'Constraint {constraintId} has invalid constraint parameters.', [
70
+				$logger->warning('Constraint {constraintId} has invalid constraint parameters.', [
71 71
 					'method' => __METHOD__,
72 72
 					'constraintId' => $result->constraint_guid,
73 73
 					'constraintParameters' => $result->constraint_parameters,
74
-				] );
75
-				$constraintParameters = [ '@error' => [ /* unknown */ ] ];
74
+				]);
75
+				$constraintParameters = ['@error' => [/* unknown */]];
76 76
 			}
77 77
 
78 78
 			$constraints[] = new Constraint(
79 79
 				$result->constraint_guid,
80
-				NumericPropertyId::newFromNumber( $result->pid ),
80
+				NumericPropertyId::newFromNumber($result->pid),
81 81
 				$constraintTypeItemId,
82 82
 				$constraintParameters
83 83
 			);
Please login to merge, or discard this patch.
src/ConstraintCheck/Context/ReferenceContext.php 1 patch
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -1,6 +1,6 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 
3
-declare( strict_types = 1 );
3
+declare(strict_types=1);
4 4
 
5 5
 namespace WikibaseQuality\ConstraintReport\ConstraintCheck\Context;
6 6
 
@@ -32,7 +32,7 @@  discard block
 block discarded – undo
32 32
 		Reference $reference,
33 33
 		Snak $snak
34 34
 	) {
35
-		parent::__construct( $entity, $snak );
35
+		parent::__construct($entity, $snak);
36 36
 		$this->statement = $statement;
37 37
 		$this->reference = $reference;
38 38
 	}
@@ -41,16 +41,16 @@  discard block
 block discarded – undo
41 41
 		return self::TYPE_REFERENCE;
42 42
 	}
43 43
 
44
-	public function getSnakGroup( string $groupingMode, array $separators = [] ): array {
44
+	public function getSnakGroup(string $groupingMode, array $separators = []): array {
45 45
 		$snaks = $this->reference->getSnaks();
46
-		return array_values( $snaks->getArrayCopy() );
46
+		return array_values($snaks->getArrayCopy());
47 47
 	}
48 48
 
49 49
 	public function getCursor(): ContextCursor {
50 50
 		return new ReferenceContextCursor(
51 51
 			$this->entity->getId()->getSerialization(),
52 52
 			$this->statement->getPropertyId()->getSerialization(),
53
-			$this->getStatementGuid( $this->statement ),
53
+			$this->getStatementGuid($this->statement),
54 54
 			$this->snak->getHash(),
55 55
 			$this->snak->getPropertyId()->getSerialization(),
56 56
 			$this->reference->getHash()
Please login to merge, or discard this patch.
src/ConstraintCheck/Context/Context.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -1,6 +1,6 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 
3
-declare( strict_types = 1 );
3
+declare(strict_types=1);
4 4
 
5 5
 namespace WikibaseQuality\ConstraintReport\ConstraintCheck\Context;
6 6
 
@@ -119,7 +119,7 @@  discard block
 block discarded – undo
119 119
 	 * @return Snak[] not a SnakList because for a statement context,
120 120
 	 * the returned value might contain the same snak several times.
121 121
 	 */
122
-	public function getSnakGroup( string $groupingMode, array $separators = [] ): array;
122
+	public function getSnakGroup(string $groupingMode, array $separators = []): array;
123 123
 
124 124
 	/**
125 125
 	 * Get the cursor that can be used to address check results for this context.
Please login to merge, or discard this patch.
src/ConstraintCheck/Context/QualifierContext.php 1 patch
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -1,6 +1,6 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 
3
-declare( strict_types = 1 );
3
+declare(strict_types=1);
4 4
 
5 5
 namespace WikibaseQuality\ConstraintReport\ConstraintCheck\Context;
6 6
 
@@ -25,7 +25,7 @@  discard block
 block discarded – undo
25 25
 		Statement $statement,
26 26
 		Snak $snak
27 27
 	) {
28
-		parent::__construct( $entity, $snak );
28
+		parent::__construct($entity, $snak);
29 29
 		$this->statement = $statement;
30 30
 	}
31 31
 
@@ -33,16 +33,16 @@  discard block
 block discarded – undo
33 33
 		return self::TYPE_QUALIFIER;
34 34
 	}
35 35
 
36
-	public function getSnakGroup( string $groupingMode, array $separators = [] ): array {
36
+	public function getSnakGroup(string $groupingMode, array $separators = []): array {
37 37
 		$snaks = $this->statement->getQualifiers();
38
-		return array_values( $snaks->getArrayCopy() );
38
+		return array_values($snaks->getArrayCopy());
39 39
 	}
40 40
 
41 41
 	public function getCursor(): ContextCursor {
42 42
 		return new QualifierContextCursor(
43 43
 			$this->entity->getId()->getSerialization(),
44 44
 			$this->statement->getPropertyId()->getSerialization(),
45
-			$this->getStatementGuid( $this->statement ),
45
+			$this->getStatementGuid($this->statement),
46 46
 			$this->snak->getHash(),
47 47
 			$this->snak->getPropertyId()->getSerialization()
48 48
 		);
Please login to merge, or discard this patch.
src/ConstraintCheck/Context/AbstractContext.php 1 patch
Spacing   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -1,6 +1,6 @@  discard block
 block discarded – undo
1 1
 <?php
2 2
 
3
-declare( strict_types = 1 );
3
+declare(strict_types=1);
4 4
 
5 5
 namespace WikibaseQuality\ConstraintReport\ConstraintCheck\Context;
6 6
 
@@ -21,7 +21,7 @@  discard block
 block discarded – undo
21 21
 
22 22
 	protected Snak $snak;
23 23
 
24
-	public function __construct( StatementListProvidingEntity $entity, Snak $snak ) {
24
+	public function __construct(StatementListProvidingEntity $entity, Snak $snak) {
25 25
 		$this->entity = $entity;
26 26
 		$this->snak = $snak;
27 27
 	}
@@ -47,15 +47,15 @@  discard block
 block discarded – undo
47 47
 	// unimplemented: getCursor
48 48
 
49 49
 	/** Helper function for {@link getCursor()} implementations. */
50
-	protected function getStatementGuid( Statement $statement ): string {
50
+	protected function getStatementGuid(Statement $statement): string {
51 51
 		$guid = $statement->getGuid();
52
-		if ( $guid === null ) {
53
-			if ( defined( 'MW_PHPUNIT_TEST' ) ) {
52
+		if ($guid === null) {
53
+			if (defined('MW_PHPUNIT_TEST')) {
54 54
 				// let unit tests get away with not specifying a statement GUID:
55 55
 				// much more convenient to fake it here than to add one to all tests
56 56
 				return 'Q0$DEADBEEF-DEAD-BEEF-DEAD-BEEFDEADBEEF';
57 57
 			} else {
58
-				throw new InvalidArgumentException( 'Statement for Context must have a GUID' );
58
+				throw new InvalidArgumentException('Statement for Context must have a GUID');
59 59
 			}
60 60
 		}
61 61
 		return $guid;
Please login to merge, or discard this patch.