Class ItemUpdateBuilder
java.lang.Object
org.wikidata.wdtk.datamodel.helpers.EntityUpdateBuilder
org.wikidata.wdtk.datamodel.helpers.StatementDocumentUpdateBuilder
org.wikidata.wdtk.datamodel.helpers.LabeledDocumentUpdateBuilder
org.wikidata.wdtk.datamodel.helpers.TermedDocumentUpdateBuilder
org.wikidata.wdtk.datamodel.helpers.ItemUpdateBuilder
Builder for incremental construction of
ItemUpdate objects.-
Method Summary
Modifier and TypeMethodDescriptionappend(ItemUpdate update) Replays all changes in provided update into this builder object.build()Creates newTermedStatementDocumentUpdateobject with contents of this builder object.static ItemUpdateBuilderforBaseRevision(ItemDocument revision) Creates new builder object for constructing update of given base item entity revision.static ItemUpdateBuilderforBaseRevisionId(ItemIdValue itemId, long revisionId) Creates new builder object for constructing update of item entity with given revision ID.static ItemUpdateBuilderforEntityId(ItemIdValue itemId) Creates new builder object for constructing update of item entity with given ID.putSiteLink(SiteLink link) Adds or replaces site link.removeSiteLink(String site) Removes site link.updateAliases(String language, AliasUpdate update) Updates entity aliases.updateDescriptions(TermUpdate update) Updates entity descriptions.updateLabels(TermUpdate update) Updates entity labels.updateStatements(StatementUpdate update) Updates entity statements.Methods inherited from class org.wikidata.wdtk.datamodel.helpers.TermedDocumentUpdateBuilder
forBaseRevision, forBaseRevisionId, forEntityIdMethods inherited from class org.wikidata.wdtk.datamodel.helpers.LabeledDocumentUpdateBuilder
forBaseRevisionMethods inherited from class org.wikidata.wdtk.datamodel.helpers.StatementDocumentUpdateBuilder
forBaseRevisionMethods inherited from class org.wikidata.wdtk.datamodel.helpers.EntityUpdateBuilder
forBaseRevision
-
Method Details
-
forBaseRevisionId
Creates new builder object for constructing update of item entity with given revision ID.- Parameters:
itemId- ID of the item entity that is to be updatedrevisionId- ID of the base item revision to be updated or zero if not available- Returns:
- update builder object
- Throws:
NullPointerException- ifitemIdisnullIllegalArgumentException- ifitemIdis a placeholder ID
-
forEntityId
Creates new builder object for constructing update of item entity with given ID.- Parameters:
itemId- ID of the item entity that is to be updated- Returns:
- update builder object
- Throws:
NullPointerException- ifitemIdisnullIllegalArgumentException- ifitemIdis a placeholder ID
-
forBaseRevision
Creates new builder object for constructing update of given base item entity revision. Provided item document might not represent the latest revision of the item entity as currently stored in Wikibase. It will be used for validation in builder methods. If the document has revision ID, it will be used to detect edit conflicts.- Parameters:
revision- base item entity revision to be updated- Returns:
- update builder object
- Throws:
NullPointerException- ifrevisionisnullIllegalArgumentException- ifrevisionhas placeholder ID
-
updateStatements
Description copied from class:StatementDocumentUpdateBuilderUpdates entity statements. If this method is called multiple times, changes are accumulated. If base entity revision was provided, the update is checked against it and redundant changes are silently ignored, resulting in empty update.- Overrides:
updateStatementsin classTermedDocumentUpdateBuilder- Parameters:
update- statement update, possibly empty- Returns:
this(fluent method)
-
updateLabels
Description copied from class:LabeledDocumentUpdateBuilderUpdates entity labels. If this method is called multiple times, changes are accumulated. If base entity revision was provided, redundant changes are silently ignored, resulting in empty update.- Overrides:
updateLabelsin classTermedDocumentUpdateBuilder- Parameters:
update- changes in entity labels- Returns:
this(fluent method)
-
updateDescriptions
Description copied from class:TermedDocumentUpdateBuilderUpdates entity descriptions. If this method is called multiple times, changes are accumulated. If base entity revision was provided, redundant changes are silently ignored, resulting in empty update.- Overrides:
updateDescriptionsin classTermedDocumentUpdateBuilder- Parameters:
update- changes in entity descriptions- Returns:
this(fluent method)
-
updateAliases
Description copied from class:TermedDocumentUpdateBuilderUpdates entity aliases. If this method is called multiple times, changes are accumulated. If base entity revision was provided, the update is checked against it and redundant changes are silently ignored, resulting in empty update.- Overrides:
updateAliasesin classTermedDocumentUpdateBuilder- Parameters:
language- language code of the altered aliasesupdate- alias changes- Returns:
this(fluent method)
-
putSiteLink
Adds or replaces site link. If there is no site link for the site key, new site link is added. If a site link with this site key already exists, it is replaced. Site links with other site keys are not touched. Calling this method overrides any previous changes made with the same site key by this method orremoveSiteLink(String).If base entity revision was provided, attempt to overwrite some site link with identical site link will be silently ignored, resulting in empty update.
- Parameters:
link- new or replacement site link- Returns:
this(fluent method)- Throws:
NullPointerException- iflinkisnull
-
removeSiteLink
Removes site link. Site links with other site keys are not touched. Calling this method overrides any previous changes made with the same site key by this method orputSiteLink(SiteLink).If base entity revision was provided, attempts to remove missing site links will be silently ignored, resulting in empty update.
- Parameters:
site- site key of the removed site link- Returns:
this(fluent method)- Throws:
NullPointerException- ifsiteisnullIllegalArgumentException- ifsiteis blank
-
append
Replays all changes in provided update into this builder object. Changes from the update are added on top of changes already present in this builder object.- Parameters:
update- item update to replay- Returns:
this(fluent method)- Throws:
NullPointerException- ifupdateisnullIllegalArgumentException- ifupdatecannot be applied to base entity revision (if available)
-
build
Description copied from class:TermedDocumentUpdateBuilderCreates newTermedStatementDocumentUpdateobject with contents of this builder object.- Specified by:
buildin classTermedDocumentUpdateBuilder- Returns:
- constructed object
-