public boolean isCancelled() { return cancelFuture.isDone(); }
public boolean isDone() { return done.isDone(); } }
@Override public void run() { // Only request more if we're not shutdown. // If errorFuture is done, the stream has either failed or hung up, // and we don't need to request. if (isAlive() && !errorFuture.isDone()) { lock.lock(); try { thisController.request(1); } catch (Exception e) { logger.log(Level.WARNING, "cannot request more messages", e); } finally { lock.unlock(); } } } });
@Override public void onEvent(@Nullable QuerySnapshot snapshots, @Nullable FirestoreException e) { if (e != null) { System.err.println("Listen failed:" + e); return; } List<String> cities = new ArrayList<>(); for (DocumentSnapshot doc : snapshots) { if (doc.get("name") != null) { cities.add(doc.getString("name")); } } System.out.println("Current cites in CA: " + cities); // [START_EXCLUDE silent] if (!future.isDone()) { future.set(cities); } // [END_EXCLUDE] } });
@Override public void onEvent(@Nullable DocumentSnapshot snapshot, @Nullable FirestoreException e) { if (e != null) { System.err.println("Listen failed: " + e); return; } if (snapshot != null && snapshot.exists()) { System.out.println("Current data: " + snapshot.getData()); } else { System.out.print("Current data: null"); } // [START_EXCLUDE silent] if (!future.isDone()) { future.set(snapshot.getData()); } // [END_EXCLUDE] } });
@Override public void onEvent(@Nullable QuerySnapshot snapshots, @Nullable FirestoreException e) { if (e != null) { System.err.println("Listen failed: " + e); return; } for (DocumentChange dc : snapshots.getDocumentChanges()) { switch (dc.getType()) { case ADDED: System.out.println("New city: " + dc.getDocument().getData()); break; case MODIFIED: System.out.println("Modified city: " + dc.getDocument().getData()); break; case REMOVED: System.out.println("Removed city: " + dc.getDocument().getData()); break; default: break; } } // [START_EXCLUDE silent] if (!future.isDone()) { future.set(snapshots.getDocumentChanges()); } // [END_EXCLUDE] } });
public boolean isDone() { return done.isDone(); } }
public boolean isCancelled() { return cancelFuture.isDone(); }
Truth.assertThat(downstreamObserver1.done.isDone()).isFalse();