jenkins-bot has submitted this change and it was merged. Change subject: Simplify ChangeOpStatement implementation ......................................................................
Simplify ChangeOpStatement implementation Main advantage is that the $this->index and $summary variables are not passed around any more. They are defined and used in a single place. Change-Id: I400e9a6e37899acd2b112a50459c94eebc2c373c --- M repo/includes/ChangeOp/ChangeOpStatement.php 1 file changed, 7 insertions(+), 19 deletions(-) Approvals: Hoo man: Looks good to me, approved Aude: Looks good to me, approved jenkins-bot: Verified diff --git a/repo/includes/ChangeOp/ChangeOpStatement.php b/repo/includes/ChangeOp/ChangeOpStatement.php index 37b3042..abb7019 100644 --- a/repo/includes/ChangeOp/ChangeOpStatement.php +++ b/repo/includes/ChangeOp/ChangeOpStatement.php @@ -112,17 +112,20 @@ } $this->validateStatementGuid( $entityId ); + $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' ); } - $this->applyStatementToEntity( $entity, $summary ); + $statements = $this->addStatementToGroup( $entity->getStatements(), $this->index ); + $entity->setStatements( new StatementList( $statements ) ); } else { - $oldIndex = $this->removeStatement( $entity->getStatements(), $summary ); $entity->getStatements()->addStatement( $this->statement, $oldIndex ); } + + $this->updateSummary( $summary, $oldIndex === null ? 'create' : 'update' ); } /** @@ -143,23 +146,11 @@ } /** - * @param StatementListHolder $entity - * @param Summary|null $summary - */ - private function applyStatementToEntity( StatementListHolder $entity, Summary $summary = null ) { - $oldIndex = $this->removeStatement( $entity->getStatements(), $summary ); - $newIndex = $this->index !== null ? $this->index : $oldIndex; - $statements = $this->addStatementToGroup( $entity->getStatements(), $newIndex ); - $entity->setStatements( new StatementList( $statements ) ); - } - - /** * @param StatementList $statements - * @param Summary|null $summary * * @return int|null */ - private function removeStatement( StatementList $statements, Summary $summary = null ) { + private function removeStatement( StatementList $statements ) { $guid = $this->statement->getGuid(); $oldIndex = null; $oldStatement = null; @@ -173,11 +164,8 @@ } } - if ( $oldStatement === null ) { - $this->updateSummary( $summary, 'create' ); - } else { + if ( $oldStatement !== null ) { $this->checkMainSnakUpdate( $oldStatement ); - $this->updateSummary( $summary, 'update' ); } return $oldIndex; -- To view, visit https://gerrit.wikimedia.org/r/300239 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: I400e9a6e37899acd2b112a50459c94eebc2c373c Gerrit-PatchSet: 3 Gerrit-Project: mediawiki/extensions/Wikibase Gerrit-Branch: master Gerrit-Owner: Thiemo Mättig (WMDE) <thiemo.maet...@wikimedia.de> Gerrit-Reviewer: Aude <aude.w...@gmail.com> Gerrit-Reviewer: Daniel Kinzler <daniel.kinz...@wikimedia.de> Gerrit-Reviewer: Hoo man <h...@online.de> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits