Page MenuHomePhabricator

🟫 Create ReplaceItemStatement use case and implement happy path
Closed, ResolvedPublic

Description

  • add a StatementList::replaceStatement( StatementGuid $id, Statement $statement ): void method which ignores the new Statement object's id and sets it to $id
  • create a new ReplaceItemStatementRequest DTO with item id if present, statement id, statement serialization, tags list, bot flag, and user comment
  • create a new ReplaceItemStatementSuccessResponse DTO with statement serialization, revision ID, and revision timestamp
  • create a new ReplaceItemStatement use case:
    • retrieve Item metadata
    • use ItemRetriever, replace the Statement, then save using ItemUpdater
    • return a ReplaceItemStatementSuccessResponse

Event Timeline

Change 815332 had a related patch set uploaded (by Silvan Heintze; author: Silvan Heintze):

[mediawiki/extensions/Wikibase@master] Add StatementList::replaceStatement()

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

Change 815692 had a related patch set uploaded (by Silvan Heintze; author: Silvan Heintze):

[mediawiki/extensions/Wikibase@master] REST: Create ReplaceItemStatement use case

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

Change 815332 merged by jenkins-bot:

[mediawiki/extensions/Wikibase@master] Add StatementList::replaceStatement()

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

Change 815692 merged by jenkins-bot:

[mediawiki/extensions/Wikibase@master] REST: Create ReplaceItemStatement use case

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

Change 815992 had a related patch set uploaded (by Silvan Heintze; author: Silvan Heintze):

[mediawiki/extensions/Wikibase@master] Improve StatementList::replaceStatement()

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

Change 815992 merged by jenkins-bot:

[mediawiki/extensions/Wikibase@master] Improve StatementList::replaceStatement()

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

@Silvan_WMDE: Assuming this task is resolved. Thus setting resolved task status. Please reopen and add an active project tag if that is not the case. Thanks.