Packages

Google Cloud Document AI API client library.

Current section

Files

Jump to
googly_document_ai lib googly document_ai model google_longrunning_operation.ex
Raw

lib/googly/document_ai/model/google_longrunning_operation.ex

# NOTE: This file is auto generated by googly. Do not edit it manually.
defmodule Googly.DocumentAI.Model.GoogleLongrunningOperation do
@moduledoc """
This resource represents a long-running operation that is the result of a network API call.
## Attributes
* `done` (*type:* `boolean()`) - If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
* `error` (*type:* `Googly.DocumentAI.Model.GoogleRpcStatus.t()`) - The error result of the operation in case of failure or cancellation.
* `metadata` (*type:* `map()`) - Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
* `name` (*type:* `String.t()`) - The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
* `response` (*type:* `map()`) - The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
"""
defstruct [:done, :error, :metadata, :name, :response]
@type t :: %__MODULE__{
done: boolean() | nil,
error: Googly.DocumentAI.Model.GoogleRpcStatus.t() | nil,
metadata: map() | nil,
name: String.t() | nil,
response: map() | nil
}
@wire %{}
@doc false
def __wire__, do: @wire
@doc false
def decode(nil), do: nil
def decode(list) when is_list(list), do: Enum.map(list, &decode/1)
def decode(m) do
%__MODULE__{
done: m["done"],
error: Googly.DocumentAI.Model.GoogleRpcStatus.decode(m["error"]),
metadata: m["metadata"],
name: m["name"],
response: m["response"]
}
end
end