@Override public Object call() throws Exception { GridNioFutureImpl<String> fut = new GridNioFutureImpl<>(null); fut.onCancelled(); fut.onDone(); return fut.get(); } }, IgniteFutureCancelledCheckedException.class, null);
/** {@inheritDoc} */ @Override public String toString() { return S.toString(GridNioEmbeddedFuture.class, this, super.toString()); } }
@Override public Object call() throws Exception { GridNioFutureImpl<String> fut = new GridNioFutureImpl<>(null); fut.onCancelled(); return fut.get(); } }, IgniteFutureCancelledCheckedException.class, null);
GridNioFutureImpl<String> fut = new GridNioFutureImpl<>(null); fut.listen(new CI1<IgniteInternalFuture<String>>() { @Override public void apply(IgniteInternalFuture<String> t) { if (Thread.currentThread() != runThread) fut.onDone(); fut.listen(new CI1<IgniteInternalFuture<String>>() { @Override public void apply(IgniteInternalFuture<String> t) { if (Thread.currentThread() != runThread)
@Override public void run() { origFut.onDone(100); } };
public void testNioEmbeddedFuture() throws Exception { final GridNioFutureImpl<Integer> origFut = new GridNioFutureImpl<>(null); assertFalse("Expect original future is not complete.", origFut.isDone()); t.join(); assertTrue("Expect original future is complete.", origFut.isDone()); assertTrue("Expect embedded future is complete.", embFut.isDone());
sslHandshakeFut = new GridNioFutureImpl<>(null);
@Override public Object call() throws Exception { return callFut1.get(); } }, IgniteCheckedException.class, "TestMessage");
/** {@inheritDoc} */ @Override public void onSessionClosed(GridNioSession ses) throws IgniteCheckedException { GridNioSslHandler hnd = sslHandler(ses); try { GridNioFutureImpl<?> fut = ses.removeMeta(HANDSHAKE_FUT_META_KEY); if (fut != null) fut.onDone(new IgniteCheckedException("SSL handshake failed (connection closed).")); hnd.shutdown(); } finally { proceedSessionClosed(ses); } }
sslHandshakeFut = new GridNioFutureImpl<>(null);
GridNioFutureImpl<String> fut = new GridNioFutureImpl<>(null); fut.onDone(); assertNull(fut.get()); fut = new GridNioFutureImpl<>(null); fut.onDone("test"); assertEquals("test", fut.get()); fut = new GridNioFutureImpl<>(null); fut.onDone(new IgniteCheckedException("TestMessage")); fut = new GridNioFutureImpl<>(null); fut.onDone("test", new IgniteCheckedException("TestMessage")); fut = new GridNioFutureImpl<>(null); fut.onDone("test"); fut.onCancelled(); assertEquals("test", fut.get());
fut.onDone();
/** {@inheritDoc} */ @Override public String toString() { return S.toString(GridNioEmbeddedFuture.class, this, super.toString()); } }
GridNioFutureImpl<Object> unfinished = new GridNioFutureImpl<>(null); GridNioFutureImpl<Object> finished = new GridNioFutureImpl<>(null); GridNioFutureImpl<Object> cancelled = new GridNioFutureImpl<>(null); finished.onDone("Finished"); cancelled.onCancelled(); unfinished.get(50); Object o = finished.get(); o = finished.get(1000); cancelled.get(); cancelled.get(1000);
/** {@inheritDoc} */ @Override public void onSessionClosed(GridNioSession ses) throws IgniteCheckedException { GridNioSslHandler hnd = sslHandler(ses); try { GridNioFutureImpl<?> fut = ses.removeMeta(HANDSHAKE_FUT_META_KEY); if (fut != null) fut.onDone(new IgniteCheckedException("SSL handshake failed (connection closed).")); hnd.shutdown(); } finally { proceedSessionClosed(ses); } }