1 // Copyright 2019 Google LLC
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
7 // https://www.apache.org/licenses/LICENSE-2.0
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
15 // Note: this file is purely for documentation. Any contents are not expected
16 // to be loaded as the JS file.
19 * This resource represents a long-running operation that is the result of a
22 * @property {string} name
23 * The server-assigned name, which is only unique within the same service that
24 * originally returns it. If you use the default HTTP mapping, the
25 * `name` should have the format of `operations/some/unique/name`.
27 * @property {Object} metadata
28 * Service-specific metadata associated with the operation. It typically
29 * contains progress information and common metadata such as create time.
30 * Some services might not provide such metadata. Any method that returns a
31 * long-running operation should document the metadata type, if any.
33 * This object should have the same structure as [Any]{@link google.protobuf.Any}
35 * @property {boolean} done
36 * If the value is `false`, it means the operation is still in progress.
37 * If `true`, the operation is completed, and either `error` or `response` is
40 * @property {Object} error
41 * The error result of the operation in case of failure or cancellation.
43 * This object should have the same structure as [Status]{@link google.rpc.Status}
45 * @property {Object} response
46 * The normal response of the operation in case of success. If the original
47 * method returns no data on success, such as `Delete`, the response is
48 * `google.protobuf.Empty`. If the original method is standard
49 * `Get`/`Create`/`Update`, the response should be the resource. For other
50 * methods, the response should have the type `XxxResponse`, where `Xxx`
51 * is the original method name. For example, if the original method name
52 * is `TakeSnapshot()`, the inferred response type is
53 * `TakeSnapshotResponse`.
55 * This object should have the same structure as [Any]{@link google.protobuf.Any}
58 * @memberof google.longrunning
59 * @see [google.longrunning.Operation definition in proto format]{@link https://github.com/googleapis/googleapis/blob/master/google/longrunning/operations.proto}
62 // This is for documentation. Actual contents will be loaded by gRPC.