A connection to the Cloud Pub/Sub service to publish events.
This interface defines pure-virtual methods for each of the user-facing overload sets in BlockingPublisher. That is, all of BlockingPublisher's overloads will forward to the one pure-virtual method declared in this interface. This allows users to inject custom behavior (e.g., with a Google Mock object) in a BlockingPublisher object for use in their own tests.
Applications may define classes derived from PublisherConnection, for example, because they want to mock the class. To avoid breaking all such derived classes when we change the number or type of the arguments to the member functions we define lightweight structures to pass the arguments.
[[["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\u003eThis webpage provides documentation for the \u003ccode\u003eBlockingPublisherConnection\u003c/code\u003e class in the Google Cloud Pub/Sub C++ client library, offering a range of versions from 2.11.0 to the latest release candidate 2.37.0-rc.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eBlockingPublisherConnection\u003c/code\u003e class serves as an interface to the Cloud Pub/Sub service for publishing events, featuring pure-virtual methods that align with the user-facing overload sets found in \u003ccode\u003eBlockingPublisher\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eUsers can customize behavior by injecting their own implementations (like mock objects) into \u003ccode\u003eBlockingPublisher\u003c/code\u003e objects, which is supported through the pure-virtual methods in this interface.\u003c/p\u003e\n"],["\u003cp\u003eThe documentation also explains the use of nested \u003ccode\u003e*Params\u003c/code\u003e classes, which are lightweight structures utilized to pass arguments to member functions, preventing compatibility issues with derived classes during updates.\u003c/p\u003e\n"],["\u003cp\u003eThe interface also defines methods for \u003ccode\u003ePublish(PublishParams)\u003c/code\u003e which defines the interface for \u003ccode\u003eBlockingPublisher::Publish()\u003c/code\u003e and \u003ccode\u003eoptions()\u003c/code\u003e, which returns the configurations that were set when initialized.\u003c/p\u003e\n"]]],[],null,[]]