Interface TreeApi

All Known Subinterfaces:
HttpTreeApi

public interface TreeApi
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    assignReference(Reference.ReferenceType referenceType, @Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String referenceName, @Valid @Valid @NotNull @NotNull @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") String expectedHash, @Valid @Valid @NotNull @NotNull Reference assignTo)
    Update a reference's HEAD to point to a different commit.
    commitMultipleOperations(@Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String branchName, @Valid @Valid @NotNull @NotNull @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") String expectedHash, @Valid @Valid @NotNull @NotNull Operations operations)
    Commit multiple operations against the given branch expecting that branch to have the given hash as its latest commit.
    createReference(@Valid @Valid @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String sourceRefName, @Valid @Valid @NotNull @NotNull Reference reference)
    Create a new reference.
    void
    deleteReference(Reference.ReferenceType referenceType, @Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String referenceName, @Valid @Valid @NotNull @NotNull @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") String expectedHash)
    Delete a named reference.
    Get all references.
    getCommitLog(@Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String ref, @Valid @Valid @NotNull @NotNull CommitLogParams params)
    Retrieve the commit log for a ref, potentially truncated by the backend.
    Get details for the default reference.
    getEntries(@Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String refName, @Valid @Valid @NotNull @NotNull EntriesParams params)
    Retrieve objects for a ref, potentially truncated by the backend.
    getReferenceByName(@Valid @Valid @NotNull @NotNull GetReferenceParams params)
    Get details of a particular ref, if it exists.
    mergeRefIntoBranch(@Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String branchName, @Valid @Valid @NotNull @NotNull @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") String expectedHash, @Valid @Valid @NotNull @NotNull Merge merge)
    merge mergeRef onto ref.
    transplantCommitsIntoBranch(@Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String branchName, @Valid @Valid @NotNull @NotNull @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") String expectedHash, @Valid @Valid String message, @Valid @Valid Transplant transplant)
    cherry pick a set of commits into a branch.
  • Method Details

    • getAllReferences

      ReferencesResponse getAllReferences(ReferencesParams params)
      Get all references.
      Returns:
      A ReferencesResponse instance containing all references.
    • getDefaultBranch

      Branch getDefaultBranch() throws NessieNotFoundException
      Get details for the default reference.
      Throws:
      NessieNotFoundException
    • createReference

      Reference createReference(@Valid @Valid @Nullable @Nullable @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Valid @Valid @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String sourceRefName, @Valid @Valid @NotNull @NotNull @Valid @Valid @NotNull @NotNull Reference reference) throws NessieNotFoundException, NessieConflictException
      Create a new reference.

      The type of reference, which can be either a Branch or Tag, determines the type of the reference to be created.

      Reference.getName() defines the the name of the reference to be created, Reference.getHash() is the hash of the created reference, the HEAD of the created reference. sourceRefName is the name of the reference which contains Reference.getHash(), and must be present if Reference.getHash() is present.

      Specifying no Reference.getHash() means that the new reference will be created "at the beginning of time".

      Throws:
      NessieNotFoundException
      NessieConflictException
    • getReferenceByName

      Reference getReferenceByName(@Valid @Valid @NotNull @NotNull @Valid @Valid @NotNull @NotNull GetReferenceParams params) throws NessieNotFoundException
      Get details of a particular ref, if it exists.
      Throws:
      NessieNotFoundException
    • getEntries

      EntriesResponse getEntries(@Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String refName, @Valid @Valid @NotNull @NotNull @Valid @Valid @NotNull @NotNull EntriesParams params) throws NessieNotFoundException
      Retrieve objects for a ref, potentially truncated by the backend.

      Retrieves up to maxRecords objects for the given named reference (tag or branch). The backend may respect the given max records hint, but return less or more entries. Backends may also cap the returned entries at a hard-coded limit, the default REST server implementation has such a hard-coded limit.

      Invoking getEntries() does not guarantee to return all commit log entries of a given reference, because the result can be truncated by the backend.

      To implement paging, check EntriesResponse.isHasMore() and, if true, pass the value of EntriesResponse.getToken() in the next invocation of getEntries() as the pageToken parameter.

      See org.projectnessie.client.StreamingUtil in nessie-client.

      Throws:
      NessieNotFoundException
    • getCommitLog

      LogResponse getCommitLog(@Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String ref, @Valid @Valid @NotNull @NotNull @Valid @Valid @NotNull @NotNull CommitLogParams params) throws NessieNotFoundException
      Retrieve the commit log for a ref, potentially truncated by the backend.

      Retrieves up to maxRecords commit-log-entries starting at the HEAD of the given named reference (tag or branch). The backend may respect the given max records hint, but return less or more entries. Backends may also cap the returned entries at a hard-coded limit, the default REST server implementation has such a hard-coded limit.

      Invoking getCommitLog() does not guarantee to return all commit log entries of a given reference, because the result can be truncated by the backend.

      To implement paging, check LogResponse.isHasMore() and, if true, pass the value of LogResponse.getToken() in the next invocation of getCommitLog() as the pageToken parameter.

      See org.projectnessie.client.StreamingUtil in nessie-client.

      Throws:
      NessieNotFoundException
    • assignReference

      void assignReference(@Valid @Valid @NotNull @NotNull Reference.ReferenceType referenceType, @Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String referenceName, @Valid @Valid @NotNull @NotNull @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Valid @Valid @NotNull @NotNull @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") String expectedHash, @Valid @Valid @NotNull @NotNull @Valid @Valid @NotNull @NotNull Reference assignTo) throws NessieNotFoundException, NessieConflictException
      Update a reference's HEAD to point to a different commit.
      Throws:
      NessieNotFoundException
      NessieConflictException
    • deleteReference

      void deleteReference(@Valid @Valid @NotNull @NotNull Reference.ReferenceType referenceType, @Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String referenceName, @Valid @Valid @NotNull @NotNull @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Valid @Valid @NotNull @NotNull @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") String expectedHash) throws NessieConflictException, NessieNotFoundException
      Delete a named reference.
      Throws:
      NessieConflictException
      NessieNotFoundException
    • transplantCommitsIntoBranch

      MergeResponse transplantCommitsIntoBranch(@Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String branchName, @Valid @Valid @NotNull @NotNull @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Valid @Valid @NotNull @NotNull @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") String expectedHash, @Valid @Valid @Valid @Valid String message, @Valid @Valid @Valid @Valid Transplant transplant) throws NessieNotFoundException, NessieConflictException
      cherry pick a set of commits into a branch.
      Throws:
      NessieNotFoundException
      NessieConflictException
    • mergeRefIntoBranch

      MergeResponse mergeRefIntoBranch(@Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String branchName, @Valid @Valid @NotNull @NotNull @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Valid @Valid @NotNull @NotNull @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") String expectedHash, @Valid @Valid @NotNull @NotNull @Valid @Valid @NotNull @NotNull Merge merge) throws NessieNotFoundException, NessieConflictException
      merge mergeRef onto ref.
      Throws:
      NessieNotFoundException
      NessieConflictException
    • commitMultipleOperations

      Branch commitMultipleOperations(@Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Valid @Valid @NotNull @NotNull @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") @Pattern(regexp="^(?:[A-Za-z](?:(?:(?![.][.])[A-Za-z0-9./_-])*[A-Za-z0-9_-])?)|-$",message="Reference name must start with a letter, followed by letters, digits, one of the ./_- characters, not end with a slash or dot, not contain \'..\'") String branchName, @Valid @Valid @NotNull @NotNull @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Valid @Valid @NotNull @NotNull @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") @Pattern(regexp="^[0-9a-fA-F]{8,64}$",message="Hash must consist of the hex representation of 4-32 bytes") String expectedHash, @Valid @Valid @NotNull @NotNull @Valid @Valid @NotNull @NotNull Operations operations) throws NessieNotFoundException, NessieConflictException
      Commit multiple operations against the given branch expecting that branch to have the given hash as its latest commit. The hash in the successful response contains the hash of the commit that contains the operations of the invocation.
      Parameters:
      branchName - Branch to change, defaults to default branch.
      expectedHash - Expected hash of branch.
      operations - Operations to apply
      Returns:
      updated Branch objects with the hash of the new HEAD
      Throws:
      NessieNotFoundException - if branchName could not be found
      NessieConflictException - if the operations could not be applied to some conflict, which is either caused by a conflicting commit or concurrent commits.