Class SenseUpdateBuilder


public class SenseUpdateBuilder extends StatementDocumentUpdateBuilder
Builder for incremental construction of SenseUpdate objects.
  • Method Details

    • forBaseRevisionId

      public static SenseUpdateBuilder forBaseRevisionId(SenseIdValue senseId, long revisionId)
      Creates new builder object for constructing update of sense entity with given revision ID.
      Parameters:
      senseId - ID of the sense that is to be updated
      revisionId - ID of the base sense revision to be updated or zero if not available
      Returns:
      update builder object
      Throws:
      NullPointerException - if senseId is null
      IllegalArgumentException - if senseId is a placeholder ID
    • forEntityId

      public static SenseUpdateBuilder forEntityId(SenseIdValue senseId)
      Creates new builder object for constructing update of sense entity with given ID.
      Parameters:
      senseId - ID of the sense that is to be updated
      Returns:
      update builder object
      Throws:
      NullPointerException - if senseId is null
      IllegalArgumentException - if senseId is a placeholder ID
    • forBaseRevision

      public static SenseUpdateBuilder forBaseRevision(SenseDocument revision)
      Creates new builder object for constructing update of given base sense entity revision. Provided sense document might not represent the latest revision of the sense 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 sense entity revision to be updated
      Returns:
      update builder object
      Throws:
      NullPointerException - if revision is null
      IllegalArgumentException - if revision has placeholder ID
    • updateStatements

      public SenseUpdateBuilder updateStatements(StatementUpdate update)
      Description copied from class: StatementDocumentUpdateBuilder
      Updates 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:
      updateStatements in class StatementDocumentUpdateBuilder
      Parameters:
      update - statement update, possibly empty
      Returns:
      this (fluent method)
    • updateGlosses

      public SenseUpdateBuilder updateGlosses(TermUpdate update)
      Updates sense glosses. 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.
      Parameters:
      update - changes in sense glosses
      Returns:
      this (fluent method)
      Throws:
      NullPointerException - if update is null
    • append

      public SenseUpdateBuilder append(SenseUpdate update)
      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 - sense update to replay
      Returns:
      this (fluent method)
      Throws:
      NullPointerException - if update is null
      IllegalArgumentException - if update cannot be applied to base entity revision (if available)
    • build

      public SenseUpdate build()
      Description copied from class: StatementDocumentUpdateBuilder
      Creates new StatementDocumentUpdate object with contents of this builder object.
      Specified by:
      build in class StatementDocumentUpdateBuilder
      Returns:
      constructed object