public Iterable<ProjectSubscriptionName> iterateAllAsProjectSubscriptionName() { return Iterables.transform( iterateAll(), new Function<String, ProjectSubscriptionName>() { @Override public ProjectSubscriptionName apply(String arg0) { return ProjectSubscriptionName.parse(arg0); } }); } }
List<String> resources = Lists.newArrayList(pagedListResponse.iterateAll()); Assert.assertEquals(1, resources.size()); Assert.assertEquals(expectedResponse.getSubscriptionsList().get(0), resources.get(0)); List<ProjectSubscriptionName> resourceNames = Lists.newArrayList(pagedListResponse.iterateAllAsProjectSubscriptionName()); Assert.assertEquals(1, resourceNames.size()); Assert.assertEquals(
/** Example of listing subscriptions for a topic. */ public ListTopicSubscriptionsPagedResponse listTopicSubscriptions(String topicId) throws Exception { // [START pubsub_list_topic_subscriptions] try (TopicAdminClient topicAdminClient = TopicAdminClient.create()) { ProjectTopicName topicName = ProjectTopicName.of(projectId, topicId); ListTopicSubscriptionsRequest request = ListTopicSubscriptionsRequest.newBuilder().setTopic(topicName.toString()).build(); ListTopicSubscriptionsPagedResponse response = topicAdminClient.listTopicSubscriptions(request); Iterable<String> subscriptionNames = response.iterateAll(); for (String subscriptionName : subscriptionNames) { // do something with the subscription name } return response; } // [END pubsub_list_topic_subscriptions] }
public static ApiFuture<ListTopicSubscriptionsPagedResponse> createAsync( PageContext<ListTopicSubscriptionsRequest, ListTopicSubscriptionsResponse, String> context, ApiFuture<ListTopicSubscriptionsResponse> futureResponse) { ApiFuture<ListTopicSubscriptionsPage> futurePage = ListTopicSubscriptionsPage.createEmptyPage().createPageAsync(context, futureResponse); return ApiFutures.transform( futurePage, new ApiFunction<ListTopicSubscriptionsPage, ListTopicSubscriptionsPagedResponse>() { @Override public ListTopicSubscriptionsPagedResponse apply(ListTopicSubscriptionsPage input) { return new ListTopicSubscriptionsPagedResponse(input); } }); }
@Override public ApiFuture<ListTopicSubscriptionsPagedResponse> getFuturePagedResponse( UnaryCallable<ListTopicSubscriptionsRequest, ListTopicSubscriptionsResponse> callable, ListTopicSubscriptionsRequest request, ApiCallContext context, ApiFuture<ListTopicSubscriptionsResponse> futureResponse) { PageContext<ListTopicSubscriptionsRequest, ListTopicSubscriptionsResponse, String> pageContext = PageContext.create( callable, LIST_TOPIC_SUBSCRIPTIONS_PAGE_STR_DESC, request, context); return ListTopicSubscriptionsPagedResponse.createAsync(pageContext, futureResponse); } };
@Override public ListTopicSubscriptionsPagedResponse apply(ListTopicSubscriptionsPage input) { return new ListTopicSubscriptionsPagedResponse(input); } });