All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.spotify.github.v3.issues.ImmutableIssue Maven / Gradle / Ivy

The newest version!
package com.spotify.github.v3.issues;

import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.google.errorprone.annotations.CanIgnoreReturnValue;
import com.google.errorprone.annotations.Var;
import com.spotify.github.CloseTracking;
import com.spotify.github.GitHubInstant;
import com.spotify.github.UpdateTracking;
import com.spotify.github.v3.Milestone;
import com.spotify.github.v3.User;
import java.net.URI;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.CheckReturnValue;
import javax.annotation.Nullable;
import javax.annotation.ParametersAreNonnullByDefault;
import javax.annotation.concurrent.Immutable;
import javax.annotation.concurrent.NotThreadSafe;
import org.immutables.value.Generated;

/**
 * Immutable implementation of {@link Issue}.
 * 

* Use the builder to create immutable instances: * {@code ImmutableIssue.builder()}. */ @Generated(from = "Issue", generator = "Immutables") @SuppressWarnings({"all"}) @ParametersAreNonnullByDefault @javax.annotation.processing.Generated("org.immutables.processor.ProxyProcessor") @Immutable @CheckReturnValue public final class ImmutableIssue implements Issue { private final @Nullable GitHubInstant createdAt; private final @Nullable GitHubInstant updatedAt; private final @Nullable GitHubInstant closedAt; private final @Nullable Long id; private final @Nullable URI url; private final @Nullable URI eventsUrl; private final @Nullable URI repositoryUrl; private final @Nullable String labelsUrl; private final @Nullable URI commentsUrl; private final @Nullable URI htmlUrl; private final @Nullable Long number; private final @Nullable String state; private final @Nullable String title; private final @Nullable String body; private final @Nullable User user; private final @Nullable List

   * ImmutableIssue.builder()
   *    .createdAt(com.spotify.github.GitHubInstant | null) // nullable {@link Issue#createdAt() createdAt}
   *    .updatedAt(com.spotify.github.GitHubInstant | null) // nullable {@link Issue#updatedAt() updatedAt}
   *    .closedAt(com.spotify.github.GitHubInstant) // optional {@link Issue#closedAt() closedAt}
   *    .id(Long | null) // nullable {@link Issue#id() id}
   *    .url(java.net.URI | null) // nullable {@link Issue#url() url}
   *    .eventsUrl(java.net.URI) // optional {@link Issue#eventsUrl() eventsUrl}
   *    .repositoryUrl(java.net.URI) // optional {@link Issue#repositoryUrl() repositoryUrl}
   *    .labelsUrl(String | null) // nullable {@link Issue#labelsUrl() labelsUrl}
   *    .commentsUrl(java.net.URI | null) // nullable {@link Issue#commentsUrl() commentsUrl}
   *    .htmlUrl(java.net.URI | null) // nullable {@link Issue#htmlUrl() htmlUrl}
   *    .number(Long | null) // nullable {@link Issue#number() number}
   *    .state(String | null) // nullable {@link Issue#state() state}
   *    .title(String | null) // nullable {@link Issue#title() title}
   *    .body(String) // optional {@link Issue#body() body}
   *    .user(com.spotify.github.v3.User | null) // nullable {@link Issue#user() user}
   *    .labels(List<com.spotify.github.v3.issues.Label> | null) // nullable {@link Issue#labels() labels}
   *    .assignee(com.spotify.github.v3.User) // optional {@link Issue#assignee() assignee}
   *    .milestone(com.spotify.github.v3.Milestone) // optional {@link Issue#milestone() milestone}
   *    .locked(Boolean | null) // nullable {@link Issue#locked() locked}
   *    .comments(Integer | null) // nullable {@link Issue#comments() comments}
   *    .pullRequest(com.spotify.github.v3.issues.PullRequest) // optional {@link Issue#pullRequest() pullRequest}
   *    .build();
   * 
* @return A new ImmutableIssue builder */ public static ImmutableIssue.Builder builder() { return new ImmutableIssue.Builder(); } /** * Builds instances of type {@link ImmutableIssue ImmutableIssue}. * Initialize attributes and then invoke the {@link #build()} method to create an * immutable instance. *

{@code Builder} is not thread-safe and generally should not be stored in a field or collection, * but instead used immediately to create instances. */ @Generated(from = "Issue", generator = "Immutables") @NotThreadSafe public static final class Builder { private @Nullable GitHubInstant createdAt; private @Nullable GitHubInstant updatedAt; private @Nullable GitHubInstant closedAt; private @Nullable Long id; private @Nullable URI url; private @Nullable URI eventsUrl; private @Nullable URI repositoryUrl; private @Nullable String labelsUrl; private @Nullable URI commentsUrl; private @Nullable URI htmlUrl; private @Nullable Long number; private @Nullable String state; private @Nullable String title; private @Nullable String body; private @Nullable User user; private List





© 2015 - 2025 Weber Informatics LLC | Privacy Policy