Skip to content

Commit e053154

Browse files
committed
pubsub snippet updates
1 parent 5da936a commit e053154

5 files changed

Lines changed: 85 additions & 178 deletions

File tree

google-cloud-examples/src/main/java/com/google/cloud/examples/pubsub/snippets/PublisherClientSnippets.java

Lines changed: 26 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -42,27 +42,25 @@ public PublisherClientSnippets(String projectId) {
4242
}
4343

4444
/** Example of creating a topic. */
45-
public Topic createTopic(String topicName) throws Exception {
45+
public Topic createTopic(String myTopic) throws Exception {
4646
try (PublisherClient publisherClient = PublisherClient.create()) {
4747
// [START createTopic]
48-
TopicName formattedTopicName = TopicName.create(projectId, topicName);
49-
Topic topic = publisherClient.createTopic(formattedTopicName);
48+
TopicName topicName = TopicName.create(projectId, myTopic);
49+
Topic topic = publisherClient.createTopic(topicName);
5050
// [END createTopic]
5151
return topic;
5252
}
5353
}
5454

55-
/** Example of listing topics, specifying the page size. */
55+
/** Example of listing topics. */
5656
public ListTopicsPagedResponse listTopics() throws Exception {
5757
try (PublisherClient publisherClient = PublisherClient.create()) {
5858
// [START listTopics]
5959
ListTopicsRequest listTopicsRequest =
6060
ListTopicsRequest.newBuilder()
6161
.setProjectWithProjectName(ProjectName.create(projectId))
62-
.setPageSize(100)
6362
.build();
64-
ListTopicsPagedResponse response =
65-
publisherClient.listTopics(listTopicsRequest);
63+
ListTopicsPagedResponse response = publisherClient.listTopics(listTopicsRequest);
6664
Iterable<Topic> topics = response.iterateAllElements();
6765
for (Topic topic : topics) {
6866
// do something with the topic
@@ -72,87 +70,43 @@ public ListTopicsPagedResponse listTopics() throws Exception {
7270
}
7371
}
7472

75-
/** Example of listing topics, specifying the page size and a page token. */
76-
public ListTopicsPagedResponse listTopicsWithPageToken(String pageToken) throws Exception {
73+
/** Example of listing topics for a subscription. */
74+
public ListTopicSubscriptionsPagedResponse listTopicSubscriptions(String myTopic)
75+
throws Exception {
7776
try (PublisherClient publisherClient = PublisherClient.create()) {
78-
// [START listTopicsWithPageToken]
79-
ListTopicsRequest listTopicsRequest =
80-
ListTopicsRequest.newBuilder()
81-
.setProjectWithProjectName(ProjectName.create(projectId))
82-
.setPageSize(100)
83-
.setPageToken(pageToken)
84-
.build();
85-
ListTopicsPagedResponse response =
86-
publisherClient.listTopics(listTopicsRequest);
87-
Iterable<Topic> topics = response.iterateAllElements();
88-
for (Topic topic : topics) {
89-
// do something with the topic
90-
}
91-
// [END listTopicsWithPageToken]
92-
return response;
93-
}
94-
}
95-
96-
/** Example of listing topics for a subscription, specifying the page size. */
97-
public ListTopicSubscriptionsPagedResponse listTopicSubscriptions(String topicName) throws Exception {
98-
try (PublisherClient publisherClient = PublisherClient.create()) {
99-
TopicName formattedTopicName = TopicName.create(projectId, topicName);
10077
// [START listTopicSubscriptions]
78+
TopicName topicName = TopicName.create(projectId, myTopic);
10179
ListTopicSubscriptionsRequest request =
10280
ListTopicSubscriptionsRequest.newBuilder()
103-
.setTopicWithTopicName(formattedTopicName)
104-
.setPageSize(100)
81+
.setTopicWithTopicName(topicName)
10582
.build();
10683
ListTopicSubscriptionsPagedResponse response =
10784
publisherClient.listTopicSubscriptions(request);
108-
Iterable<String> subscriptions = response.iterateAllElements();
109-
for (String subscription : subscriptions) {
85+
Iterable<String> subscriptionNames = response.iterateAllElements();
86+
for (String subscriptionName : subscriptionNames) {
11087
// do something with the subscription name
11188
}
11289
// [END listTopicSubscriptions]
11390
return response;
11491
}
11592
}
11693

117-
/** Example of listing topics for a subscription, specifying the page size and page token */
118-
public ListTopicSubscriptionsPagedResponse listTopicSubscriptionsWithPageToken(
119-
String topicName, String pageToken) throws Exception {
120-
try (PublisherClient publisherClient = PublisherClient.create()) {
121-
TopicName formattedTopicName = TopicName.create(projectId, topicName);
122-
// [START listTopicSubscriptionsWithPageToken]
123-
ListTopicSubscriptionsRequest request =
124-
ListTopicSubscriptionsRequest.newBuilder()
125-
.setTopicWithTopicName(formattedTopicName)
126-
.setPageSize(100)
127-
.setPageToken(pageToken)
128-
.build();
129-
ListTopicSubscriptionsPagedResponse response =
130-
publisherClient.listTopicSubscriptions(request);
131-
Iterable<String> subscriptions = response.iterateAllElements();
132-
for (String subscription : subscriptions) {
133-
// do something with the subscription name
134-
}
135-
// [END listTopicSubscriptionsWithPageToken]
136-
return response;
137-
}
138-
}
139-
14094
/** Example of deleting a topic. */
141-
public TopicName deleteTopic(String topicName) throws Exception {
95+
public TopicName deleteTopic(String myTopic) throws Exception {
14296
try (PublisherClient publisherClient = PublisherClient.create()) {
143-
TopicName formattedTopicName = TopicName.create(projectId, topicName);
14497
// [START deleteTopic]
145-
publisherClient.deleteTopic(formattedTopicName);
98+
TopicName topicName = TopicName.create(projectId, myTopic);
99+
publisherClient.deleteTopic(topicName);
146100
// [END deleteTopic]
147-
return formattedTopicName;
101+
return topicName;
148102
}
149103
}
150104

151105
/** Example of getting a topic policy. */
152-
public Policy getTopicPolicy(String name) throws Exception {
106+
public Policy getTopicPolicy(String myTopic) throws Exception {
153107
try (PublisherClient publisherClient = PublisherClient.create()) {
154-
TopicName topicName = TopicName.create(projectId, name);
155108
// [START getTopicPolicy]
109+
TopicName topicName = TopicName.create(projectId, myTopic);
156110
Policy policy = publisherClient.getIamPolicy(topicName.toString());
157111
if (policy == null) {
158112
// topic iam policy was not found
@@ -163,10 +117,10 @@ public Policy getTopicPolicy(String name) throws Exception {
163117
}
164118

165119
/** Example of replacing a topic policy. */
166-
public Policy replaceTopicPolicy(String name) throws Exception {
120+
public Policy replaceTopicPolicy(String myTopic) throws Exception {
167121
try (PublisherClient publisherClient = PublisherClient.create()) {
168-
String topicName = TopicName.create(projectId, name).toString();
169122
// [START replaceTopicPolicy]
123+
String topicName = TopicName.create(projectId, myTopic).toString();
170124
Policy policy = publisherClient.getIamPolicy(topicName);
171125
// add role -> members binding
172126
Binding binding =
@@ -184,25 +138,25 @@ public Policy replaceTopicPolicy(String name) throws Exception {
184138

185139
/** Example of testing whether the caller has the provided permissions on a topic.
186140
* Only viewer, editor or admin/owner can view results of pubsub.topics.get */
187-
public TestIamPermissionsResponse testTopicPermissions(String topicName) throws Exception {
141+
public TestIamPermissionsResponse testTopicPermissions(String myTopic) throws Exception {
188142
try (PublisherClient publisherClient = PublisherClient.create()) {
189-
TopicName formattedTopicName = TopicName.create(projectId, topicName);
190143
// [START testTopicPermissions]
191144
List<String> permissions = new LinkedList<>();
192145
permissions.add("pubsub.topics.get");
146+
TopicName topicName = TopicName.create(projectId, myTopic);
193147
TestIamPermissionsResponse testedPermissions =
194-
publisherClient.testIamPermissions(formattedTopicName.toString(), permissions);
148+
publisherClient.testIamPermissions(topicName.toString(), permissions);
195149
// [END testTopicPermissions]
196150
return testedPermissions;
197151
}
198152
}
199153

200154
/** Example of getting a topic. */
201-
public Topic getTopic(String topicName) throws Exception {
155+
public Topic getTopic(String myTopic) throws Exception {
202156
try (PublisherClient publisherClient = PublisherClient.create()) {
203157
// [START getTopic]
204-
TopicName formattedTopicName = TopicName.create(projectId, topicName);
205-
Topic topic = publisherClient.getTopic(formattedTopicName);
158+
TopicName topicName = TopicName.create(projectId, myTopic);
159+
Topic topic = publisherClient.getTopic(topicName);
206160
// [END createTopic]
207161
return topic;
208162
}

google-cloud-examples/src/main/java/com/google/cloud/examples/pubsub/snippets/SubscriberClientSnippets.java

Lines changed: 32 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020

2121
import com.google.cloud.Identity;
2222
import com.google.cloud.Role;
23-
import com.google.cloud.pubsub.spi.v1.PagedResponseWrappers;
2423
import com.google.cloud.pubsub.spi.v1.PagedResponseWrappers.ListSubscriptionsPagedResponse;
2524
import com.google.cloud.pubsub.spi.v1.PublisherClient;
2625
import com.google.cloud.pubsub.spi.v1.SubscriberClient;
@@ -49,60 +48,56 @@ public SubscriberClientSnippets(String projectId) {
4948
}
5049

5150
/** Example of creating a pull subscription for a topic. */
52-
public Subscription createSubscription(String topic, String subscriptionName) throws Exception {
53-
TopicName topicName = TopicName.create(projectId, topic);
54-
SubscriptionName formattedSubscriptionName =
55-
SubscriptionName.create(projectId, subscriptionName);
51+
public Subscription createSubscription(String topic, String mySubscription) throws Exception {
5652
try (SubscriberClient subscriberClient = SubscriberClient.create()) {
5753
// [START createSubscription]
54+
TopicName topicName = TopicName.create(projectId, topic);
55+
SubscriptionName subscriptionName =
56+
SubscriptionName.create(projectId, mySubscription);
5857
Subscription subscription =
5958
subscriberClient.createSubscription(
60-
formattedSubscriptionName, topicName, PushConfig.getDefaultInstance(), 0);
59+
subscriptionName, topicName, PushConfig.getDefaultInstance(), 0);
6160
// [END createSubscription]
6261
return subscription;
6362
}
6463
}
6564

6665
/** Example of pulling a maximum number of messages from a subscription. */
67-
public PullResponse pull(String subscriptionName) throws Exception {
66+
public PullResponse pull(String mySubscription) throws Exception {
6867
try (SubscriberClient subscriberClient = SubscriberClient.create()) {
69-
SubscriptionName subcriptionFormattedName =
70-
SubscriptionName.create(projectId, subscriptionName);
7168
// [START pull]
72-
PullResponse response = subscriberClient.pull(subcriptionFormattedName, true, 100);
69+
SubscriptionName subscriptionName = SubscriptionName.create(projectId, mySubscription);
70+
PullResponse response = subscriberClient.pull(subscriptionName, true, 100);
7371
for (ReceivedMessage message : response.getReceivedMessagesList()) {
7472
// do something with message, then ack or nack
7573
subscriberClient.acknowledge(
76-
subcriptionFormattedName, Collections.singletonList(message.getAckId()));
74+
subscriptionName, Collections.singletonList(message.getAckId()));
7775
}
7876
// [END pull]
7977
return response;
8078
}
8179
}
8280

8381
/** Example of replacing the push configuration of a subscription, setting the push endpoint. */
84-
public void replacePushConfig(String subscriptionName, String endpoint) throws Exception {
82+
public void replacePushConfig(String mySubscription, String endpoint) throws Exception {
8583
try (SubscriberClient subscriberClient = SubscriberClient.create()) {
86-
SubscriptionName formattedSubscriptionName =
87-
SubscriptionName.create(projectId, subscriptionName);
8884
// [START replacePushConfig]
85+
SubscriptionName subscriptionName = SubscriptionName.create(projectId, mySubscription);
8986
PushConfig pushConfig = PushConfig.newBuilder().setPushEndpoint(endpoint).build();
90-
subscriberClient.modifyPushConfig(formattedSubscriptionName, pushConfig);
87+
subscriberClient.modifyPushConfig(subscriptionName, pushConfig);
9188
// [END replacePushConfig]
9289
}
9390
}
9491

95-
/** Example of listing subscriptions, specifying the page size. */
92+
/** Example of listing subscriptions. */
9693
public ListSubscriptionsPagedResponse listSubscriptions() throws Exception {
9794
try (SubscriberClient subscriberClient = SubscriberClient.create()) {
98-
ProjectName projectName = ProjectName.create(projectId);
9995
// [START listSubscriptions]
10096
ListSubscriptionsRequest listSubscriptionsRequest =
10197
ListSubscriptionsRequest.newBuilder()
102-
.setProjectWithProjectName(projectName)
103-
.setPageSize(100)
98+
.setProjectWithProjectName(ProjectName.create(projectId))
10499
.build();
105-
PagedResponseWrappers.ListSubscriptionsPagedResponse response =
100+
ListSubscriptionsPagedResponse response =
106101
subscriberClient.listSubscriptions(listSubscriptionsRequest);
107102
Iterable<Subscription> subscriptions = response.iterateAllElements();
108103
for (Subscription subscription : subscriptions) {
@@ -113,48 +108,23 @@ public ListSubscriptionsPagedResponse listSubscriptions() throws Exception {
113108
}
114109
}
115110

116-
/** Example of listing subscriptions, specifying the page size and page token. */
117-
public ListSubscriptionsPagedResponse listSubscriptionsWithPageToken(String pageToken)
118-
throws Exception {
119-
try (SubscriberClient subscriberClient = SubscriberClient.create()) {
120-
ProjectName projectName = ProjectName.create(projectId);
121-
// [START listSubscriptionsWithPageToken]
122-
ListSubscriptionsRequest listSubscriptionsRequest =
123-
ListSubscriptionsRequest.newBuilder()
124-
.setProjectWithProjectName(projectName)
125-
.setPageSize(100)
126-
.setPageToken(pageToken)
127-
.build();
128-
PagedResponseWrappers.ListSubscriptionsPagedResponse response =
129-
subscriberClient.listSubscriptions(listSubscriptionsRequest);
130-
Iterable<Subscription> subscriptions = response.iterateAllElements();
131-
for (Subscription subscription : subscriptions) {
132-
// do something with the subscription
133-
}
134-
// [END listSubscriptionsWithPageToken]
135-
return response;
136-
}
137-
}
138-
139111
/** Example of deleting a subscription. */
140-
public SubscriptionName deleteSubscription(String subscriptionName) throws Exception {
112+
public SubscriptionName deleteSubscription(String mySubscription) throws Exception {
141113
try (SubscriberClient subscriberClient = SubscriberClient.create()) {
142-
SubscriptionName formattedSubscriptionName =
143-
SubscriptionName.create(projectId, subscriptionName);
144114
// [START deleteSubscription]
145-
subscriberClient.deleteSubscription(formattedSubscriptionName);
115+
SubscriptionName subscriptionName = SubscriptionName.create(projectId, mySubscription);
116+
subscriberClient.deleteSubscription(subscriptionName);
146117
// [END deleteSubscription]
147-
return formattedSubscriptionName;
118+
return subscriptionName;
148119
}
149120
}
150121

151122
/** Example of getting a subscription policy. */
152-
public Policy getSubscriptionPolicy(String subscriptionName) throws Exception {
123+
public Policy getSubscriptionPolicy(String mySubscription) throws Exception {
153124
try (SubscriberClient subscriberClient = SubscriberClient.create()) {
154-
SubscriptionName formattedSubscriptionName =
155-
SubscriptionName.create(projectId, subscriptionName);
156125
// [START getSubscriptionPolicy]
157-
Policy policy = subscriberClient.getIamPolicy(formattedSubscriptionName.toString());
126+
SubscriptionName subscriptionName = SubscriptionName.create(projectId, mySubscription);
127+
Policy policy = subscriberClient.getIamPolicy(subscriptionName.toString());
158128
if (policy == null) {
159129
// subscription was not found
160130
}
@@ -164,12 +134,11 @@ public Policy getSubscriptionPolicy(String subscriptionName) throws Exception {
164134
}
165135

166136
/** Example of replacing a subscription policy. */
167-
public Policy replaceSubscriptionPolicy(String subscriptionName) throws Exception {
137+
public Policy replaceSubscriptionPolicy(String mySubscription) throws Exception {
168138
try (SubscriberClient subscriberClient = SubscriberClient.create()) {
169-
SubscriptionName formattedSubscriptionName =
170-
SubscriptionName.create(projectId, subscriptionName);
171139
// [START replaceSubscriptionPolicy]
172-
Policy policy = subscriberClient.getIamPolicy(formattedSubscriptionName.toString());
140+
SubscriptionName subscriptionName = SubscriptionName.create(projectId, mySubscription);
141+
Policy policy = subscriberClient.getIamPolicy(subscriptionName.toString());
173142
// Create a role => members binding
174143
Binding binding =
175144
Binding.newBuilder()
@@ -179,36 +148,33 @@ public Policy replaceSubscriptionPolicy(String subscriptionName) throws Exceptio
179148
//Update policy
180149
Policy updatedPolicy = policy.toBuilder().addBindings(binding).build();
181150

182-
updatedPolicy = subscriberClient.setIamPolicy(
183-
formattedSubscriptionName.toString(), updatedPolicy);
151+
updatedPolicy = subscriberClient.setIamPolicy(subscriptionName.toString(), updatedPolicy);
184152
// [END replaceSubscriptionPolicy]
185153
return updatedPolicy;
186154
}
187155
}
188156

189157
/** Example of testing whether the caller has the provided permissions on a subscription. */
190-
public TestIamPermissionsResponse testSubscriptionPermissions(String subscriptionName)
158+
public TestIamPermissionsResponse testSubscriptionPermissions(String mySubscription)
191159
throws Exception {
192160
try (PublisherClient publisherClient = PublisherClient.create()) {
193-
SubscriptionName formattedSubscriptionName =
194-
SubscriptionName.create(projectId, subscriptionName);
195161
// [START testSubscriptionPermissions]
196162
List<String> permissions = new LinkedList<>();
197163
permissions.add("pubsub.subscriptions.get");
164+
SubscriptionName subscriptionName = SubscriptionName.create(projectId, mySubscription);
198165
TestIamPermissionsResponse testedPermissions =
199-
publisherClient.testIamPermissions(formattedSubscriptionName.toString(), permissions);
166+
publisherClient.testIamPermissions(subscriptionName.toString(), permissions);
200167
// [END testSubscriptionPermissions]
201168
return testedPermissions;
202169
}
203170
}
204171

205172
/** Example of getting a subscription. */
206-
public Subscription getSubscription(String subscriptionName) throws Exception {
207-
SubscriptionName formattedSubscriptionName =
208-
SubscriptionName.create(projectId, subscriptionName);
173+
public Subscription getSubscription(String mySubscription) throws Exception {
209174
try (SubscriberClient subscriberClient = SubscriberClient.create()) {
210175
// [START getSubscription]
211-
Subscription subscription = subscriberClient.getSubscription(formattedSubscriptionName);
176+
SubscriptionName subscriptionName = SubscriptionName.create(projectId, mySubscription);
177+
Subscription subscription = subscriberClient.getSubscription(subscriptionName);
212178
// [END getSubscription]
213179
return subscription;
214180
}

google-cloud-examples/src/test/java/com/google/cloud/examples/pubsub/snippets/Cleanup.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,10 @@ protected static void deleteTestTopicsAndSubscriptions(
3131

3232
private static void deleteTestTopics(String projectId, String[] testTopics) throws Exception {
3333
try (PublisherClient publisherClient = PublisherClient.create()) {
34-
for (String testTopic : testTopics) {
34+
for (String name : testTopics) {
3535
try {
36-
publisherClient.deleteTopic(TopicName.create(projectId, testTopic));
36+
publisherClient.deleteTopic(TopicName.create(projectId, name));
37+
System.out.println("Topic deleted : " + name);
3738
} catch (Exception e) {
3839
//do nothing catch clause
3940
}
@@ -48,6 +49,7 @@ private static void deleteTestSubscriptions(String projectId, String[] subscript
4849
try {
4950
subscriberClient.deleteSubscription(
5051
SubscriptionName.create(projectId, name));
52+
System.out.println("Subscription deleted : " + name);
5153
} catch (Exception e) {
5254
//do nothing catch clause
5355
}

0 commit comments

Comments
 (0)