Jeroen De Dauw has submitted this change and it was merged.

Change subject: Make ChangeOpClaim use guidParser
......................................................................


Make ChangeOpClaim use guidParser

Change-Id: Ia88d01845897f6eed810213cfb4a9e35b675c9fa
---
M repo/includes/ChangeOp/ChangeOpClaim.php
1 file changed, 5 insertions(+), 2 deletions(-)

Approvals:
  Jeroen De Dauw: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/repo/includes/ChangeOp/ChangeOpClaim.php 
b/repo/includes/ChangeOp/ChangeOpClaim.php
index 33367e2..6f3e540 100644
--- a/repo/includes/ChangeOp/ChangeOpClaim.php
+++ b/repo/includes/ChangeOp/ChangeOpClaim.php
@@ -7,6 +7,7 @@
 use Wikibase\Entity;
 use Wikibase\Lib\ClaimGuidGenerator;
 use Wikibase\Lib\ClaimGuidValidator;
+use Wikibase\Repo\WikibaseRepo;
 use Wikibase\Summary;
 
 /**
@@ -59,15 +60,17 @@
        public function apply( Entity $entity, Summary $summary = null ) {
 
                $guidValidator = new ClaimGuidValidator();
+               $guidParser = 
WikibaseRepo::getDefaultInstance()->getClaimGuidParser();
 
                if( $this->claim->getGuid() === null ){
                        $this->claim->setGuid( $this->guidGenerator->newGuid() 
);
                }
                $guid = $this->claim->getGuid();
+               $guid = $guidParser->parse( $guid );
 
-               if ( $guidValidator->validate( $guid ) === false ) {
+               if ( $guidValidator->validate( $guid->getSerialization() ) === 
false ) {
                        throw new ChangeOpException( "Claim does not have a 
valid GUID" );
-               } else if ( strtoupper( $entity->getId()->getPrefixedId() ) !== 
substr( $guid, 0, strpos( $guid, '$' ) ) ){
+               } else if ( !$entity->getId()->equals( $guid->getEntityId() ) ){
                        throw new ChangeOpException( "Claim GUID invalid for 
given entity" );
                }
 

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

Gerrit-MessageType: merged
Gerrit-Change-Id: Ia88d01845897f6eed810213cfb4a9e35b675c9fa
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Addshore <[email protected]>
Gerrit-Reviewer: Addshore <[email protected]>
Gerrit-Reviewer: Aude <[email protected]>
Gerrit-Reviewer: Daniel Kinzler <[email protected]>
Gerrit-Reviewer: Hoo man <[email protected]>
Gerrit-Reviewer: Jeroen De Dauw <[email protected]>
Gerrit-Reviewer: Tobias Gritschacher <[email protected]>
Gerrit-Reviewer: jenkins-bot

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

Reply via email to