Class Status


  • @Immutable
    public final class Status
    extends java.lang.Object
    Defines the status of a Span by providing a standard Status.CanonicalCode in conjunction with an optional descriptive message. Instances of Status are created by starting with the template for the appropriate Status.CanonicalCode and supplementing it with additional information: Status.NOT_FOUND.withDescription("Could not find 'important_file.txt'");
    Since:
    0.5
    • Field Detail

      • STATUS_LIST

        private static final java.util.List<Status> STATUS_LIST
      • OK

        public static final Status OK
        The operation completed successfully.
        Since:
        0.5
      • CANCELLED

        public static final Status CANCELLED
        The operation was cancelled (typically by the caller).
        Since:
        0.5
      • NOT_FOUND

        public static final Status NOT_FOUND
        Some requested entity (e.g., file or directory) was not found.
        Since:
        0.5
      • ALREADY_EXISTS

        public static final Status ALREADY_EXISTS
        Some entity that we attempted to create (e.g., file or directory) already exists.
        Since:
        0.5
      • UNAUTHENTICATED

        public static final Status UNAUTHENTICATED
        The request does not have valid authentication credentials for the operation.
        Since:
        0.5
      • RESOURCE_EXHAUSTED

        public static final Status RESOURCE_EXHAUSTED
        Some resource has been exhausted, perhaps a per-user quota, or perhaps the entire file system is out of space.
        Since:
        0.5
      • ABORTED

        public static final Status ABORTED
        The operation was aborted, typically due to a concurrency issue like sequencer check failures, transaction aborts, etc. See Status.CanonicalCode.ABORTED.
        Since:
        0.5
      • UNIMPLEMENTED

        public static final Status UNIMPLEMENTED
        Operation is not implemented or not supported/enabled in this service.
        Since:
        0.5
      • DATA_LOSS

        public static final Status DATA_LOSS
        Unrecoverable data loss or corruption.
        Since:
        0.5
      • description

        @Nullable
        private final java.lang.String description
    • Constructor Detail

      • Status

        private Status​(Status.CanonicalCode canonicalCode,
                       @Nullable
                       java.lang.String description)
    • Method Detail

      • buildStatusList

        private static java.util.List<Status> buildStatusList()
      • withDescription

        public Status withDescription​(@Nullable
                                      java.lang.String description)
        Creates a derived instance of Status with the given description.
        Parameters:
        description - the new description of the Status.
        Returns:
        The newly created Status with the given description.
        Since:
        0.5
      • getCanonicalCode

        public Status.CanonicalCode getCanonicalCode()
        Returns the canonical status code.
        Returns:
        the canonical status code.
        Since:
        0.5
      • getDescription

        @Nullable
        public java.lang.String getDescription()
        Returns the description of this Status for human consumption.
        Returns:
        the description of this Status.
        Since:
        0.5
      • isOk

        public boolean isOk()
        Returns true if this Status is OK, i.e., not an error.
        Returns:
        true if this Status is OK.
        Since:
        0.5
      • equals

        public boolean equals​(@Nullable
                              java.lang.Object obj)
        Equality on Statuses is not well defined. Instead, do comparison based on their CanonicalCode with getCanonicalCode(). The description of the Status is unlikely to be stable, and additional fields may be added to Status in the future.
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Hash codes on Statuses are not well defined.
        Overrides:
        hashCode in class java.lang.Object
        See Also:
        equals(java.lang.Object)
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object