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.
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.cloud.contentwarehouse.v1.RunPipelineResponse proto message. The C++ class representing this message is created by Protobuf, using the Protobuf mapping rules.
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.
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.cloud.contentwarehouse.v1.RunPipelineRequest. 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.
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.cloud.contentwarehouse.v1.RunPipelineResponse proto message. The C++ class representing this message is created by Protobuf, using the Protobuf mapping rules.
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.
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.
Gets the latest state of a long-running operation.
Clients can use this method to poll the operation result at intervals as recommended by the API service.
Parameters
Name
Description
request
google::longrunning::GetOperationRequest 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.longrunning.GetOperationRequest. 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.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-14 UTC."],[[["\u003cp\u003eThe \u003ccode\u003ePipelineServiceClient\u003c/code\u003e class is designed to manage pipelines, enabling users to run predefined pipelines and poll long-running operations.\u003c/p\u003e\n"],["\u003cp\u003eThere are multiple versioned links to the \u003ccode\u003ePipelineServiceClient\u003c/code\u003e class, from 2.12.0 up to the latest release candidate 2.37.0-rc, and version 2.36.0 is highlighted in the header, allowing users to reference specific versions.\u003c/p\u003e\n"],["\u003cp\u003eCreating a new instance of the \u003ccode\u003ePipelineServiceClient\u003c/code\u003e is an expensive operation, as it establishes a new connection, whereas copy-construction and assignment are more efficient because they share underlying resources.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eRunPipeline\u003c/code\u003e function allows for running predefined pipelines, and it can return either a \u003ccode\u003efuture\u003c/code\u003e that represents the completion of a Long Running Operation (LRO), or it can immediately return an \u003ccode\u003eOperation\u003c/code\u003e object without polling, through the use of \u003ccode\u003eNoAwaitTag\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe class provides multiple constructors, including copy and move support, as well as constructors that take a \u003ccode\u003ePipelineServiceConnection\u003c/code\u003e and \u003ccode\u003eOptions\u003c/code\u003e, and offers operators for copy and move assignment, ensuring efficient resource management.\u003c/p\u003e\n"]]],[],null,["# Class PipelineServiceClient (2.36.0)\n\nVersion 2.36.0keyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/contentwarehouse/latest/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.41.0](/cpp/docs/reference/contentwarehouse/2.41.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.40.0](/cpp/docs/reference/contentwarehouse/2.40.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.39.0](/cpp/docs/reference/contentwarehouse/2.39.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.38.0](/cpp/docs/reference/contentwarehouse/2.38.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.37.0](/cpp/docs/reference/contentwarehouse/2.37.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.36.0](/cpp/docs/reference/contentwarehouse/2.36.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.35.0](/cpp/docs/reference/contentwarehouse/2.35.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.34.0](/cpp/docs/reference/contentwarehouse/2.34.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.33.0](/cpp/docs/reference/contentwarehouse/2.33.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.32.0](/cpp/docs/reference/contentwarehouse/2.32.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.31.0](/cpp/docs/reference/contentwarehouse/2.31.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.30.0](/cpp/docs/reference/contentwarehouse/2.30.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.29.0](/cpp/docs/reference/contentwarehouse/2.29.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.28.0](/cpp/docs/reference/contentwarehouse/2.28.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.27.0](/cpp/docs/reference/contentwarehouse/2.27.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.26.0](/cpp/docs/reference/contentwarehouse/2.26.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.25.1](/cpp/docs/reference/contentwarehouse/2.25.1/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.24.0](/cpp/docs/reference/contentwarehouse/2.24.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.23.0](/cpp/docs/reference/contentwarehouse/2.23.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.22.1](/cpp/docs/reference/contentwarehouse/2.22.1/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.21.0](/cpp/docs/reference/contentwarehouse/2.21.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.20.0](/cpp/docs/reference/contentwarehouse/2.20.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.19.0](/cpp/docs/reference/contentwarehouse/2.19.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.18.0](/cpp/docs/reference/contentwarehouse/2.18.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.17.0](/cpp/docs/reference/contentwarehouse/2.17.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.16.0](/cpp/docs/reference/contentwarehouse/2.16.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.15.1](/cpp/docs/reference/contentwarehouse/2.15.1/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.14.0](/cpp/docs/reference/contentwarehouse/2.14.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.13.0](/cpp/docs/reference/contentwarehouse/2.13.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient)\n- [2.12.0](/cpp/docs/reference/contentwarehouse/2.12.0/classgoogle_1_1cloud_1_1contentwarehouse__v1_1_1PipelineServiceClient) \nThis service lets you manage pipelines. \n\n###### Equality\n\nInstances of this class created via copy-construction or copy-assignment always compare equal. Instances created with equal `std::shared_ptr\u003c*Connection\u003e` objects compare equal. Objects that compare equal share the same underlying resources.\n\n###### Performance\n\nCreating 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.\n\n###### Thread Safety\n\nConcurrent 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.\n\nConstructors\n------------\n\n### PipelineServiceClient(PipelineServiceClient const \\&)\n\nCopy and move support\n\n### PipelineServiceClient(PipelineServiceClient \\&\\&)\n\nCopy and move support\n\n### PipelineServiceClient(std::shared_ptr\\\u003c PipelineServiceConnection \\\u003e, Options)\n\nOperators\n---------\n\n### operator=(PipelineServiceClient const \\&)\n\nCopy and move support\n\n### operator=(PipelineServiceClient \\&\\&)\n\nCopy and move support\n\nFunctions\n---------\n\n### RunPipeline(std::string const \\&, Options)\n\nRun a predefined pipeline.\n\n### RunPipeline(NoAwaitTag, std::string const \\&, Options)\n\nRun a predefined pipeline. \nSpecifying the [`NoAwaitTag`](https://cloud.google.com/cpp/docs/reference/common/latest/structgoogle_1_1cloud_1_1NoAwaitTag.html) immediately returns the \\[`google::longrunning::Operation`\\] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.\n\n### RunPipeline(google::cloud::contentwarehouse::v1::RunPipelineRequest const \\&, Options)\n\nRun a predefined pipeline.\n\n### RunPipeline(NoAwaitTag, google::cloud::contentwarehouse::v1::RunPipelineRequest const \\&, Options)\n\nRun a predefined pipeline. \nSpecifying the [`NoAwaitTag`](https://cloud.google.com/cpp/docs/reference/common/latest/structgoogle_1_1cloud_1_1NoAwaitTag.html) immediately returns the \\[`google::longrunning::Operation`\\] that corresponds to the Long Running Operation that has been started. No polling for operation status occurs.\n\n### RunPipeline(google::longrunning::Operation const \\&, Options)\n\nRun a predefined pipeline. \nThis 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.\n\n### GetOperation(std::string const \\&, Options)\n\nGets the latest state of a long-running operation. \nClients can use this method to poll the operation result at intervals as recommended by the API service.\n\n### GetOperation(google::longrunning::GetOperationRequest const \\&, Options)\n\nGets the latest state of a long-running operation. \nClients can use this method to poll the operation result at intervals as recommended by the API service."]]