Class BaseGetCommitLogBuilder<PARAMS>

java.lang.Object
org.projectnessie.client.builder.BaseGetCommitLogBuilder<PARAMS>
All Implemented Interfaces:
GetCommitLogBuilder, OnReferenceBuilder<GetCommitLogBuilder>, PagingBuilder<GetCommitLogBuilder,org.projectnessie.model.LogResponse,org.projectnessie.model.LogResponse.LogEntry>, QueryBuilder<GetCommitLogBuilder>

public abstract class BaseGetCommitLogBuilder<PARAMS> extends Object implements GetCommitLogBuilder
  • Field Details

    • maxRecords

      protected Integer maxRecords
    • fetchOption

      protected org.projectnessie.model.FetchOption fetchOption
    • filter

      protected String filter
    • untilHash

      protected String untilHash
    • refName

      protected String refName
    • hashOnRef

      protected String hashOnRef
  • Constructor Details

  • Method Details

    • fetch

      public GetCommitLogBuilder fetch(org.projectnessie.model.FetchOption fetchOption)
      Description copied from interface: GetCommitLogBuilder
      Will fetch additional metadata about each commit like operations in a commit and parent hash.
      Specified by:
      fetch in interface GetCommitLogBuilder
      Parameters:
      fetchOption - The option indicating how much info to fetch
      Returns:
      GetAllReferencesBuilder
    • untilHash

      public GetCommitLogBuilder untilHash(String untilHash)
      Specified by:
      untilHash in interface GetCommitLogBuilder
    • maxRecords

      public GetCommitLogBuilder maxRecords(int maxRecords)
      Description copied from interface: PagingBuilder
      Sets the maximum number of records to be returned in a single response object from the PagingBuilder.get() method.

      This setter reflects the OpenAPI parameter maxRecords in a paged request.

      Specified by:
      maxRecords in interface PagingBuilder<GetCommitLogBuilder,org.projectnessie.model.LogResponse,org.projectnessie.model.LogResponse.LogEntry>
    • pageToken

      public GetCommitLogBuilder pageToken(String pageToken)
      Description copied from interface: PagingBuilder
      Sets the page token from the previous' PagingBuilder.get() method invocation. When using PagingBuilder.stream() methods this parameter must not be set.

      Only for manual paging via PagingBuilder.get() - do not call when using any of the PagingBuilder.stream() functions.

      This setter reflects the OpenAPI parameter pageToken in a paged request.

      Specified by:
      pageToken in interface PagingBuilder<GetCommitLogBuilder,org.projectnessie.model.LogResponse,org.projectnessie.model.LogResponse.LogEntry>
    • filter

      public GetCommitLogBuilder filter(String filter)
      Description copied from interface: QueryBuilder
      Required: the CEL script.
      Specified by:
      filter in interface QueryBuilder<PARAMS>
    • params

      protected abstract PARAMS params()
    • get

      public org.projectnessie.model.LogResponse get() throws org.projectnessie.error.NessieNotFoundException
      Description copied from interface: PagingBuilder
      Advanced usage, for manual paging: fetches a response chunk (might be one page or complete response depending on use case and parameters), but callers must implement paging on their own, if necessary. If in doubt, use PagingBuilder.stream() instead.
      Specified by:
      get in interface GetCommitLogBuilder
      Specified by:
      get in interface PagingBuilder<GetCommitLogBuilder,org.projectnessie.model.LogResponse,org.projectnessie.model.LogResponse.LogEntry>
      Throws:
      org.projectnessie.error.NessieNotFoundException
    • get

      protected abstract org.projectnessie.model.LogResponse get(PARAMS p) throws org.projectnessie.error.NessieNotFoundException
      Throws:
      org.projectnessie.error.NessieNotFoundException
    • stream

      public Stream<org.projectnessie.model.LogResponse.LogEntry> stream() throws org.projectnessie.error.NessieNotFoundException
      Description copied from interface: PagingBuilder
      Retrieve entries/results as a Java Stream, uses automatic paging.
      Specified by:
      stream in interface PagingBuilder<GetCommitLogBuilder,org.projectnessie.model.LogResponse,org.projectnessie.model.LogResponse.LogEntry>
      Throws:
      org.projectnessie.error.NessieNotFoundException
    • refName

      public GetCommitLogBuilder refName(String refName)
      Specified by:
      refName in interface OnReferenceBuilder<R extends OnReferenceBuilder<R>>
    • hashOnRef

      public GetCommitLogBuilder hashOnRef(String hashOnRef)
      Description copied from interface: OnReferenceBuilder
      Optional commit ID with an optional sequence of relative lookups. Relative lookups can be by-timestamp, by-n-th-predecessor or by-n-th-parent.

      Relative lookups are only supported for REST API v2 against servers announcing Nessie specification 2.1.0 for most functionalities.

      • Lookup by timestamp starts with * followed by the numeric value of the timestamp in milliseconds since epoch.
      • Lookup by n-th predecessor starts with ~ followed by the value for the n-th commit in the commit log.
      • Lookup by n-th parent starts with ^ followed by either 1, referencing the direct parent, or 2, referencing the merge parent.

      Valid values are:

      • ~10 -> the 10th parent from the HEAD
      • 11223344~10 -> the 10th parent of the commit 11223344
      • 11223344^2 -> the merge parent of the commit 11223344
      • 11223344~10^2 -> the merge parent of the 10th parent of the commit 11223344
      • 11223344~10^1 -> the direct parent of the 10th parent of the commit 11223344 - functionally equal to 11223344~11
      • 11223344*10000000000 -> the commit in the commit log starting at 11223344 with a commit-created timestamp of 10000000000 or less.
      • *10000000000 -> the commit in the commit log starting at HEAD with a commit-created timestamp of 10000000000 or less.
      Specified by:
      hashOnRef in interface OnReferenceBuilder<R extends OnReferenceBuilder<R>>