Thiemo Mättig (WMDE) has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/278918

Change subject: Rewrite ConnectionCheckerHelper to use native in_array
......................................................................

Rewrite ConnectionCheckerHelper to use native in_array

Change-Id: I7b01ee9a311c03719ed211b30b97bbb691593eb9
---
M includes/ConstraintCheck/Helper/ConnectionCheckerHelper.php
1 file changed, 20 insertions(+), 9 deletions(-)


  git pull 
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/WikibaseQualityConstraints
 refs/changes/18/278918/1

diff --git a/includes/ConstraintCheck/Helper/ConnectionCheckerHelper.php 
b/includes/ConstraintCheck/Helper/ConnectionCheckerHelper.php
index d799219..32f6289 100644
--- a/includes/ConstraintCheck/Helper/ConnectionCheckerHelper.php
+++ b/includes/ConstraintCheck/Helper/ConnectionCheckerHelper.php
@@ -2,6 +2,8 @@
 
 namespace WikibaseQuality\ConstraintReport\ConstraintCheck\Helper;
 
+use Wikibase\DataModel\Entity\EntityIdValue;
+use Wikibase\DataModel\Snak\PropertyValueSnak;
 use Wikibase\DataModel\Statement\Statement;
 use Wikibase\DataModel\Statement\StatementList;
 
@@ -37,7 +39,7 @@
         *
         * @param StatementList $statementList
         * @param string $propertyIdSerialization
-        * @param string|array $itemIdSerializationOrArray
+        * @param string|string[] $itemIdSerializationOrArray
         *
         * @return boolean
         */
@@ -62,17 +64,26 @@
                return false;
        }
 
-       private function arrayHasClaim( $statement, $itemIdSerializationArray ) 
{
+       /**
+        * @param Statement $statement
+        * @param string[] $itemIdSerializationArray
+        *
+        * @return bool
+        */
+       private function arrayHasClaim( Statement $statement, array 
$itemIdSerializationArray ) {
                $mainSnak = $statement->getMainSnak();
-               if ( $mainSnak->getType() !== 'value' || 
$mainSnak->getDataValue()->getType() !== 'wikibase-entityid' ) {
-                       return false;
+
+               if ( $mainSnak instanceof PropertyValueSnak ) {
+                       $dataValue = $mainSnak->getDataValue();
+
+                       return $dataValue instanceof EntityIdValue
+                               && in_array(
+                                       
$dataValue->getEntityId()->getSerialization(),
+                                       $itemIdSerializationArray,
+                                       true
+                               );
                }
 
-               foreach ( $itemIdSerializationArray as $itemIdSerialization ) {
-                       if ( 
$mainSnak->getDataValue()->getEntityId()->getSerialization() === 
$itemIdSerialization ) {
-                               return true;
-                       }
-               }
                return false;
        }
 

-- 
To view, visit https://gerrit.wikimedia.org/r/278918
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I7b01ee9a311c03719ed211b30b97bbb691593eb9
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/WikibaseQualityConstraints
Gerrit-Branch: master
Gerrit-Owner: Thiemo Mättig (WMDE) <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to