Class ImmutableCommit.Builder

  • Enclosing class:
    ImmutableCommit

    @NotThreadSafe
    public static final class ImmutableCommit.Builder
    extends Object
    Builds instances of type ImmutableCommit. Initialize attributes and then invoke the build() method to create an immutable instance.

    Builder is not thread-safe and generally should not be stored in a field or collection, but instead used immediately to create instances.

    • Method Detail

      • from

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder from​(Commit instance)
        Fill a builder with attribute values from the provided com.spotify.github.v3.repos.Commit instance.
        Parameters:
        instance - The instance from which to copy values
        Returns:
        this builder for use in a chained invocation
      • from

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder from​(ShaLink instance)
        Fill a builder with attribute values from the provided com.spotify.github.v3.git.ShaLink instance.
        Parameters:
        instance - The instance from which to copy values
        Returns:
        this builder for use in a chained invocation
      • from

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder from​(CommitItem instance)
        Fill a builder with attribute values from the provided com.spotify.github.v3.repos.CommitItem instance.
        Parameters:
        instance - The instance from which to copy values
        Returns:
        this builder for use in a chained invocation
      • sha

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder sha​(@Nullable
                                                 String sha)
        Initializes the value for the sha attribute.
        Parameters:
        sha - The value for sha (can be null)
        Returns:
        this builder for use in a chained invocation
      • url

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder url​(@Nullable
                                                 URI url)
        Initializes the value for the url attribute.
        Parameters:
        url - The value for url (can be null)
        Returns:
        this builder for use in a chained invocation
      • commit

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder commit​(@Nullable
                                                    Commit commit)
        Initializes the value for the commit attribute.
        Parameters:
        commit - The value for commit (can be null)
        Returns:
        this builder for use in a chained invocation
      • htmlUrl

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder htmlUrl​(@Nullable
                                                     URI htmlUrl)
        Initializes the value for the htmlUrl attribute.
        Parameters:
        htmlUrl - The value for htmlUrl (can be null)
        Returns:
        this builder for use in a chained invocation
      • commentsUrl

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder commentsUrl​(@Nullable
                                                         URI commentsUrl)
        Initializes the value for the commentsUrl attribute.
        Parameters:
        commentsUrl - The value for commentsUrl (can be null)
        Returns:
        this builder for use in a chained invocation
      • author

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder author​(User author)
        Initializes the optional value author to author.
        Parameters:
        author - The value for author
        Returns:
        this builder for chained invocation
      • author

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder author​(Optional<? extends User> author)
        Initializes the optional value author to author.
        Parameters:
        author - The value for author
        Returns:
        this builder for use in a chained invocation
      • addParents

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder addParents​(ShaLink element)
        Adds one element to parents list.
        Parameters:
        element - A parents element
        Returns:
        this builder for use in a chained invocation
      • addParents

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder addParents​(ShaLink... elements)
        Adds elements to parents list.
        Parameters:
        elements - An array of parents elements
        Returns:
        this builder for use in a chained invocation
      • parents

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder parents​(@Nullable
                                                     Iterable<? extends ShaLink> elements)
        Sets or replaces all elements for parents list.
        Parameters:
        elements - An iterable of parents elements
        Returns:
        this builder for use in a chained invocation
      • addAllParents

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder addAllParents​(Iterable<? extends ShaLink> elements)
        Adds elements to parents list.
        Parameters:
        elements - An iterable of parents elements
        Returns:
        this builder for use in a chained invocation
      • putStats

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder putStats​(String key,
                                                      int value)
        Put one entry to the stats map.
        Parameters:
        key - The key in the stats map
        value - The associated value in the stats map
        Returns:
        this builder for use in a chained invocation
      • putStats

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder putStats​(Map.Entry<String,​? extends Integer> entry)
        Put one entry to the stats map. Nulls are not permitted
        Parameters:
        entry - The key and value entry
        Returns:
        this builder for use in a chained invocation
      • stats

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder stats​(@Nullable
                                                   Map<String,​? extends Integer> entries)
        Sets or replaces all mappings from the specified map as entries for the stats map. Nulls are not permitted as keys or values, but parameter itself can be null
        Parameters:
        entries - The entries that will be added to the stats map
        Returns:
        this builder for use in a chained invocation
      • putAllStats

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder putAllStats​(Map<String,​? extends Integer> entries)
        Put all mappings from the specified map as entries to stats map. Nulls are not permitted
        Parameters:
        entries - The entries that will be added to the stats map
        Returns:
        this builder for use in a chained invocation
      • addFiles

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder addFiles​(File element)
        Adds one element to files list.
        Parameters:
        element - A files element
        Returns:
        this builder for use in a chained invocation
      • addFiles

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder addFiles​(File... elements)
        Adds elements to files list.
        Parameters:
        elements - An array of files elements
        Returns:
        this builder for use in a chained invocation
      • files

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder files​(@Nullable
                                                   Iterable<? extends File> elements)
        Sets or replaces all elements for files list.
        Parameters:
        elements - An iterable of files elements
        Returns:
        this builder for use in a chained invocation
      • addAllFiles

        @CanIgnoreReturnValue
        public final ImmutableCommit.Builder addAllFiles​(Iterable<? extends File> elements)
        Adds elements to files list.
        Parameters:
        elements - An iterable of files elements
        Returns:
        this builder for use in a chained invocation