A connection to Cloud Pub/Sub for topic-related administrative operations.
This interface defines pure-virtual functions for each of the user-facing overload sets in TopicAdminClient. That is, all of TopicAdminClient's overloads will forward to the one pure-virtual function declared in this interface. This allows users to inject custom behavior (e.g., with a Google Mock object) in a TopicAdminClient object for use in their own tests.
To create a concrete instance that connects you to the real Cloud Pub/Sub service, see MakeTopicAdminConnection().
The *Params nested classes
Applications may define classes derived from TopicAdminConnection, 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 document details the \u003ccode\u003eTopicAdminConnection\u003c/code\u003e class, which offers a pure-virtual interface for interacting with Google Cloud Pub/Sub for administrative operations related to topics.\u003c/p\u003e\n"],["\u003cp\u003eThis document provides a list of the different versions for the \u003ccode\u003eTopicAdminConnection\u003c/code\u003e class, with \u003ccode\u003e2.37.0-rc\u003c/code\u003e being the most current version, while \u003ccode\u003e2.11.0\u003c/code\u003e being the base version in this document.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eTopicAdminConnection\u003c/code\u003e class is designed to allow users to inject custom behaviors, such as with a mock object, into a \u003ccode\u003eTopicAdminClient\u003c/code\u003e for testing purposes.\u003c/p\u003e\n"],["\u003cp\u003eThe class defines several core functions, including \u003ccode\u003eCreateTopic\u003c/code\u003e, \u003ccode\u003eGetTopic\u003c/code\u003e, \u003ccode\u003eUpdateTopic\u003c/code\u003e, \u003ccode\u003eListTopics\u003c/code\u003e, \u003ccode\u003eDeleteTopic\u003c/code\u003e, \u003ccode\u003eDetachSubscription\u003c/code\u003e, \u003ccode\u003eListTopicSubscriptions\u003c/code\u003e, \u003ccode\u003eListTopicSnapshots\u003c/code\u003e, and \u003ccode\u003eoptions\u003c/code\u003e, all using the virtual keyword to be overloaded.\u003c/p\u003e\n"],["\u003cp\u003eLightweight parameter structures are implemented through the *Params nested classes, to avoid issues when making changes to functions, thus preventing breaks in derived classes.\u003c/p\u003e\n"]]],[],null,[]]