private void startConnections( List<? extends ApiService> connections, final ApiService.Listener connectionsListener) { for (ApiService subscriber : connections) { subscriber.addListener(connectionsListener, executor); subscriber.startAsync(); } for (ApiService subscriber : connections) { subscriber.awaitRunning(); } }
private Subscriber startSubscriber(Builder testSubscriberBuilder) throws Exception { Subscriber subscriber = testSubscriberBuilder.build(); subscriber.startAsync().awaitRunning(); return subscriber; }
subscriber.startAsync().awaitRunning();
/** Receive messages over a subscription. */ public static void main(String... args) throws Exception { // set subscriber id, eg. my-sub String subscriptionId = args[0]; ProjectSubscriptionName subscriptionName = ProjectSubscriptionName.of( PROJECT_ID, subscriptionId); Subscriber subscriber = null; try { // create a subscriber bound to the asynchronous message receiver subscriber = Subscriber.newBuilder(subscriptionName, new MessageReceiverExample()).build(); subscriber.startAsync().awaitRunning(); // Continue to listen to messages while (true) { PubsubMessage message = messages.take(); System.out.println("Message Id: " + message.getMessageId()); System.out.println("Data: " + message.getData().toStringUtf8()); } } finally { if (subscriber != null) { subscriber.stopAsync(); } } } }
subscriber.startAsync().awaitRunning();
@Override public ListenableFuture<RunResult> doRun() { synchronized (this) { if (subscriber.isRunning()) { return Futures.immediateFuture(RunResult.empty()); } if (shuttingDown) { return Futures.immediateFailedFuture( new IllegalStateException("the task is shutting down")); } try { subscriber.startAsync().awaitRunning(); } catch (Exception e) { log.error("Fatal error from subscriber.", e); subscriber = Subscriber.defaultBuilder(this.subscription, this).build(); return Futures.immediateFailedFuture(e); } return Futures.immediateFuture(RunResult.empty()); } }
synchronized public void start() { this.subscriber = Subscriber .newBuilder(ProjectSubscriptionName.of(project, subscriptionName), messageReceiver) .setCredentialsProvider(FixedCredentialsProvider.create(credentials)) .build(); subscriber.addListener(new GooglePubsubFailureHandler(this, formatSubscriptionName(project, subscriptionName)), MoreExecutors.directExecutor()); subscriber.startAsync().awaitRunning(); log.info("Google Pubsub subscriber started for {}", formatSubscriptionName(project, subscriptionName)); }