Tobias Gritschacher has uploaded a new change for review.

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


Change subject: Move claimGuidValidator into ModifyClaim
......................................................................

Move claimGuidValidator into ModifyClaim

Change-Id: I76c1c9a0ccbe69b22daf95ee0cb10b648df17d65
---
M repo/includes/api/ModifyClaim.php
M repo/includes/api/SetClaimValue.php
2 files changed, 20 insertions(+), 7 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikibase 
refs/changes/15/76915/1

diff --git a/repo/includes/api/ModifyClaim.php 
b/repo/includes/api/ModifyClaim.php
index 0f5665f..1ef0228 100644
--- a/repo/includes/api/ModifyClaim.php
+++ b/repo/includes/api/ModifyClaim.php
@@ -11,6 +11,7 @@
 use Wikibase\EntityId;
 use Wikibase\Property;
 use Wikibase\EntityContentFactory;
+use Wikibase\Lib\ClaimGuidValidator;
 
 /**
  * Base class for modifying claims, with common functionality
@@ -44,6 +45,24 @@
  */
 abstract class ModifyClaim extends ApiWikibase {
 
+       protected $claimGuidValidator;
+
+       /**
+        * see ApiBase::__construct()
+        *
+        * @param ApiMain $mainModule
+        * @param string  $moduleName
+        * @param string  $modulePrefix
+        */
+       public function __construct( ApiMain $mainModule, $moduleName, 
$modulePrefix = '' ) {
+               parent::__construct( $mainModule, $moduleName, $modulePrefix );
+
+               // @todo generalize handling of settings in api modules
+               $settings = WikibaseRepo::getDefaultInstance()->getSettings();
+               $entityPrefixes = $settings->getSetting( 'entityPrefixes' );
+               $this->claimGuidValidator = new ClaimGuidValidator( 
$entityPrefixes );
+       }
+
        /**
         * @since 0.4
         *
diff --git a/repo/includes/api/SetClaimValue.php 
b/repo/includes/api/SetClaimValue.php
index c4cba8d..6c39fef 100644
--- a/repo/includes/api/SetClaimValue.php
+++ b/repo/includes/api/SetClaimValue.php
@@ -8,7 +8,6 @@
 use Wikibase\Entity;
 use Wikibase\Claims;
 use Wikibase\ChangeOpClaim;
-use Wikibase\Lib\ClaimGuidValidator;
 use Wikibase\Repo\WikibaseRepo;
 
 /**
@@ -92,12 +91,7 @@
         * @param array $params
         */
        protected function validateParameters( array $params ) {
-               // @todo generalize handling of settings in api modules
-               $settings = WikibaseRepo::getDefaultInstance()->getSettings();
-               $entityPrefixes = $settings->getSetting( 'entityPrefixes' );
-               $claimGuidValidator = new ClaimGuidValidator( $entityPrefixes );
-
-               if ( !( $claimGuidValidator->validate( $params['claim'] ) ) ) {
+               if ( !( $this->claimGuidValidator->validate( $params['claim'] ) 
) ) {
                        $this->dieUsage( 'Invalid claim guid' , 'invalid-guid' 
);
                }
        }

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I76c1c9a0ccbe69b22daf95ee0cb10b648df17d65
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
Gerrit-Branch: master
Gerrit-Owner: Tobias Gritschacher <tobias.gritschac...@wikimedia.de>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to