@Test @SuppressWarnings("all") public void listSubscriptionsTest() { String nextPageToken = ""; Subscription subscriptionsElement = Subscription.newBuilder().build(); List<Subscription> subscriptions = Arrays.asList(subscriptionsElement); ListSubscriptionsResponse expectedResponse = ListSubscriptionsResponse.newBuilder() .setNextPageToken(nextPageToken) .addAllSubscriptions(subscriptions) .build(); mockSubscriber.addResponse(expectedResponse); ProjectName project = ProjectName.of("[PROJECT]"); ListSubscriptionsPagedResponse pagedListResponse = client.listSubscriptions(project); List<Subscription> resources = Lists.newArrayList(pagedListResponse.iterateAll()); Assert.assertEquals(1, resources.size()); Assert.assertEquals(expectedResponse.getSubscriptionsList().get(0), resources.get(0)); List<GeneratedMessageV3> actualRequests = mockSubscriber.getRequests(); Assert.assertEquals(1, actualRequests.size()); ListSubscriptionsRequest actualRequest = (ListSubscriptionsRequest) actualRequests.get(0); Assert.assertEquals(project, ProjectName.parse(actualRequest.getProject())); Assert.assertTrue( channelProvider.isHeaderSent( ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern())); }
/** * Return every subscription in a project. * <p>If there are multiple pages, they will all be merged into the same result. * @return a list of subscriptions */ public List<Subscription> listSubscriptions() { SubscriptionAdminClient.ListSubscriptionsPagedResponse subscriptionsPage = this.subscriptionAdminClient.listSubscriptions(ProjectName.of(this.projectId)); return Lists.newArrayList(subscriptionsPage.iterateAll()); }
/** * Return every subscription in a project. * <p>If there are multiple pages, they will all be merged into the same result. * @return a list of subscriptions */ public List<Subscription> listSubscriptions() { SubscriptionAdminClient.ListSubscriptionsPagedResponse subscriptionsPage = this.subscriptionAdminClient.listSubscriptions(ProjectName.of(this.projectId)); List<Subscription> subscriptions = new ArrayList<>(); subscriptionsPage.iterateAll().forEach(subscriptions::add); return Collections.unmodifiableList(subscriptions); }
/** Example of listing subscriptions. */ public ListSubscriptionsPagedResponse listSubscriptions() throws Exception { // [START pubsub_list_subscriptions] try (SubscriptionAdminClient subscriptionAdminClient = SubscriptionAdminClient.create()) { ListSubscriptionsRequest listSubscriptionsRequest = ListSubscriptionsRequest.newBuilder() .setProject(ProjectName.of(projectId).toString()) .build(); ListSubscriptionsPagedResponse response = subscriptionAdminClient.listSubscriptions(listSubscriptionsRequest); Iterable<Subscription> subscriptions = response.iterateAll(); for (Subscription subscription : subscriptions) { // do something with the subscription } return response; } // [END pubsub_list_subscriptions] }
public static ApiFuture<ListSubscriptionsPagedResponse> createAsync( PageContext<ListSubscriptionsRequest, ListSubscriptionsResponse, Subscription> context, ApiFuture<ListSubscriptionsResponse> futureResponse) { ApiFuture<ListSubscriptionsPage> futurePage = ListSubscriptionsPage.createEmptyPage().createPageAsync(context, futureResponse); return ApiFutures.transform( futurePage, new ApiFunction<ListSubscriptionsPage, ListSubscriptionsPagedResponse>() { @Override public ListSubscriptionsPagedResponse apply(ListSubscriptionsPage input) { return new ListSubscriptionsPagedResponse(input); } }); }
@Override public ApiFuture<ListSubscriptionsPagedResponse> getFuturePagedResponse( UnaryCallable<ListSubscriptionsRequest, ListSubscriptionsResponse> callable, ListSubscriptionsRequest request, ApiCallContext context, ApiFuture<ListSubscriptionsResponse> futureResponse) { PageContext<ListSubscriptionsRequest, ListSubscriptionsResponse, Subscription> pageContext = PageContext.create( callable, LIST_SUBSCRIPTIONS_PAGE_STR_DESC, request, context); return ListSubscriptionsPagedResponse.createAsync(pageContext, futureResponse); } };
@Override public ListSubscriptionsPagedResponse apply(ListSubscriptionsPage input) { return new ListSubscriptionsPagedResponse(input); } });