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\u003eThe latest version of the \u003ccode\u003eBlockingPublisherConnection\u003c/code\u003e is 2.37.0-rc, and the page provides access to various historical versions, down to 2.11.0.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eBlockingPublisherConnection\u003c/code\u003e is an interface that defines pure-virtual methods to interact with the Cloud Pub/Sub service, specifically for publishing events.\u003c/p\u003e\n"],["\u003cp\u003eThe interface is designed for custom behavior injection, such as using Google Mock objects, allowing for flexibility in testing \u003ccode\u003eBlockingPublisher\u003c/code\u003e objects.\u003c/p\u003e\n"],["\u003cp\u003eTo connect to the actual Cloud Pub/Sub service, you should use the \u003ccode\u003eMakeBlockingPublisherConnection()\u003c/code\u003e function, which will create a concrete instance.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eBlockingPublisherConnection\u003c/code\u003e includes functions such as \u003ccode\u003ePublish\u003c/code\u003e, which allows for publishing via \u003ccode\u003ePublishParams\u003c/code\u003e, and the \u003ccode\u003eoptions\u003c/code\u003e function which will return the options configured at initialization.\u003c/p\u003e\n"]]],[],null,[]]