Namespace google::cloud (2.32.0-rc)

Contains all the Google Cloud C++ Library APIs.

Classes

AsyncOperation

Represents a pending asynchronous operation.

AsyncStreamingReadWriteRpc<Request, Response>

A streaming read-write RPC.

BackgroundThreads

A object representing the background threads available to a Client.

CompletionQueue

Call the functor associated with asynchronous operations when they complete.

ConnectionOptions<ConnectionTraits>

The configuration parameters for client connections.

Credentials

An opaque representation of the authentication configuration.

ErrorInfo

Describes the cause of the error with structured details.

future<T>

Implement ISO/IEC TS 19571:2016 future<T>.

future< void >

Specialize ISO/IEC TS 19571:2016 future for void.

GenericPollingPolicy<Retry, Backoff>

Construct a polling policy from existing Retry and Backoff policies.

KmsKeyName

This class identifies a Google Cloud KMS Key.

Location

A representation of a Cloud Location.

LogBackend

The logging backend interface.

Logger<bool>

Define the class to capture a log message.

Logger< false >

Define the logger for a disabled log level.

LogSink

A sink to receive log records.

Options

A class that holds option structs indexed by their type.

PollingPolicy

Control the Cloud C++ client library behavior with respect to polling on long running operations.

Project

This class identifies a Cloud Project.

promise<T>

Implement ISO/IEC TS 19571:2016 promise<T>.

promise< void >

Specialize ISO/IEC TS 19571:2016 promise for void.

ProxyConfig

The configuration for a HTTP Proxy.

RetryPolicy

Define the interface for retry policies.

RuntimeStatusError

A runtime error that wraps a google::cloud::Status.

Status

Represents success or an error with info about the error.

StatusOr<T>

Holds a value or a Status indicating why there is no value.

StreamRange<T>

A StreamRange<T> is a range of StatusOr<T> where the end-of-stream is indicated by a non-OK Status.

TracingOptions

The configuration parameters for RPC/protobuf tracing.

Structs

AccessToken

Represents an access token with a known expiration time.

AccessTokenLifetimeOption

Configure the access token lifetime.

AsyncTimerResult

The result of an async timer operation.

AuthorityOption

Configure the "authority" attribute.

CARootsFilePathOption

Configures a custom CA (Certificates Authority) certificates file.

CustomHeadersOption

An option to inject custom headers into the request.

DelegatesOption

Configure the delegates for MakeImpersonateServiceAccountCredentials()

EnableServerRetriesOption

Let the server make retry decisions, when applicable.

EndpointOption

Change the endpoint.

ExperimentalTag

An argument type to indicate experimental functions.

FieldMaskOption

Configure server-side filtering.

GrpcBackgroundThreadPoolSizeOption

The size of the background thread pool.

GrpcBackgroundThreadsFactoryOption

Changes the BackgroundThreadsFactory.

GrpcChannelArgumentsNativeOption

The native grpc::ChannelArguments object.

GrpcChannelArgumentsOption

A string-string map of arguments for grpc::ChannelArguments::SetString.

GrpcCompletionQueueOption

The CompletionQueue to use for background gRPC work.

GrpcCompressionAlgorithmOption

The gRPC compression algorithm used by clients/operations configured with this object.

GrpcCredentialOption

The gRPC credentials used by clients configured with this object.

GrpcNumChannelsOption

The number of transport channels to create.

GrpcTracingOptionsOption

The TracingOptions to use when printing grpc protocol buffer messages.

LoggingComponentsOption

Enable logging for a set of components.

LogRecord

Represents a single log message.

NoAwaitTag

NullStream

Implements operator<< for all types, without any effect.

OpenTelemetryTracingOption

Enables tracing with OpenTelemetry

ProxyOption

Configure the HTTP Proxy.

QuotaUserOption

Configure the QuotaUser system parameter.

RestTracingOptionsOption

The TracingOptions to use when printing REST transport http messages.

RpcMetadata

RPC request metadata.

ScopesOption

Configure the scopes for MakeImpersonateServiceAccountCredentials()

ServerTimeoutOption

Timeout for the server to finish processing the request.

UnifiedCredentialsOption

A wrapper to store credentials into an options.

UserAgentProductsOption

User-agent products to include with each request.

UserIpOption

Configure the UserIp system parameter.

UserProjectOption

Specifies a project for quota and billing purposes.

Enums

Idempotency

Whether a request is idempotent.

Severity

Define the severity levels for Google Cloud Platform C++ Libraries logging.

StatusCode

Well-known status codes with grpc::StatusCode-compatible values.

Functions

make_ready_future(T &&)

Create a future that is immediately ready.

Parameters
Name Description
t
typename T
Returns
Type Description
auto

make_ready_future()

Create a future that is immediately ready.

Returns
Type Description
future< void >

MakeStatusFromRpcError(grpc::Status const &)

Creates a google::cloud::Status from a grpc::Status.

Parameter
Name Description
status
Returns
Type Description
google::cloud::Status

MakeStatusFromRpcError(grpc::StatusCode, std::string)

Creates a google::cloud::Status from a grpc::StatusCode and description.

Parameters
Name Description
code
what
Returns
Type Description
google::cloud::Status

MakeStatusFromRpcError(google::rpc::Status const &)

Creates a google::cloud::Status from a google:rpc::Status proto.

Some gRPC services return the google::rpc::Status proto for errors. The libraries in google-cloud-cpp represent these errors using a google::cloud::Status.

Parameter
Name Description
proto
Returns
Type Description
google::cloud::Status

MakeKmsKeyName(std::string const &)

Constructs a KmsKeyName from the given full_name.

Returns a non-OK Status if full_name is improperly formed.

Parameter
Name Description
full_name
Returns
Type Description
StatusOr< KmsKeyName >

MakeLocation(std::string const &)

Constructs a Location from the given full_name.

Returns a non-OK Status if full_name is improperly formed.

Parameter
Name Description
full_name
Returns
Type Description
StatusOr< Location >

ParseSeverity(std::string const &)

Convert a human-readable representation to a Severity.

Parameter
Name Description
name
Returns
Type Description
absl::optional< Severity >

MakeProject(std::string const &)

Constructs a Project from the given full_name.

Returns a non-OK Status if full_name is improperly formed.

Parameter
Name Description
full_name
Returns
Type Description
StatusOr< Project >

StatusCodeToString(StatusCode)

Convert code to a human readable string.

Parameter
Name Description
code
Returns
Type Description
std::string

make_status_or(T)

Parameters
Name Description
rhs
typename T
Returns
Type Description
StatusOr< T >

AddUniverseDomainOption(ExperimentalTag, Options)

Creates an Options containing the UnifiedCredentialsOption and its corresponding UniverseDomainOption.

Uses the UnifiedCredentialsOption in options or ApplicationDefaultCredentials if UnifiedCredentialsOption is not found, and retrieves the universe_domain from those Credentials and sets the UniverseDomainOption to the result.

If the Metadata Server needs to be called, this function checks the options for the UniverseDomainRetryPolicyOption and UniverseDomainBackoffPolicyOption. If either policy option is not present a default policy is used for the corresponding policy option.

If everything succeeds, the Options returned contain both the UnifiedCredentialsOption and the UniverseDomainOption. If the RetryPolicy becomes exhausted or other errors are encountered, that Status is returned.

Parameters
Name Description
tag
options
Returns
Type Description
StatusOr< Options >

GetUniverseDomain(ExperimentalTag, Credentials const &, Options const &)

Interrogates the provided credentials for the universe_domain.

If the Metadata Server needs to be called, this function checks the options for the UniverseDomainRetryPolicyOption and UniverseDomainBackoffPolicyOption. If either policy option is not present a default policy is used for the corresponding policy option.

If successful the universe_domain value is returned, otherwise a Status indicating the error encountered is returned.

Parameters
Name Description
tag
credentials
options
Returns
Type Description
StatusOr< std::string >

version_major()

The Google Cloud C++ Client major version.

Returns
Type Description
int constexpr

version_minor()

The Google Cloud C++ Client minor version.

Returns
Type Description
int constexpr

version_patch()

The Google Cloud C++ Client patch version.

Returns
Type Description
int constexpr

version_pre_release()

The Google Cloud C++ Client pre-release version.

Returns
Type Description
char const *

version()

A single integer representing the Major/Minor/Patch version.

Returns
Type Description
int constexpr

version_string()

The version as a string, in MAJOR.MINOR.PATCH[-PRE][+gitrev] format.

Returns
Type Description
std::string

Type Aliases

CommonOptionList

Alias Of: OptionList< EndpointOption, UserAgentProductsOption, LoggingComponentsOption, UserProjectOption, AuthorityOption, CustomHeadersOption >

A list of all the common options.

BackoffPolicy

Alias Of: ::google::cloud::internal::BackoffPolicy

The base class for backoff policies.

ExponentialBackoffPolicy

Alias Of: google::cloud::internal::ExponentialBackoffPolicy

A truncated exponential backoff policy with randomized periods.

UnifiedCredentialsOptionList

Alias Of: OptionList< AccessTokenLifetimeOption, CARootsFilePathOption, DelegatesOption, ScopesOption, LoggingComponentsOption, UnifiedCredentialsOption >

A list of options related to authentication.

BackgroundThreadsFactory

Alias Of: std::function< std::unique_ptr< BackgroundThreads >()>

GrpcOptionList

Alias Of: OptionList< GrpcCredentialOption, GrpcCompressionAlgorithmOption, GrpcNumChannelsOption, GrpcChannelArgumentsOption, GrpcChannelArgumentsNativeOption, GrpcTracingOptionsOption, GrpcBackgroundThreadPoolSizeOption, GrpcCompletionQueueOption, GrpcBackgroundThreadsFactoryOption >

A list of all the gRPC options.

IamUpdater

Alias Of: std::function< absl::optional< google::iam::v1::Policy >( google::iam::v1::Policy)>

Used in the SetIamPolicy() read-modify-write cycles where an etag helps prevent simultaneous updates of a policy from overwriting each other.

The updater is called with a recently fetched policy, and should either return an empty optional if no changes are required, or return a new policy to be set. In the latter case the updater should either (1) set the etag of the returned policy to that of the recently fetched policy (strongly suggested), or (2) not set the etag at all.

In case (1) if the etag does not match the existing policy (i.e., there has been an intermediate update), this update is dropped and a new cycle is initiated. In case (2) the existing policy is overwritten blindly.

optional

Alias Of: absl::optional< T >

Alias template for google::cloud::optional.

OptionList

Alias Of: internal::TypeList< T... >

A template to hold a list of "option" types.

This can be a useful way to create meaningful lists of options. For example, there could be a list containing all the gRPC options. Or a list of all ProductX options. This gives us a way to link to lists of options with doxygen, and to do some checking about what options a function may expect.

RestOptionList

Alias Of: ::google::cloud::OptionList< QuotaUserOption, RestTracingOptionsOption, ServerTimeoutOption, UserIpOption >

The complete list of options accepted by CurlRestClient