Class ServiceManagerClient (2.32.0-rc)

Equality

Instances of this class created via copy-construction or copy-assignment always compare equal. Instances created with equal std::shared_ptr<*Connection> objects compare equal. Objects that compare equal share the same underlying resources.

Performance

Creating a new instance of this class is a relatively expensive operation, new objects establish new connections to the service. In contrast, copy-construction, move-construction, and the corresponding assignment operations are relatively efficient as the copies share all underlying resources.

Thread Safety

Concurrent access to different instances of this class, even if they compare equal, is guaranteed to work. Two or more threads operating on the same instance of this class is not guaranteed to work. Since copy-construction and move-construction is a relatively efficient operation, consider using such a copy when using this class from multiple threads.

Constructors

ServiceManagerClient(ServiceManagerClient const &)

Copy and move support

Parameter
Name Description
ServiceManagerClient const &

ServiceManagerClient(ServiceManagerClient &&)

Copy and move support

Parameter
Name Description
ServiceManagerClient &&

ServiceManagerClient(std::shared_ptr< ServiceManagerConnection >, Options)

Parameters
Name Description
connection std::shared_ptr< ServiceManagerConnection >
opts Options

Operators

operator=(ServiceManagerClient const &)

Copy and move support

Parameter
Name Description
ServiceManagerClient const &
Returns
Type Description
ServiceManagerClient &

operator=(ServiceManagerClient &&)

Copy and move support

Parameter
Name Description
ServiceManagerClient &&
Returns
Type Description
ServiceManagerClient &

Functions

ListServices(google::api::servicemanagement::v1::ListServicesRequest, Options)

Lists managed services.

Returns all public services. For authenticated users, also returns all services the calling user has "servicemanagement.services.get" permission for.

Parameters
Name Description
request google::api::servicemanagement::v1::ListServicesRequest

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.api.servicemanagement.v1.ListServicesRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StreamRange< google::api::servicemanagement::v1::ManagedService >

a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has begin() and end() member functions returning a iterator class meeting the input iterator requirements. The value type for this iterator is a StatusOr as the iteration may fail even after some values are retrieved successfully, for example, if there is a network disconnect. An empty set of results does not indicate an error, it indicates that there are no resources meeting the request criteria. On a successful iteration the StatusOr<T> contains elements of type google.api.servicemanagement.v1.ManagedService, or rather, the C++ class generated by Protobuf from that type. Please consult the Protobuf documentation for details on the Protobuf mapping rules.

GetService(std::string const &, Options)

Gets a managed service.

Authentication is required unless the service is public.

Parameters
Name Description
service_name std::string const &

Required. The name of the service. See the ServiceManager overview for naming requirements. For example: example.googleapis.com.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StatusOr< google::api::servicemanagement::v1::ManagedService >

the result of the RPC. The response message type (google.api.servicemanagement.v1.ManagedService) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

GetService(google::api::servicemanagement::v1::GetServiceRequest const &, Options)

Gets a managed service.

Authentication is required unless the service is public.

Parameters
Name Description
request google::api::servicemanagement::v1::GetServiceRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.api.servicemanagement.v1.GetServiceRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StatusOr< google::api::servicemanagement::v1::ManagedService >

the result of the RPC. The response message type (google.api.servicemanagement.v1.ManagedService) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

CreateService(google::api::servicemanagement::v1::ManagedService const &, Options)

Creates a new managed service.

A managed service is immutable, and is subject to mandatory 30-day data retention. You cannot move a service or recreate it within 30 days after deletion.

One producer project can own no more than 500 services. For security and reliability purposes, a production service should be hosted in a dedicated producer project.

Operation<response: ManagedService>

Parameters
Name Description
service google::api::servicemanagement::v1::ManagedService const &

Required. Initial values for the service resource.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
future< StatusOr< google::api::servicemanagement::v1::ManagedService > >

A future that becomes satisfied when the LRO (Long Running Operation) completes or the polling policy in effect for this call is exhausted. The future is satisfied with an error if the LRO completes with an error or the polling policy is exhausted. In this case the StatusOr returned by the future contains the error. If the LRO completes successfully the value of the future contains the LRO's result. For this RPC the result is a google.api.servicemanagement.v1.ManagedService proto message. The C++ class representing this message is created by Protobuf, using the Protobuf mapping rules.

CreateService(NoAwaitTag, google::api::servicemanagement::v1::ManagedService const &, Options)

Creates a new managed service.

Specifying the NoAwaitTag immediately returns the [google::longrunning::Operation] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.

Parameters
Name Description
NoAwaitTag
service google::api::servicemanagement::v1::ManagedService const &
opts Options
Returns
Type Description
StatusOr< google::longrunning::Operation >

CreateService(google::api::servicemanagement::v1::CreateServiceRequest const &, Options)

Creates a new managed service.

A managed service is immutable, and is subject to mandatory 30-day data retention. You cannot move a service or recreate it within 30 days after deletion.

One producer project can own no more than 500 services. For security and reliability purposes, a production service should be hosted in a dedicated producer project.

Operation<response: ManagedService>

Parameters
Name Description
request google::api::servicemanagement::v1::CreateServiceRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.api.servicemanagement.v1.CreateServiceRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
future< StatusOr< google::api::servicemanagement::v1::ManagedService > >

A future that becomes satisfied when the LRO (Long Running Operation) completes or the polling policy in effect for this call is exhausted. The future is satisfied with an error if the LRO completes with an error or the polling policy is exhausted. In this case the StatusOr returned by the future contains the error. If the LRO completes successfully the value of the future contains the LRO's result. For this RPC the result is a google.api.servicemanagement.v1.ManagedService proto message. The C++ class representing this message is created by Protobuf, using the Protobuf mapping rules.

CreateService(NoAwaitTag, google::api::servicemanagement::v1::CreateServiceRequest const &, Options)

Creates a new managed service.

Specifying the NoAwaitTag immediately returns the [google::longrunning::Operation] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.

Parameters
Name Description
NoAwaitTag
request google::api::servicemanagement::v1::CreateServiceRequest const &
opts Options
Returns
Type Description
StatusOr< google::longrunning::Operation >

CreateService(google::longrunning::Operation const &, Options)

Creates a new managed service.

This method accepts a google::longrunning::Operation that corresponds to a previously started Long Running Operation (LRO) and polls the status of the LRO in the background.

Parameters
Name Description
operation google::longrunning::Operation const &
opts Options
Returns
Type Description
future< StatusOr< google::api::servicemanagement::v1::ManagedService > >

DeleteService(std::string const &, Options)

Deletes a managed service.

This method will change the service to the Soft-Delete state for 30 days. Within this period, service producers may call UndeleteService to restore the service. After 30 days, the service will be permanently deleted.

Operation<response: google.protobuf.Empty>

Parameters
Name Description
service_name std::string const &

Required. The name of the service. See the overview for naming requirements. For example: example.googleapis.com.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
future< StatusOr< google::api::servicemanagement::v1::OperationMetadata > >

A future that becomes satisfied when the LRO (Long Running Operation) completes or the polling policy in effect for this call is exhausted. The future is satisfied with an error if the LRO completes with an error or the polling policy is exhausted. In this case the StatusOr returned by the future contains the error. If the LRO completes successfully the value of the future contains the LRO's result. For this RPC the result is a google.api.servicemanagement.v1.OperationMetadata proto message. The C++ class representing this message is created by Protobuf, using the Protobuf mapping rules.

DeleteService(NoAwaitTag, std::string const &, Options)

Deletes a managed service.

Specifying the NoAwaitTag immediately returns the [google::longrunning::Operation] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.

Parameters
Name Description
NoAwaitTag
service_name std::string const &
opts Options
Returns
Type Description
StatusOr< google::longrunning::Operation >

DeleteService(google::api::servicemanagement::v1::DeleteServiceRequest const &, Options)

Deletes a managed service.

This method will change the service to the Soft-Delete state for 30 days. Within this period, service producers may call UndeleteService to restore the service. After 30 days, the service will be permanently deleted.

Operation<response: google.protobuf.Empty>

Parameters
Name Description
request google::api::servicemanagement::v1::DeleteServiceRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.api.servicemanagement.v1.DeleteServiceRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
future< StatusOr< google::api::servicemanagement::v1::OperationMetadata > >

A future that becomes satisfied when the LRO (Long Running Operation) completes or the polling policy in effect for this call is exhausted. The future is satisfied with an error if the LRO completes with an error or the polling policy is exhausted. In this case the StatusOr returned by the future contains the error. If the LRO completes successfully the value of the future contains the LRO's result. For this RPC the result is a google.api.servicemanagement.v1.OperationMetadata proto message. The C++ class representing this message is created by Protobuf, using the Protobuf mapping rules.

DeleteService(NoAwaitTag, google::api::servicemanagement::v1::DeleteServiceRequest const &, Options)

Deletes a managed service.

Specifying the NoAwaitTag immediately returns the [google::longrunning::Operation] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.

Parameters
Name Description
NoAwaitTag
request google::api::servicemanagement::v1::DeleteServiceRequest const &
opts Options
Returns
Type Description
StatusOr< google::longrunning::Operation >

DeleteService(google::longrunning::Operation const &, Options)

Deletes a managed service.

This method accepts a google::longrunning::Operation that corresponds to a previously started Long Running Operation (LRO) and polls the status of the LRO in the background.

Parameters
Name Description
operation google::longrunning::Operation const &
opts Options
Returns
Type Description
future< StatusOr< google::api::servicemanagement::v1::OperationMetadata > >

UndeleteService(std::string const &, Options)

Revives a previously deleted managed service.

The method restores the service using the configuration at the time the service was deleted. The target service must exist and must have been deleted within the last 30 days.

Operation<response: UndeleteServiceResponse>

Parameters
Name Description
service_name std::string const &

Required. The name of the service. See the overview for naming requirements. For example: example.googleapis.com.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
future< StatusOr< google::api::servicemanagement::v1::UndeleteServiceResponse > >

A future that becomes satisfied when the LRO (Long Running Operation) completes or the polling policy in effect for this call is exhausted. The future is satisfied with an error if the LRO completes with an error or the polling policy is exhausted. In this case the StatusOr returned by the future contains the error. If the LRO completes successfully the value of the future contains the LRO's result. For this RPC the result is a google.api.servicemanagement.v1.UndeleteServiceResponse proto message. The C++ class representing this message is created by Protobuf, using the Protobuf mapping rules.

UndeleteService(NoAwaitTag, std::string const &, Options)

Revives a previously deleted managed service.

Specifying the NoAwaitTag immediately returns the [google::longrunning::Operation] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.

Parameters
Name Description
NoAwaitTag
service_name std::string const &
opts Options
Returns
Type Description
StatusOr< google::longrunning::Operation >

UndeleteService(google::api::servicemanagement::v1::UndeleteServiceRequest const &, Options)

Revives a previously deleted managed service.

The method restores the service using the configuration at the time the service was deleted. The target service must exist and must have been deleted within the last 30 days.

Operation<response: UndeleteServiceResponse>

Parameters
Name Description
request google::api::servicemanagement::v1::UndeleteServiceRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.api.servicemanagement.v1.UndeleteServiceRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
future< StatusOr< google::api::servicemanagement::v1::UndeleteServiceResponse > >

A future that becomes satisfied when the LRO (Long Running Operation) completes or the polling policy in effect for this call is exhausted. The future is satisfied with an error if the LRO completes with an error or the polling policy is exhausted. In this case the StatusOr returned by the future contains the error. If the LRO completes successfully the value of the future contains the LRO's result. For this RPC the result is a google.api.servicemanagement.v1.UndeleteServiceResponse proto message. The C++ class representing this message is created by Protobuf, using the Protobuf mapping rules.

UndeleteService(NoAwaitTag, google::api::servicemanagement::v1::UndeleteServiceRequest const &, Options)

Revives a previously deleted managed service.

Specifying the NoAwaitTag immediately returns the [google::longrunning::Operation] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.

Parameters
Name Description
NoAwaitTag
request google::api::servicemanagement::v1::UndeleteServiceRequest const &
opts Options
Returns
Type Description
StatusOr< google::longrunning::Operation >

UndeleteService(google::longrunning::Operation const &, Options)

Revives a previously deleted managed service.

This method accepts a google::longrunning::Operation that corresponds to a previously started Long Running Operation (LRO) and polls the status of the LRO in the background.

Parameters
Name Description
operation google::longrunning::Operation const &
opts Options
Returns
Type Description
future< StatusOr< google::api::servicemanagement::v1::UndeleteServiceResponse > >

ListServiceConfigs(std::string const &, Options)

Lists the history of the service configuration for a managed service, from the newest to the oldest.

Parameters
Name Description
service_name std::string const &

Required. The name of the service. See the overview for naming requirements. For example: example.googleapis.com.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StreamRange< google::api::Service >

a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has begin() and end() member functions returning a iterator class meeting the input iterator requirements. The value type for this iterator is a StatusOr as the iteration may fail even after some values are retrieved successfully, for example, if there is a network disconnect. An empty set of results does not indicate an error, it indicates that there are no resources meeting the request criteria. On a successful iteration the StatusOr<T> contains elements of type google.api.Service, or rather, the C++ class generated by Protobuf from that type. Please consult the Protobuf documentation for details on the Protobuf mapping rules.

ListServiceConfigs(google::api::servicemanagement::v1::ListServiceConfigsRequest, Options)

Lists the history of the service configuration for a managed service, from the newest to the oldest.

Parameters
Name Description
request google::api::servicemanagement::v1::ListServiceConfigsRequest

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.api.servicemanagement.v1.ListServiceConfigsRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StreamRange< google::api::Service >

a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has begin() and end() member functions returning a iterator class meeting the input iterator requirements. The value type for this iterator is a StatusOr as the iteration may fail even after some values are retrieved successfully, for example, if there is a network disconnect. An empty set of results does not indicate an error, it indicates that there are no resources meeting the request criteria. On a successful iteration the StatusOr<T> contains elements of type google.api.Service, or rather, the C++ class generated by Protobuf from that type. Please consult the Protobuf documentation for details on the Protobuf mapping rules.

GetServiceConfig(std::string const &, std::string const &, google::api::servicemanagement::v1::GetServiceConfigRequest::ConfigView, Options)

Gets a service configuration (version) for a managed service.

Parameters
Name Description
service_name std::string const &

Required. The name of the service. See the overview for naming requirements. For example: example.googleapis.com.

config_id std::string const &

Required. The id of the service configuration resource.
This field must be specified for the server to return all fields, including SourceInfo.

view google::api::servicemanagement::v1::GetServiceConfigRequest::ConfigView

Specifies which parts of the Service Config should be returned in the response.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StatusOr< google::api::Service >

the result of the RPC. The response message type (google.api.Service) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

GetServiceConfig(google::api::servicemanagement::v1::GetServiceConfigRequest const &, Options)

Gets a service configuration (version) for a managed service.

Parameters
Name Description
request google::api::servicemanagement::v1::GetServiceConfigRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.api.servicemanagement.v1.GetServiceConfigRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StatusOr< google::api::Service >

the result of the RPC. The response message type (google.api.Service) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

CreateServiceConfig(std::string const &, google::api::Service const &, Options)

Creates a new service configuration (version) for a managed service.

This method only stores the service configuration. To roll out the service configuration to backend systems please call CreateServiceRollout.

Only the 100 most recent service configurations and ones referenced by existing rollouts are kept for each service. The rest will be deleted eventually.

Parameters
Name Description
service_name std::string const &

Required. The name of the service. See the overview for naming requirements. For example: example.googleapis.com.

service_config google::api::Service const &

Required. The service configuration resource.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StatusOr< google::api::Service >

the result of the RPC. The response message type (google.api.Service) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

CreateServiceConfig(google::api::servicemanagement::v1::CreateServiceConfigRequest const &, Options)

Creates a new service configuration (version) for a managed service.

This method only stores the service configuration. To roll out the service configuration to backend systems please call CreateServiceRollout.

Only the 100 most recent service configurations and ones referenced by existing rollouts are kept for each service. The rest will be deleted eventually.

Parameters
Name Description
request google::api::servicemanagement::v1::CreateServiceConfigRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.api.servicemanagement.v1.CreateServiceConfigRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StatusOr< google::api::Service >

the result of the RPC. The response message type (google.api.Service) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

SubmitConfigSource(std::string const &, google::api::servicemanagement::v1::ConfigSource const &, bool, Options)

Creates a new service configuration (version) for a managed service based on user-supplied configuration source files (for example: OpenAPI Specification).

This method stores the source configurations as well as the generated service configuration. To rollout the service configuration to other services, please call CreateServiceRollout.

Only the 100 most recent configuration sources and ones referenced by existing service configurtions are kept for each service. The rest will be deleted eventually.

Operation<response: SubmitConfigSourceResponse>

Parameters
Name Description
service_name std::string const &

Required. The name of the service. See the overview for naming requirements. For example: example.googleapis.com.

config_source google::api::servicemanagement::v1::ConfigSource const &

Required. The source configuration for the service.

validate_only bool

Optional. If set, this will result in the generation of a google.api.Service configuration based on the ConfigSource provided, but the generated config and the sources will NOT be persisted.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
future< StatusOr< google::api::servicemanagement::v1::SubmitConfigSourceResponse > >

A future that becomes satisfied when the LRO (Long Running Operation) completes or the polling policy in effect for this call is exhausted. The future is satisfied with an error if the LRO completes with an error or the polling policy is exhausted. In this case the StatusOr returned by the future contains the error. If the LRO completes successfully the value of the future contains the LRO's result. For this RPC the result is a google.api.servicemanagement.v1.SubmitConfigSourceResponse proto message. The C++ class representing this message is created by Protobuf, using the Protobuf mapping rules.

SubmitConfigSource(NoAwaitTag, std::string const &, google::api::servicemanagement::v1::ConfigSource const &, bool, Options)

Creates a new service configuration (version) for a managed service based on user-supplied configuration source files (for example: OpenAPI Specification).

Specifying the NoAwaitTag immediately returns the [google::longrunning::Operation] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.

Parameters
Name Description
NoAwaitTag
service_name std::string const &
config_source google::api::servicemanagement::v1::ConfigSource const &
validate_only bool
opts Options
Returns
Type Description
StatusOr< google::longrunning::Operation >

SubmitConfigSource(google::api::servicemanagement::v1::SubmitConfigSourceRequest const &, Options)

Creates a new service configuration (version) for a managed service based on user-supplied configuration source files (for example: OpenAPI Specification).

This method stores the source configurations as well as the generated service configuration. To rollout the service configuration to other services, please call CreateServiceRollout.

Only the 100 most recent configuration sources and ones referenced by existing service configurtions are kept for each service. The rest will be deleted eventually.

Operation<response: SubmitConfigSourceResponse>

Parameters
Name Description
request google::api::servicemanagement::v1::SubmitConfigSourceRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.api.servicemanagement.v1.SubmitConfigSourceRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
future< StatusOr< google::api::servicemanagement::v1::SubmitConfigSourceResponse > >

A future that becomes satisfied when the LRO (Long Running Operation) completes or the polling policy in effect for this call is exhausted. The future is satisfied with an error if the LRO completes with an error or the polling policy is exhausted. In this case the StatusOr returned by the future contains the error. If the LRO completes successfully the value of the future contains the LRO's result. For this RPC the result is a google.api.servicemanagement.v1.SubmitConfigSourceResponse proto message. The C++ class representing this message is created by Protobuf, using the Protobuf mapping rules.

SubmitConfigSource(NoAwaitTag, google::api::servicemanagement::v1::SubmitConfigSourceRequest const &, Options)

Creates a new service configuration (version) for a managed service based on user-supplied configuration source files (for example: OpenAPI Specification).

Specifying the NoAwaitTag immediately returns the [google::longrunning::Operation] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.

Parameters
Name Description
NoAwaitTag
request google::api::servicemanagement::v1::SubmitConfigSourceRequest const &
opts Options
Returns
Type Description
StatusOr< google::longrunning::Operation >

SubmitConfigSource(google::longrunning::Operation const &, Options)

Creates a new service configuration (version) for a managed service based on user-supplied configuration source files (for example: OpenAPI Specification).

This method accepts a google::longrunning::Operation that corresponds to a previously started Long Running Operation (LRO) and polls the status of the LRO in the background.

Parameters
Name Description
operation google::longrunning::Operation const &
opts Options
Returns
Type Description
future< StatusOr< google::api::servicemanagement::v1::SubmitConfigSourceResponse > >

ListServiceRollouts(std::string const &, std::string const &, Options)

Lists the history of the service configuration rollouts for a managed service, from the newest to the oldest.

Parameters
Name Description
service_name std::string const &

Required. The name of the service. See the overview for naming requirements. For example: example.googleapis.com.

filter std::string const &

Required. Use filter to return subset of rollouts. The following filters are supported:
– By [status] [google.api.servicemanagement.v1.Rollout.RolloutStatus]. For example, filter="status=SUCCESS"
– By [strategy] [google.api.servicemanagement.v1.Rollout.strategy]. For example, filter="strategy=TrafficPercentStrategy"

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StreamRange< google::api::servicemanagement::v1::Rollout >

a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has begin() and end() member functions returning a iterator class meeting the input iterator requirements. The value type for this iterator is a StatusOr as the iteration may fail even after some values are retrieved successfully, for example, if there is a network disconnect. An empty set of results does not indicate an error, it indicates that there are no resources meeting the request criteria. On a successful iteration the StatusOr<T> contains elements of type google.api.servicemanagement.v1.Rollout, or rather, the C++ class generated by Protobuf from that type. Please consult the Protobuf documentation for details on the Protobuf mapping rules.

ListServiceRollouts(google::api::servicemanagement::v1::ListServiceRolloutsRequest, Options)

Lists the history of the service configuration rollouts for a managed service, from the newest to the oldest.

Parameters
Name Description
request google::api::servicemanagement::v1::ListServiceRolloutsRequest

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.api.servicemanagement.v1.ListServiceRolloutsRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StreamRange< google::api::servicemanagement::v1::Rollout >

a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has begin() and end() member functions returning a iterator class meeting the input iterator requirements. The value type for this iterator is a StatusOr as the iteration may fail even after some values are retrieved successfully, for example, if there is a network disconnect. An empty set of results does not indicate an error, it indicates that there are no resources meeting the request criteria. On a successful iteration the StatusOr<T> contains elements of type google.api.servicemanagement.v1.Rollout, or rather, the C++ class generated by Protobuf from that type. Please consult the Protobuf documentation for details on the Protobuf mapping rules.

GetServiceRollout(std::string const &, std::string const &, Options)

Gets a service configuration rollout.

Parameters
Name Description
service_name std::string const &

Required. The name of the service. See the overview for naming requirements. For example: example.googleapis.com.

rollout_id std::string const &

Required. The id of the rollout resource.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StatusOr< google::api::servicemanagement::v1::Rollout >

the result of the RPC. The response message type (google.api.servicemanagement.v1.Rollout) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

GetServiceRollout(google::api::servicemanagement::v1::GetServiceRolloutRequest const &, Options)

Gets a service configuration rollout.

Parameters
Name Description
request google::api::servicemanagement::v1::GetServiceRolloutRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.api.servicemanagement.v1.GetServiceRolloutRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StatusOr< google::api::servicemanagement::v1::Rollout >

the result of the RPC. The response message type (google.api.servicemanagement.v1.Rollout) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

CreateServiceRollout(std::string const &, google::api::servicemanagement::v1::Rollout const &, Options)

Creates a new service configuration rollout.

Based on rollout, the Google Service Management will roll out the service configurations to different backend services. For example, the logging configuration will be pushed to Google Cloud Logging.

Please note that any previous pending and running Rollouts and associated Operations will be automatically cancelled so that the latest Rollout will not be blocked by previous Rollouts.

Only the 100 most recent (in any state) and the last 10 successful (if not already part of the set of 100 most recent) rollouts are kept for each service. The rest will be deleted eventually.

Operation<response: Rollout>

Parameters
Name Description
service_name std::string const &

Required. The name of the service. See the overview for naming requirements. For example: example.googleapis.com.

rollout google::api::servicemanagement::v1::Rollout const &

Required. The rollout resource. The service_name field is output only.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
future< StatusOr< google::api::servicemanagement::v1::Rollout > >

A future that becomes satisfied when the LRO (Long Running Operation) completes or the polling policy in effect for this call is exhausted. The future is satisfied with an error if the LRO completes with an error or the polling policy is exhausted. In this case the StatusOr returned by the future contains the error. If the LRO completes successfully the value of the future contains the LRO's result. For this RPC the result is a google.api.servicemanagement.v1.Rollout proto message. The C++ class representing this message is created by Protobuf, using the Protobuf mapping rules.

CreateServiceRollout(NoAwaitTag, std::string const &, google::api::servicemanagement::v1::Rollout const &, Options)

Creates a new service configuration rollout.

Specifying the NoAwaitTag immediately returns the [google::longrunning::Operation] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.

Parameters
Name Description
NoAwaitTag
service_name std::string const &
rollout google::api::servicemanagement::v1::Rollout const &
opts Options
Returns
Type Description
StatusOr< google::longrunning::Operation >

CreateServiceRollout(google::api::servicemanagement::v1::CreateServiceRolloutRequest const &, Options)

Creates a new service configuration rollout.

Based on rollout, the Google Service Management will roll out the service configurations to different backend services. For example, the logging configuration will be pushed to Google Cloud Logging.

Please note that any previous pending and running Rollouts and associated Operations will be automatically cancelled so that the latest Rollout will not be blocked by previous Rollouts.

Only the 100 most recent (in any state) and the last 10 successful (if not already part of the set of 100 most recent) rollouts are kept for each service. The rest will be deleted eventually.

Operation<response: Rollout>

Parameters
Name Description
request google::api::servicemanagement::v1::CreateServiceRolloutRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.api.servicemanagement.v1.CreateServiceRolloutRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
future< StatusOr< google::api::servicemanagement::v1::Rollout > >

A future that becomes satisfied when the LRO (Long Running Operation) completes or the polling policy in effect for this call is exhausted. The future is satisfied with an error if the LRO completes with an error or the polling policy is exhausted. In this case the StatusOr returned by the future contains the error. If the LRO completes successfully the value of the future contains the LRO's result. For this RPC the result is a google.api.servicemanagement.v1.Rollout proto message. The C++ class representing this message is created by Protobuf, using the Protobuf mapping rules.

CreateServiceRollout(NoAwaitTag, google::api::servicemanagement::v1::CreateServiceRolloutRequest const &, Options)

Creates a new service configuration rollout.

Specifying the NoAwaitTag immediately returns the [google::longrunning::Operation] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.

Parameters
Name Description
NoAwaitTag
request google::api::servicemanagement::v1::CreateServiceRolloutRequest const &
opts Options
Returns
Type Description
StatusOr< google::longrunning::Operation >

CreateServiceRollout(google::longrunning::Operation const &, Options)

Creates a new service configuration rollout.

This method accepts a google::longrunning::Operation that corresponds to a previously started Long Running Operation (LRO) and polls the status of the LRO in the background.

Parameters
Name Description
operation google::longrunning::Operation const &
opts Options
Returns
Type Description
future< StatusOr< google::api::servicemanagement::v1::Rollout > >

GenerateConfigReport(google::protobuf::Any const &, google::protobuf::Any const &, Options)

Generates and returns a report (errors, warnings and changes from existing configurations) associated with GenerateConfigReportRequest.new_value.

If GenerateConfigReportRequest.old_value is specified, GenerateConfigReportRequest will contain a single ChangeReport based on the comparison between GenerateConfigReportRequest.new_value and GenerateConfigReportRequest.old_value. If GenerateConfigReportRequest.old_value is not specified, this method will compare GenerateConfigReportRequest.new_value with the last pushed service configuration.

Parameters
Name Description
new_config google::protobuf::Any const &

Required. Service configuration for which we want to generate the report. For this version of API, the supported types are google.api.servicemanagement.v1.ConfigRef, google.api.servicemanagement.v1.ConfigSource, and google.api.Service

old_config google::protobuf::Any const &

Optional. Service configuration against which the comparison will be done. For this version of API, the supported types are google.api.servicemanagement.v1.ConfigRef, google.api.servicemanagement.v1.ConfigSource, and google.api.Service

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StatusOr< google::api::servicemanagement::v1::GenerateConfigReportResponse >

the result of the RPC. The response message type (google.api.servicemanagement.v1.GenerateConfigReportResponse) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

GenerateConfigReport(google::api::servicemanagement::v1::GenerateConfigReportRequest const &, Options)

Generates and returns a report (errors, warnings and changes from existing configurations) associated with GenerateConfigReportRequest.new_value.

If GenerateConfigReportRequest.old_value is specified, GenerateConfigReportRequest will contain a single ChangeReport based on the comparison between GenerateConfigReportRequest.new_value and GenerateConfigReportRequest.old_value. If GenerateConfigReportRequest.old_value is not specified, this method will compare GenerateConfigReportRequest.new_value with the last pushed service configuration.

Parameters
Name Description
request google::api::servicemanagement::v1::GenerateConfigReportRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.api.servicemanagement.v1.GenerateConfigReportRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StatusOr< google::api::servicemanagement::v1::GenerateConfigReportResponse >

the result of the RPC. The response message type (google.api.servicemanagement.v1.GenerateConfigReportResponse) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

SetIamPolicy(google::iam::v1::SetIamPolicyRequest const &, Options)

Sets the access control policy on the specified resource.

Replaces any existing policy.

Can return NOT_FOUND, INVALID_ARGUMENT, and PERMISSION_DENIED errors.

Parameters
Name Description
request google::iam::v1::SetIamPolicyRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.iam.v1.SetIamPolicyRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StatusOr< google::iam::v1::Policy >

the result of the RPC. The response message type (google.iam.v1.Policy) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

GetIamPolicy(google::iam::v1::GetIamPolicyRequest const &, Options)

Gets the access control policy for a resource.

Returns an empty policy if the resource exists and does not have a policy set.

Parameters
Name Description
request google::iam::v1::GetIamPolicyRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.iam.v1.GetIamPolicyRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StatusOr< google::iam::v1::Policy >

the result of the RPC. The response message type (google.iam.v1.Policy) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

TestIamPermissions(google::iam::v1::TestIamPermissionsRequest const &, Options)

Returns permissions that a caller has on the specified resource.

If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.

Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may "fail open" without warning.

Parameters
Name Description
request google::iam::v1::TestIamPermissionsRequest const &

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.iam.v1.TestIamPermissionsRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StatusOr< google::iam::v1::TestIamPermissionsResponse >

the result of the RPC. The response message type (google.iam.v1.TestIamPermissionsResponse) is mapped to a C++ class using the Protobuf mapping rules. If the request fails, the StatusOr contains the error details.

ListOperations(std::string const &, std::string const &, Options)

Lists operations that match the specified filter in the request.

If the server doesn't support this method, it returns UNIMPLEMENTED.

NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as "/v1/{name=users/*}/operations" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.

Parameters
Name Description
name std::string const &

The name of the operation's parent resource.

filter std::string const &

The standard list filter.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StreamRange< google::longrunning::Operation >

a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has begin() and end() member functions returning a iterator class meeting the input iterator requirements. The value type for this iterator is a StatusOr as the iteration may fail even after some values are retrieved successfully, for example, if there is a network disconnect. An empty set of results does not indicate an error, it indicates that there are no resources meeting the request criteria. On a successful iteration the StatusOr<T> contains elements of type google.longrunning.Operation, or rather, the C++ class generated by Protobuf from that type. Please consult the Protobuf documentation for details on the Protobuf mapping rules.

ListOperations(google::longrunning::ListOperationsRequest, Options)

Lists operations that match the specified filter in the request.

If the server doesn't support this method, it returns UNIMPLEMENTED.

NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as "/v1/{name=users/*}/operations" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.

Parameters
Name Description
request google::longrunning::ListOperationsRequest

Unary RPCs, such as the one wrapped by this function, receive a single request proto message which includes all the inputs for the RPC. In this case, the proto message is a google.longrunning.ListOperationsRequest. Proto messages are converted to C++ classes by Protobuf, using the Protobuf mapping rules.

opts Options

Optional. Override the class-level options, such as retry and backoff policies.

Returns
Type Description
StreamRange< google::longrunning::Operation >

a StreamRange to iterate of the results. See the documentation of this type for details. In brief, this class has begin() and end() member functions returning a iterator class meeting the input iterator requirements. The value type for this iterator is a StatusOr as the iteration may fail even after some values are retrieved successfully, for example, if there is a network disconnect. An empty set of results does not indicate an error, it indicates that there are no resources meeting the request criteria. On a successful iteration the StatusOr<T> contains elements of type google.longrunning.Operation, or rather, the C++ class generated by Protobuf from that type. Please consult the Protobuf documentation for details on the Protobuf mapping rules.