Thiemo Mättig (WMDE) has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/343849 )

Change subject: Do not use StatementListHolder interface in ChangeOpStatement
......................................................................

Do not use StatementListHolder interface in ChangeOpStatement

Critical for MediaInfo as well as Lexeme, because both should not
implement StatementListHolder if possible.

Change-Id: I214e3d9bff9d403a304ab9c90bd23006a2b706e8
Depends-On: Id5e83ec591346b205cc099a48b44a92a4c518e41
---
M composer.json
M repo/includes/ChangeOp/ChangeOpStatement.php
2 files changed, 6 insertions(+), 6 deletions(-)


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

diff --git a/composer.json b/composer.json
index 88a59b8..6c88971 100644
--- a/composer.json
+++ b/composer.json
@@ -32,7 +32,7 @@
                "data-values/serialization": "^1.2.0",
                "data-values/javascript": "^0.8.3",
                "data-values/value-view": "^0.19.0",
-               "wikibase/data-model": "^6.3.1",
+               "wikibase/data-model": "^7.0.0",
                "wikibase/data-model-serialization": "^2.1.0",
                "wikibase/internal-serialization": "^2.2.0",
                "wikibase/data-model-services": "^3.7.0",
diff --git a/repo/includes/ChangeOp/ChangeOpStatement.php 
b/repo/includes/ChangeOp/ChangeOpStatement.php
index 92c3ebb..8b501f9 100644
--- a/repo/includes/ChangeOp/ChangeOpStatement.php
+++ b/repo/includes/ChangeOp/ChangeOpStatement.php
@@ -13,7 +13,6 @@
 use Wikibase\DataModel\Services\Statement\StatementGuidValidator;
 use Wikibase\DataModel\Statement\Statement;
 use Wikibase\DataModel\Statement\StatementList;
-use Wikibase\DataModel\Statement\StatementListHolder;
 use Wikibase\DataModel\Statement\StatementListProvider;
 use Wikibase\Repo\Validators\SnakValidator;
 use Wikibase\Summary;
@@ -109,12 +108,13 @@
                $oldIndex = $this->removeStatement( $entity->getStatements() );
 
                if ( $this->index !== null ) {
-                       if ( !( $entity instanceof StatementListHolder ) ) {
-                               throw new ChangeOpException( 'Setting an index 
is not supported on this entity type' );
-                       }
+                       $statementList = $entity->getStatements();
+                       $statementList->clear();
 
                        $statements = $this->addStatementToGroup( 
$entity->getStatements(), $this->index );
-                       $entity->setStatements( new StatementList( $statements 
) );
+                       foreach ( $statements as $statement ) {
+                               $statementList->addStatement( $statement );
+                       }
                } else {
                        $entity->getStatements()->addStatement( 
$this->statement, $oldIndex );
                }

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I214e3d9bff9d403a304ab9c90bd23006a2b706e8
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikibase
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