Struct googapis::google::devtools::resultstore::v2::result_store_upload_client::ResultStoreUploadClient[][src]

pub struct ResultStoreUploadClient<T> { /* fields omitted */ }
Expand description

This is the interface used to upload information to the ResultStore database, to update that information as necessary, and to make it immutable at the end.

This interface intentionally does not support user read-modify-write operations. They may corrupt data, and are too expensive. For the same reason, all upload RPCs will return no resource fields except name and ID. An uploader should hold as little state as possible in memory to avoid running out of memory.

Implementations

Compress requests with gzip.

This requires the server to support it otherwise it might respond with an error.

Enable decompressing responses with gzip.

Creates the given invocation.

This is not an implicitly idempotent API, so a request id is required to make it idempotent.

Returns an empty Invocation proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If an invocation with the same ID already exists.

Applies a standard update to the invocation identified by the given proto’s name. For all types of fields (primitive, message, or repeated), replaces them with the given proto fields if they are under the given field mask paths. Fields that match the mask but aren’t populated in the given invocation are cleared. This is an implicitly idempotent API.

Returns an empty Invocation proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If the invocation does not exist.
  • If the invocation is finalized.
  • If no field mask was given.

Applies a merge update to the invocation identified by the given proto’s name. For primitive and message fields, replaces them with the ones in the given proto if they are covered under the field mask paths. For repeated fields, merges to them with the given ones if they are covered under the field mask paths. This is not an implicitly idempotent API, so a request id is required to make it idempotent.

Returns an empty Invocation proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If the invocation does not exist.
  • If the invocation is finalized.
  • If no field mask was given.

Touches the invocation identified by the given proto’s name.

This is useful when you need to notify ResultStore that you haven’t abandoned the upload, since abandoned uploads will be automatically finalized after a set period.

An error will be reported in the following cases:

  • If the invocation does not exist.
  • If the invocation is finalized.

Declares the invocation with the given name as finalized and immutable by the user. It may still be mutated by post-processing. This is an implicitly idempotent API.

If an Invocation is not updated for 24 hours, some time after that this will be called automatically.

An error will be reported in the following cases:

  • If the invocation does not exist.

Deletes an immutable invocation (permanently) Note: this does not delete indirect data, e.g. files stored in other services.

An error will be reported in the following cases:

  • If the invocation does not exist.
  • If the invocation is not finalized. This can be retried until it is.

Creates the given target under the given parent invocation. The given target ID is URL encoded, converted to the full resource name, and assigned to the target’s name field. This is not an implicitly idempotent API, so a request id is required to make it idempotent.

Returns an empty Target proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If no target ID is provided.
  • If the parent invocation does not exist.
  • If the parent invocation is finalized.
  • If a target with the same name already exists.

Applies a standard update to the target identified by the given proto’s name. For all types of fields (primitive, message, or repeated), replaces them with the given proto fields if they are under the given field mask paths. Fields that match the mask but aren’t populated in the given target are cleared. This is an implicitly idempotent API.

Returns an empty Target proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If the target does not exist.
  • If the target or parent invocation is finalized.
  • If no field mask was given.

Applies a merge update to the target identified by the given proto’s name. For primitive and message fields, replaces them with the ones in the given proto if they are covered under the field mask paths. For repeated fields, merges to them with the given ones if they are covered under the field mask paths. This is not an implicitly idempotent API, so a request id is required to make it idempotent.

Returns an empty Target proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If the target does not exist.
  • If the target or parent invocation is finalized.
  • If no field mask was given.

Declares the target with the given name as finalized and immutable by the user. It may still be mutated by post-processing. This is an implicitly idempotent API.

An error will be reported in the following cases:

  • If the target does not exist.

Creates the given configured target under the given parent target. The given configured target ID is URL encoded, converted to the full resource name, and assigned to the configured target’s name field. This is not an implicitly idempotent API, so a request id is required to make it idempotent.

Returns an empty ConfiguredTarget proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If no config ID is provided.
  • If a configured target with the same ID already exists.
  • If the parent target does not exist.
  • If the parent target or invocation is finalized.

Applies a standard update to the configured target identified by the given proto’s name. For all types of fields (primitive, message, or repeated), replaces them with the given proto fields if they are under the given field mask paths. Fields that match the mask but aren’t populated in the given configured target are cleared. This is an implicitly idempotent API.

Returns an empty ConfiguredTarget proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If the configured target does not exist.
  • If the parent target or invocation is finalized.
  • If no field mask was given.

Applies a merge update to the configured target identified by the given proto’s name. For primitive and message fields, replaces them with the ones in the given proto if they are covered under the field mask paths. For repeated fields, merges to them with the given ones if they are covered under the field mask paths. This is not an implicitly idempotent API, so a request id is required to make it idempotent.

Returns an empty ConfiguredTarget proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If the configured target does not exist.
  • If the parent target or invocation is finalized.
  • If no field mask was given.

Declares the configured target with the given name as finalized and immutable by the user. It may still be mutated by post-processing. This is an implicitly idempotent API.

An error will be reported in the following cases:

  • If the configured target does not exist.

Creates the given action under the given configured target. The given action ID is URL encoded, converted to the full resource name, and assigned to the action’s name field. This is not an implicitly idempotent API, so a request id is required to make it idempotent.

Returns an empty Action proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If no action ID provided.
  • If the parent configured target does not exist.
  • If the parent target or invocation is finalized.
  • If an action with the same name already exists.

Applies a standard update to the action identified by the given proto’s name. For all types of fields (primitive, message, or repeated), replaces them with the given proto fields if they are under the given field mask paths. Fields that match the mask but aren’t populated in the given action are cleared. This is an implicitly idempotent API.

Returns an empty Action proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If the action does not exist.
  • If the parent target or invocation is finalized.
  • If no field mask was given.

Applies a merge update to the action identified by the given proto’s name. For primitive and message fields, replaces them with the ones in the given proto if they are covered under the field mask paths. For repeated fields, merges to them with the given ones if they are covered under the field mask paths. This is not an implicitly idempotent API, so a request id is required to make it idempotent.

Returns an empty Action proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If the action does not exist.
  • If the parent target or invocation is finalized.
  • If no field mask was given.

Creates the given configuration under the given parent invocation. The given configuration ID is URL encoded, converted to the full resource name, and assigned to the configuration’s name field. The configuration ID of “default” should be preferred for the default configuration in a single-config invocation. This is not an implicitly idempotent API, so a request id is required to make it idempotent.

Returns an empty Configuration proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If no configuration ID is provided.
  • If the parent invocation does not exist.
  • If the parent invocation is finalized.
  • If a configuration with the same name already exists.

Applies a standard update to the configuration identified by the given proto’s name. For all types of fields (primitive, message, or repeated), replaces them with the given proto fields if they are under the given field mask paths. Fields that match the mask but aren’t populated in the given configuration are cleared. This is an implicitly idempotent API.

Returns an empty Configuration proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If the configuration does not exist.
  • If the parent invocation is finalized.
  • If no field mask was given.
  • If a given field mask path is not valid.

Creates the given file set under the given parent invocation. The given file set ID is URL encoded, converted to the full resource name, and assigned to the file set’s name field. This is not an implicitly idempotent API, so a request id is required to make it idempotent.

Returns an empty FileSet proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If no file set ID is provided.
  • If a file set with the same name already exists.
  • If the parent invocation does not exist.
  • If the parent invocation is finalized.

Applies a standard update to the file set identified by the given proto’s name. For all types of fields (primitive, message, or repeated), replaces them with the given proto fields if they are under the given field mask paths. Fields that match the mask but aren’t populated in the given configuration are cleared. This is an implicitly idempotent API.

Returns an empty FileSet proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If the file set does not exist.
  • If the parent invocation is finalized.
  • If no field mask was given.
  • If a given field mask path is not valid.

Applies a merge update to the file set identified by the given proto’s name. For primitive and message fields, updates them with the ones in the given proto if they are covered under the field mask paths. For repeated fields, merges to them with the given ones if they are covered under the field mask paths. This is not an implicitly idempotent API, so a request id is required to make it idempotent.

Returns an empty FileSet proto with only the name and ID fields populated.

An error will be reported in the following cases:

  • If the file set does not exist.
  • If the parent invocation is finalized.
  • If a given field mask path is not valid.
  • If no field mask was given.

This is the RPC used for batch upload. It supports uploading multiple resources for an invocation in a transaction safe manner.

To use this RPC, the CreateInvocationRequest must have been provided a resume_token.

Combining batch upload with normal upload on a single Invocation is not supported. If an Invocation is created with a resume_token, all further calls must be through UploadBatch. If an Invocation is created without resume_token normal upload, all further upload calls must be through normal upload RPCs.

The recommend total size of UploadBatchRequest is 10 MiB. If it is too large, it may be rejected.

Provides a way to read the metadata for an invocation. The UploadMetadata could still be retrieved by this RPC even the Invocation has been finalized. This API requires setting a response FieldMask via ‘fields’ URL query parameter or X-Goog-FieldMask HTTP/gRPC header.

An error will be reported in the following case:

  • If the invocation does not exist.
  • If no field mask was given.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Performs the conversion.

Wrap the input message T in a tonic::Request

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more