This is an automated email from the ASF dual-hosted git repository.
shishkovilja pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git
The following commit(s) were added to refs/heads/master by this push:
new 2fe5dbdddd8 IGNITE-26186 Remove GridNioFuture (#12393)
2fe5dbdddd8 is described below
commit 2fe5dbdddd83d21d38109d86838ca95661c872f1
Author: Vladimir Steshin <[email protected]>
AuthorDate: Wed Oct 8 09:01:32 2025 +0300
IGNITE-26186 Remove GridNioFuture (#12393)
---
.../GridNioClientConnectionMultiplexer.java | 10 +-
.../processors/cache/CacheOperationFilter.java | 61 ------
.../processors/odbc/ClientListenerNioListener.java | 4 +-
.../protocols/tcp/GridTcpMemcachedNioListener.java | 3 +-
.../rest/protocols/tcp/GridTcpRestNioListener.java | 3 +-
.../protocols/tcp/redis/GridRedisNioListener.java | 3 +-
.../util/nio/GridConnectionBytesVerifyFilter.java | 5 +-
.../util/nio/GridNioAsyncNotifyFilter.java | 5 +-
.../internal/util/nio/GridNioCodecFilter.java | 5 +-
.../internal/util/nio/GridNioEmbeddedFuture.java | 77 --------
.../ignite/internal/util/nio/GridNioFilter.java | 17 +-
.../internal/util/nio/GridNioFilterAdapter.java | 13 +-
.../internal/util/nio/GridNioFilterChain.java | 17 +-
.../internal/util/nio/GridNioFinishedFuture.java | 70 -------
.../ignite/internal/util/nio/GridNioFuture.java | 49 -----
.../internal/util/nio/GridNioFutureImpl.java | 66 -------
.../ignite/internal/util/nio/GridNioServer.java | 67 ++++---
.../ignite/internal/util/nio/GridNioSession.java | 9 +-
.../internal/util/nio/GridNioSessionImpl.java | 18 +-
.../internal/util/nio/GridNioTracerFilter.java | 5 +-
.../util/nio/GridSelectorNioSessionImpl.java | 5 +-
.../util/nio/GridTcpNioCommunicationClient.java | 3 +-
.../internal/util/nio/ssl/GridNioSslFilter.java | 22 +--
.../internal/util/nio/ssl/GridNioSslHandler.java | 33 ++--
.../future/nio/GridNioEmbeddedFutureSelfTest.java | 62 ------
.../util/future/nio/GridNioFutureSelfTest.java | 218 ---------------------
.../ignite/internal/util/nio/GridNioSelfTest.java | 2 +-
.../util/nio/impl/GridNioFilterChainSelfTest.java | 10 +-
.../internal/util/nio/impl/MockNioSession.java | 16 +-
.../ignite/testsuites/IgniteLangSelfTestSuite.java | 4 -
30 files changed, 156 insertions(+), 726 deletions(-)
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/client/thin/io/gridnioserver/GridNioClientConnectionMultiplexer.java
b/modules/core/src/main/java/org/apache/ignite/internal/client/thin/io/gridnioserver/GridNioClientConnectionMultiplexer.java
index 2e4cb0d25e0..d2f6895ac1d 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/client/thin/io/gridnioserver/GridNioClientConnectionMultiplexer.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/client/thin/io/gridnioserver/GridNioClientConnectionMultiplexer.java
@@ -31,15 +31,15 @@ import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteLogger;
import org.apache.ignite.client.ClientConnectionException;
import org.apache.ignite.configuration.ClientConfiguration;
+import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.client.thin.ClientSslUtils;
import org.apache.ignite.internal.client.thin.io.ClientConnection;
import org.apache.ignite.internal.client.thin.io.ClientConnectionMultiplexer;
import org.apache.ignite.internal.client.thin.io.ClientConnectionStateHandler;
import org.apache.ignite.internal.client.thin.io.ClientMessageHandler;
+import org.apache.ignite.internal.util.future.GridFutureAdapter;
import org.apache.ignite.internal.util.nio.GridNioCodecFilter;
import org.apache.ignite.internal.util.nio.GridNioFilter;
-import org.apache.ignite.internal.util.nio.GridNioFuture;
-import org.apache.ignite.internal.util.nio.GridNioFutureImpl;
import org.apache.ignite.internal.util.nio.GridNioServer;
import org.apache.ignite.internal.util.nio.GridNioSession;
import org.apache.ignite.internal.util.nio.ssl.GridNioSslFilter;
@@ -173,15 +173,15 @@ public class GridNioClientConnectionMultiplexer
implements ClientConnectionMulti
}
Map<Integer, Object> meta = new HashMap<>();
- GridNioFuture<?> sslHandshakeFut = null;
+ IgniteInternalFuture<?> sslHandshakeFut = null;
if (sslCtx != null) {
- sslHandshakeFut = new GridNioFutureImpl<>(null);
+ sslHandshakeFut = new GridFutureAdapter<>();
meta.put(GridNioSslFilter.HANDSHAKE_FUT_META_KEY,
sslHandshakeFut);
}
- GridNioFuture<GridNioSession> sesFut = srv.createSession(ch, meta,
false, null);
+ IgniteInternalFuture<GridNioSession> sesFut =
srv.createSession(ch, meta, false, null);
if (sesFut.error() != null)
sesFut.get();
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheOperationFilter.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheOperationFilter.java
deleted file mode 100644
index 7fdfaac5b7b..00000000000
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/CacheOperationFilter.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal.processors.cache;
-
-import org.jetbrains.annotations.Nullable;
-
-/**
- * Cache operation filter.
- */
-public enum CacheOperationFilter {
- /** Always pass. */
- ALWAYS,
-
- /** No value. */
- NO_VAL,
-
- /** Has value. */
- HAS_VAL,
-
- /** Equals to value. */
- EQUALS_VAL;
-
- /**
- * Creare predicate from operation filter.
- *
- * @param val Optional value.
- * @return Predicate.
- */
- @Nullable public CacheEntryPredicate createPredicate(@Nullable CacheObject
val) {
- switch (this) {
- case ALWAYS:
- return null;
-
- case NO_VAL:
- return new CacheEntryPredicateNoValue();
-
- case HAS_VAL:
- return new CacheEntryPredicateHasValue();
-
- default:
- assert this == EQUALS_VAL;
-
- return new CacheEntryPredicateContainsValue(val);
- }
- }
-}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/odbc/ClientListenerNioListener.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/odbc/ClientListenerNioListener.java
index d7d6a428595..f56867a0eeb 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/odbc/ClientListenerNioListener.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/odbc/ClientListenerNioListener.java
@@ -27,6 +27,7 @@ import
org.apache.ignite.configuration.ThinClientConfiguration;
import org.apache.ignite.failure.FailureContext;
import org.apache.ignite.failure.FailureType;
import org.apache.ignite.internal.GridKernalContext;
+import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.MarshallerContextImpl;
import org.apache.ignite.internal.binary.BinaryMarshaller;
import org.apache.ignite.internal.binary.BinaryReaderEx;
@@ -40,7 +41,6 @@ import
org.apache.ignite.internal.processors.platform.client.ClientConnectionCon
import org.apache.ignite.internal.processors.platform.client.ClientStatus;
import org.apache.ignite.internal.processors.security.OperationSecurityContext;
import org.apache.ignite.internal.util.GridSpinBusyLock;
-import org.apache.ignite.internal.util.nio.GridNioFuture;
import org.apache.ignite.internal.util.nio.GridNioServerListenerAdapter;
import org.apache.ignite.internal.util.nio.GridNioSession;
import org.apache.ignite.internal.util.nio.GridNioSessionMetaKey;
@@ -269,7 +269,7 @@ public class ClientListenerNioListener extends
GridNioServerListenerAdapter<Clie
", resp=" + resp.status() + ']');
}
- GridNioFuture<?> fut = ses.send(parser.encode(resp));
+ IgniteInternalFuture<?> fut = ses.send(parser.encode(resp));
fut.listen(() -> {
if (fut.error() == null)
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/GridTcpMemcachedNioListener.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/GridTcpMemcachedNioListener.java
index 39839416519..255f177a47c 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/GridTcpMemcachedNioListener.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/GridTcpMemcachedNioListener.java
@@ -32,7 +32,6 @@ import
org.apache.ignite.internal.processors.rest.request.GridRestRequest;
import org.apache.ignite.internal.util.future.GridEmbeddedFuture;
import org.apache.ignite.internal.util.lang.GridTuple3;
import org.apache.ignite.internal.util.lang.IgniteClosure2X;
-import org.apache.ignite.internal.util.nio.GridNioFuture;
import org.apache.ignite.internal.util.nio.GridNioServerListenerAdapter;
import org.apache.ignite.internal.util.nio.GridNioSession;
import org.apache.ignite.internal.util.typedef.C2;
@@ -260,7 +259,7 @@ public class GridTcpMemcachedNioListener extends
GridNioServerListenerAdapter<Gr
* @param res Response.
* @return NIO send future.
*/
- private GridNioFuture<?> sendResponse(GridNioSession ses,
GridMemcachedMessage res) {
+ private IgniteInternalFuture<?> sendResponse(GridNioSession ses,
GridMemcachedMessage res) {
return ses.send(res);
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/GridTcpRestNioListener.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/GridTcpRestNioListener.java
index 459834f3fca..63e86b309c2 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/GridTcpRestNioListener.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/GridTcpRestNioListener.java
@@ -63,7 +63,6 @@ import
org.apache.ignite.internal.processors.rest.request.GridRestRequest;
import org.apache.ignite.internal.processors.rest.request.GridRestTaskRequest;
import
org.apache.ignite.internal.processors.rest.request.GridRestTopologyRequest;
import
org.apache.ignite.internal.processors.rest.request.GridRestWarmUpRequest;
-import org.apache.ignite.internal.util.nio.GridNioFuture;
import org.apache.ignite.internal.util.nio.GridNioServerListenerAdapter;
import org.apache.ignite.internal.util.nio.GridNioSession;
import org.apache.ignite.internal.util.nio.GridNioSessionMetaKey;
@@ -304,7 +303,7 @@ public class GridTcpRestNioListener extends
GridNioServerListenerAdapter<GridCli
res.errorMessage("Failed to process client
request: " + e.getMessage());
}
- GridNioFuture<?> sf = ses.send(res);
+ IgniteInternalFuture<?> sf = ses.send(res);
// Check if send failed.
sf.listen(new CI1<IgniteInternalFuture<?>>() {
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/redis/GridRedisNioListener.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/redis/GridRedisNioListener.java
index 9c0d08541a5..955eed9f2c8 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/redis/GridRedisNioListener.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/rest/protocols/tcp/redis/GridRedisNioListener.java
@@ -41,7 +41,6 @@ import
org.apache.ignite.internal.processors.rest.handlers.redis.string.GridRedi
import
org.apache.ignite.internal.processors.rest.handlers.redis.string.GridRedisSetCommandHandler;
import
org.apache.ignite.internal.processors.rest.handlers.redis.string.GridRedisSetRangeCommandHandler;
import
org.apache.ignite.internal.processors.rest.handlers.redis.string.GridRedisStrlenCommandHandler;
-import org.apache.ignite.internal.util.nio.GridNioFuture;
import org.apache.ignite.internal.util.nio.GridNioServerListenerAdapter;
import org.apache.ignite.internal.util.nio.GridNioSession;
import org.apache.ignite.internal.util.nio.GridNioSessionMetaKey;
@@ -162,7 +161,7 @@ public class GridRedisNioListener extends
GridNioServerListenerAdapter<GridRedis
* @param res Response.
* @return NIO send future.
*/
- private GridNioFuture<?> sendResponse(GridNioSession ses, GridRedisMessage
res) {
+ private IgniteInternalFuture<?> sendResponse(GridNioSession ses,
GridRedisMessage res) {
return ses.send(res);
}
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridConnectionBytesVerifyFilter.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridConnectionBytesVerifyFilter.java
index f110cf29937..3829aaa6aa0 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridConnectionBytesVerifyFilter.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridConnectionBytesVerifyFilter.java
@@ -21,6 +21,7 @@ import java.nio.ByteBuffer;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteLogger;
+import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.util.typedef.internal.LT;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgniteInClosure;
@@ -72,7 +73,7 @@ public class GridConnectionBytesVerifyFilter extends
GridNioFilterAdapter {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> onSessionWrite(
+ @Override public IgniteInternalFuture<?> onSessionWrite(
GridNioSession ses,
Object msg,
boolean fut,
@@ -134,7 +135,7 @@ public class GridConnectionBytesVerifyFilter extends
GridNioFilterAdapter {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<Boolean> onSessionClose(GridNioSession ses)
throws IgniteCheckedException {
+ @Override public IgniteInternalFuture<Boolean>
onSessionClose(GridNioSession ses) throws IgniteCheckedException {
return proceedSessionClose(ses);
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioAsyncNotifyFilter.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioAsyncNotifyFilter.java
index 3ca6a8cc7ea..ccb7f38b912 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioAsyncNotifyFilter.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioAsyncNotifyFilter.java
@@ -21,6 +21,7 @@ import java.util.concurrent.Executor;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteLogger;
+import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.internal.util.worker.GridWorker;
import org.apache.ignite.internal.util.worker.GridWorkerPool;
@@ -110,7 +111,7 @@ public class GridNioAsyncNotifyFilter extends
GridNioFilterAdapter {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> onSessionWrite(
+ @Override public IgniteInternalFuture<?> onSessionWrite(
GridNioSession ses,
Object msg,
boolean fut,
@@ -120,7 +121,7 @@ public class GridNioAsyncNotifyFilter extends
GridNioFilterAdapter {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<Boolean> onSessionClose(GridNioSession ses)
throws IgniteCheckedException {
+ @Override public IgniteInternalFuture<Boolean>
onSessionClose(GridNioSession ses) throws IgniteCheckedException {
return proceedSessionClose(ses);
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioCodecFilter.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioCodecFilter.java
index a53a5c0d4e7..1ecb10dc3b6 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioCodecFilter.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioCodecFilter.java
@@ -22,6 +22,7 @@ import java.nio.ByteBuffer;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteLogger;
+import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.util.tostring.GridToStringExclude;
import org.apache.ignite.internal.util.typedef.internal.LT;
import org.apache.ignite.internal.util.typedef.internal.S;
@@ -80,7 +81,7 @@ public class GridNioCodecFilter extends GridNioFilterAdapter {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> onSessionWrite(
+ @Override public IgniteInternalFuture<?> onSessionWrite(
GridNioSession ses,
Object msg,
boolean fut,
@@ -133,7 +134,7 @@ public class GridNioCodecFilter extends
GridNioFilterAdapter {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<Boolean> onSessionClose(GridNioSession ses)
throws IgniteCheckedException {
+ @Override public IgniteInternalFuture<Boolean>
onSessionClose(GridNioSession ses) throws IgniteCheckedException {
return proceedSessionClose(ses);
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioEmbeddedFuture.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioEmbeddedFuture.java
deleted file mode 100644
index 7efa84560e8..00000000000
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioEmbeddedFuture.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal.util.nio;
-
-import org.apache.ignite.IgniteCheckedException;
-import org.apache.ignite.internal.IgniteInternalFuture;
-import org.apache.ignite.internal.util.typedef.internal.S;
-import org.apache.ignite.lang.IgniteInClosure;
-import org.jetbrains.annotations.Nullable;
-
-/**
- * Future that delegates to some other future.
- */
-public class GridNioEmbeddedFuture<R> extends GridNioFutureImpl<R> {
- /**
- *
- */
- public GridNioEmbeddedFuture() {
- super(null);
- }
-
- /**
- * Callback to notify that future is finished.
- * This method must delegate to {@link #onDone(GridNioFuture, Throwable)}
method.
- *
- * @param res Result.
- */
- public final void onDone(GridNioFuture<R> res) {
- onDone(res, null);
- }
-
- /**
- * Callback to notify that future is finished. Note that if non-{@code
null} exception is passed in
- * the result value will be ignored.
- *
- * @param delegate Optional result.
- * @param err Optional error.
- */
- public void onDone(@Nullable GridNioFuture<R> delegate, @Nullable
Throwable err) {
- assert delegate != null || err != null;
-
- if (err != null)
- onDone(err);
- else {
- delegate.listen(new IgniteInClosure<IgniteInternalFuture<R>>() {
- @Override public void apply(IgniteInternalFuture<R> t) {
- try {
- onDone(t.get());
- }
- catch (IgniteCheckedException e) {
- onDone(e);
- }
- }
- });
- }
- }
-
- /** {@inheritDoc} */
- @Override public String toString() {
- return S.toString(GridNioEmbeddedFuture.class, this, super.toString());
- }
-}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFilter.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFilter.java
index 9163a4f6f05..98096f489fb 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFilter.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFilter.java
@@ -19,6 +19,7 @@ package org.apache.ignite.internal.util.nio;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
+import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.lang.IgniteInClosure;
/**
@@ -112,7 +113,7 @@ public interface GridNioFilter {
* @return Write future or {@code null}.
* @throws IgniteCheckedException If filter is not in chain or
GridNioException occurred in the underlying filter.
*/
- public GridNioFuture<?> proceedSessionWrite(
+ public IgniteInternalFuture<?> proceedSessionWrite(
GridNioSession ses,
Object msg,
boolean fut,
@@ -126,7 +127,7 @@ public interface GridNioFilter {
* @return Close future.
* @throws IgniteCheckedException If filter is not in chain or
GridNioException occurred in the underlying filter.
*/
- public GridNioFuture<Boolean> proceedSessionClose(GridNioSession ses)
throws IgniteCheckedException;
+ public IgniteInternalFuture<Boolean> proceedSessionClose(GridNioSession
ses) throws IgniteCheckedException;
/**
* Invoked when a new session was created.
@@ -163,7 +164,7 @@ public interface GridNioFilter {
* @return Write future or {@code null}.
* @throws GridNioException If GridNioException occurred while handling
event.
*/
- public GridNioFuture<?> onSessionWrite(GridNioSession ses,
+ public IgniteInternalFuture<?> onSessionWrite(GridNioSession ses,
Object msg,
boolean fut,
IgniteInClosure<IgniteException> ackC) throws IgniteCheckedException;
@@ -184,7 +185,7 @@ public interface GridNioFilter {
* @return Close future.
* @throws IgniteCheckedException If IgniteCheckedException occurred while
handling event.
*/
- public GridNioFuture<Boolean> onSessionClose(GridNioSession ses) throws
IgniteCheckedException;
+ public IgniteInternalFuture<Boolean> onSessionClose(GridNioSession ses)
throws IgniteCheckedException;
/**
* Called when session is idle for longer time that is
@@ -227,7 +228,7 @@ public interface GridNioFilter {
* @return Future for operation.
* @throws IgniteCheckedException If filter is not in chain or
GridNioException occurred in the underlying filter.
*/
- public GridNioFuture<?> proceedPauseReads(GridNioSession ses) throws
IgniteCheckedException;
+ public IgniteInternalFuture<?> proceedPauseReads(GridNioSession ses)
throws IgniteCheckedException;
/**
* Pauses reads for session.
@@ -236,7 +237,7 @@ public interface GridNioFilter {
* @return Future for operation.
* @throws IgniteCheckedException If filter is not in chain or
GridNioException occurred in the underlying filter.
*/
- public GridNioFuture<?> onPauseReads(GridNioSession ses) throws
IgniteCheckedException;
+ public IgniteInternalFuture<?> onPauseReads(GridNioSession ses) throws
IgniteCheckedException;
/**
* Resumes reads for session.
@@ -245,7 +246,7 @@ public interface GridNioFilter {
* @return Future for operation.
* @throws IgniteCheckedException If filter is not in chain or
GridNioException occurred in the underlying filter.
*/
- public GridNioFuture<?> proceedResumeReads(GridNioSession ses) throws
IgniteCheckedException;
+ public IgniteInternalFuture<?> proceedResumeReads(GridNioSession ses)
throws IgniteCheckedException;
/**
* Resumes reads for session.
@@ -254,5 +255,5 @@ public interface GridNioFilter {
* @return Future for operation.
* @throws IgniteCheckedException If filter is not in chain or
GridNioException occurred in the underlying filter.
*/
- public GridNioFuture<?> onResumeReads(GridNioSession ses) throws
IgniteCheckedException;
+ public IgniteInternalFuture<?> onResumeReads(GridNioSession ses) throws
IgniteCheckedException;
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFilterAdapter.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFilterAdapter.java
index 05f4ec6885b..ed95f6a9802 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFilterAdapter.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFilterAdapter.java
@@ -19,6 +19,7 @@ package org.apache.ignite.internal.util.nio;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
+import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.lang.IgniteInClosure;
/**
@@ -110,7 +111,7 @@ public abstract class GridNioFilterAdapter implements
GridNioFilter {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> proceedSessionWrite(
+ @Override public IgniteInternalFuture<?> proceedSessionWrite(
GridNioSession ses,
Object msg,
boolean fut,
@@ -122,7 +123,7 @@ public abstract class GridNioFilterAdapter implements
GridNioFilter {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<Boolean> proceedSessionClose(GridNioSession
ses) throws IgniteCheckedException {
+ @Override public IgniteInternalFuture<Boolean>
proceedSessionClose(GridNioSession ses) throws IgniteCheckedException {
checkNext();
return nextFilter.onSessionClose(ses);
@@ -143,26 +144,26 @@ public abstract class GridNioFilterAdapter implements
GridNioFilter {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> proceedPauseReads(GridNioSession ses)
throws IgniteCheckedException {
+ @Override public IgniteInternalFuture<?> proceedPauseReads(GridNioSession
ses) throws IgniteCheckedException {
checkNext();
return nextFilter.onPauseReads(ses);
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> proceedResumeReads(GridNioSession ses)
throws IgniteCheckedException {
+ @Override public IgniteInternalFuture<?> proceedResumeReads(GridNioSession
ses) throws IgniteCheckedException {
checkNext();
return nextFilter.onResumeReads(ses);
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> onPauseReads(GridNioSession ses) throws
IgniteCheckedException {
+ @Override public IgniteInternalFuture<?> onPauseReads(GridNioSession ses)
throws IgniteCheckedException {
return proceedPauseReads(ses);
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> onResumeReads(GridNioSession ses) throws
IgniteCheckedException {
+ @Override public IgniteInternalFuture<?> onResumeReads(GridNioSession ses)
throws IgniteCheckedException {
return proceedResumeReads(ses);
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFilterChain.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFilterChain.java
index a57b546e3db..2903a709aef 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFilterChain.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFilterChain.java
@@ -20,6 +20,7 @@ package org.apache.ignite.internal.util.nio;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteLogger;
+import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.util.typedef.internal.LT;
import org.apache.ignite.lang.IgniteInClosure;
@@ -183,7 +184,7 @@ public class GridNioFilterChain<T> extends
GridNioFilterAdapter {
* @return Send future.
* @throws IgniteCheckedException If IgniteCheckedException occurred while
handling event.
*/
- @Override public GridNioFuture<?> onSessionWrite(
+ @Override public IgniteInternalFuture<?> onSessionWrite(
GridNioSession ses,
Object msg,
boolean fut,
@@ -199,7 +200,7 @@ public class GridNioFilterChain<T> extends
GridNioFilterAdapter {
* @return Close future.
* @throws IgniteCheckedException If IgniteCheckedException occurred while
handling event.
*/
- @Override public GridNioFuture<Boolean> onSessionClose(GridNioSession ses)
throws IgniteCheckedException {
+ @Override public IgniteInternalFuture<Boolean>
onSessionClose(GridNioSession ses) throws IgniteCheckedException {
return tail.onSessionClose(ses);
}
@@ -220,7 +221,7 @@ public class GridNioFilterChain<T> extends
GridNioFilterAdapter {
* @return Future.
* @throws IgniteCheckedException If IgniteCheckedException occurred while
handling event.
*/
- @Override public GridNioFuture<?> onPauseReads(GridNioSession ses) throws
IgniteCheckedException {
+ @Override public IgniteInternalFuture<?> onPauseReads(GridNioSession ses)
throws IgniteCheckedException {
return tail.onPauseReads(ses);
}
@@ -231,7 +232,7 @@ public class GridNioFilterChain<T> extends
GridNioFilterAdapter {
* @return Future.
* @throws IgniteCheckedException If IgniteCheckedException occurred while
handling event.
*/
- @Override public GridNioFuture<?> onResumeReads(GridNioSession ses) throws
IgniteCheckedException {
+ @Override public IgniteInternalFuture<?> onResumeReads(GridNioSession ses)
throws IgniteCheckedException {
return tail.onResumeReads(ses);
}
@@ -262,7 +263,7 @@ public class GridNioFilterChain<T> extends
GridNioFilterAdapter {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> onSessionWrite(GridNioSession ses,
+ @Override public IgniteInternalFuture<?> onSessionWrite(GridNioSession
ses,
Object msg,
boolean fut,
IgniteInClosure<IgniteException> ackC) throws
IgniteCheckedException {
@@ -270,7 +271,7 @@ public class GridNioFilterChain<T> extends
GridNioFilterAdapter {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<Boolean> onSessionClose(GridNioSession
ses) throws IgniteCheckedException {
+ @Override public IgniteInternalFuture<Boolean>
onSessionClose(GridNioSession ses) throws IgniteCheckedException {
return proceedSessionClose(ses);
}
@@ -290,12 +291,12 @@ public class GridNioFilterChain<T> extends
GridNioFilterAdapter {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> onPauseReads(GridNioSession ses)
throws IgniteCheckedException {
+ @Override public IgniteInternalFuture<?> onPauseReads(GridNioSession
ses) throws IgniteCheckedException {
return proceedPauseReads(ses);
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> onResumeReads(GridNioSession ses)
throws IgniteCheckedException {
+ @Override public IgniteInternalFuture<?> onResumeReads(GridNioSession
ses) throws IgniteCheckedException {
return proceedResumeReads(ses);
}
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFinishedFuture.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFinishedFuture.java
deleted file mode 100644
index bbd62c54e2a..00000000000
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFinishedFuture.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal.util.nio;
-
-import org.apache.ignite.IgniteException;
-import org.apache.ignite.internal.util.future.GridFinishedFuture;
-import org.apache.ignite.internal.util.typedef.internal.S;
-import org.apache.ignite.lang.IgniteInClosure;
-
-/**
- * Future that represents already completed result.
- */
-public class GridNioFinishedFuture<R> extends GridFinishedFuture<R> implements
GridNioFuture<R> {
- /** Message thread flag. */
- private boolean msgThread;
-
- /**
- * @param res Result.
- */
- public GridNioFinishedFuture(R res) {
- super(res);
- }
-
- /**
- * @param err Error.
- */
- public GridNioFinishedFuture(Throwable err) {
- super(err);
- }
-
- /** {@inheritDoc} */
- @Override public void messageThread(boolean msgThread) {
- this.msgThread = msgThread;
- }
-
- /** {@inheritDoc} */
- @Override public boolean messageThread() {
- return msgThread;
- }
-
- /** {@inheritDoc} */
- @Override public boolean skipRecovery() {
- return true;
- }
-
- /** {@inheritDoc} */
- @Override public IgniteInClosure<IgniteException> ackClosure() {
- return null;
- }
-
- /** {@inheritDoc} */
- @Override public String toString() {
- return S.toString(GridNioFinishedFuture.class, this, super.toString());
- }
-}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFuture.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFuture.java
deleted file mode 100644
index b604ed86284..00000000000
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFuture.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal.util.nio;
-
-import org.apache.ignite.IgniteException;
-import org.apache.ignite.internal.IgniteInternalFuture;
-import org.apache.ignite.lang.IgniteInClosure;
-
-/**
- * NIO future.
- */
-public interface GridNioFuture<R> extends IgniteInternalFuture<R> {
- /**
- * Sets flag indicating that message send future was created in thread
that was processing a message.
- *
- * @param msgThread {@code True} if future was created in thread that is
processing message.
- */
- public void messageThread(boolean msgThread);
-
- /**
- * @return {@code True} if future was created in thread that was
processing message.
- */
- public boolean messageThread();
-
- /**
- * @return {@code True} if skip recovery for this operation.
- */
- public boolean skipRecovery();
-
- /**
- * @return Ack closure.
- */
- public IgniteInClosure<IgniteException> ackClosure();
-}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFutureImpl.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFutureImpl.java
deleted file mode 100644
index c497893b886..00000000000
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioFutureImpl.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal.util.nio;
-
-import org.apache.ignite.IgniteException;
-import org.apache.ignite.internal.util.future.GridFutureAdapter;
-import org.apache.ignite.internal.util.typedef.internal.S;
-import org.apache.ignite.lang.IgniteInClosure;
-
-/**
- * Default future implementation.
- */
-public class GridNioFutureImpl<R> extends GridFutureAdapter<R> implements
GridNioFuture<R> {
- /** */
- private boolean msgThread;
-
- /** */
- protected final IgniteInClosure<IgniteException> ackC;
-
- /**
- * @param ackC Ack closure.
- */
- public GridNioFutureImpl(IgniteInClosure<IgniteException> ackC) {
- this.ackC = ackC;
- }
-
- /** {@inheritDoc} */
- @Override public void messageThread(boolean msgThread) {
- this.msgThread = msgThread;
- }
-
- /** {@inheritDoc} */
- @Override public boolean messageThread() {
- return msgThread;
- }
-
- /** {@inheritDoc} */
- @Override public boolean skipRecovery() {
- return false;
- }
-
- /** {@inheritDoc} */
- @Override public IgniteInClosure<IgniteException> ackClosure() {
- return ackC;
- }
-
- /** {@inheritDoc} */
- @Override public String toString() {
- return S.toString(GridNioFutureImpl.class, this);
- }
-}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioServer.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioServer.java
index 52c3fb053e2..4e43d28ea7e 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioServer.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioServer.java
@@ -68,6 +68,8 @@ import org.apache.ignite.internal.processors.tracing.Tracing;
import org.apache.ignite.internal.util.GridConcurrentHashSet;
import org.apache.ignite.internal.util.GridUnsafe;
import org.apache.ignite.internal.util.future.GridCompoundFuture;
+import org.apache.ignite.internal.util.future.GridFinishedFuture;
+import org.apache.ignite.internal.util.future.GridFutureAdapter;
import org.apache.ignite.internal.util.nio.ssl.GridNioSslFilter;
import org.apache.ignite.internal.util.tostring.GridToStringExclude;
import org.apache.ignite.internal.util.typedef.F;
@@ -551,13 +553,13 @@ public class GridNioServer<T> {
* @param ses Session to close.
* @return Future for operation.
*/
- public GridNioFuture<Boolean> close(GridNioSession ses) {
+ public IgniteInternalFuture<Boolean> close(GridNioSession ses) {
assert ses instanceof GridSelectorNioSessionImpl : ses;
GridSelectorNioSessionImpl impl = (GridSelectorNioSessionImpl)ses;
if (impl.closed())
- return new GridNioFinishedFuture<>(false);
+ return new GridFinishedFuture<>(false);
NioOperationFuture<Boolean> fut = new NioOperationFuture<>(impl,
NioOperation.CLOSE);
@@ -584,7 +586,7 @@ public class GridNioServer<T> {
* @param ackC Closure invoked when message ACK is received.
* @return Future for operation.
*/
- GridNioFuture<?> send(GridNioSession ses,
+ IgniteInternalFuture<?> send(GridNioSession ses,
ByteBuffer msg,
boolean createFut,
IgniteInClosure<IgniteException> ackC) throws IgniteCheckedException {
@@ -615,7 +617,7 @@ public class GridNioServer<T> {
* @param ackC Closure invoked when message ACK is received.
* @return Future for operation.
*/
- GridNioFuture<?> send(GridNioSession ses,
+ IgniteInternalFuture<?> send(GridNioSession ses,
Message msg,
boolean createFut,
IgniteInClosure<IgniteException> ackC) throws IgniteCheckedException {
@@ -658,7 +660,7 @@ public class GridNioServer<T> {
req.onError(err);
- if (!(req instanceof GridNioFuture))
+ if (!(req instanceof IgniteInternalFuture))
throw new IgniteCheckedException(err);
}
}
@@ -789,14 +791,14 @@ public class GridNioServer<T> {
* @param op Operation.
* @return Future for operation.
*/
- private GridNioFuture<?> pauseResumeReads(GridNioSession ses, NioOperation
op) {
+ private IgniteInternalFuture<?> pauseResumeReads(GridNioSession ses,
NioOperation op) {
assert ses instanceof GridSelectorNioSessionImpl;
assert op == NioOperation.PAUSE_READ || op == NioOperation.RESUME_READ;
GridSelectorNioSessionImpl impl = (GridSelectorNioSessionImpl)ses;
if (impl.closed())
- return new GridNioFinishedFuture(new IOException("Failed to
pause/resume reads " +
+ return new GridFinishedFuture(new IOException("Failed to
pause/resume reads " +
"(connection was closed): " + ses));
NioOperationFuture<?> fut = new NioOperationFuture<Void>(impl, op);
@@ -914,7 +916,7 @@ public class GridNioServer<T> {
* @param lsnr Listener that should be invoked in NIO thread.
* @return Future to get session.
*/
- public GridNioFuture<GridNioSession> createSession(
+ public IgniteInternalFuture<GridNioSession> createSession(
final SocketChannel ch,
@Nullable Map<Integer, Object> meta,
boolean async,
@@ -940,11 +942,11 @@ public class GridNioServer<T> {
return req;
}
else
- return new GridNioFinishedFuture<>(
+ return new GridFinishedFuture<>(
new IgniteCheckedException("Failed to create session,
server is stopped."));
}
catch (IOException e) {
- return new GridNioFinishedFuture<>(e);
+ return new GridFinishedFuture<>(e);
}
}
@@ -952,7 +954,7 @@ public class GridNioServer<T> {
* @param ch Channel.
* @param meta Session meta.
*/
- public GridNioFuture<GridNioSession> cancelConnect(final SocketChannel ch,
Map<Integer, ?> meta) {
+ public IgniteInternalFuture<GridNioSession> cancelConnect(final
SocketChannel ch, Map<Integer, ?> meta) {
if (!closed) {
NioOperationFuture<GridNioSession> req = new
NioOperationFuture<>(ch, false, meta);
@@ -967,7 +969,7 @@ public class GridNioServer<T> {
return req;
}
else
- return new GridNioFinishedFuture<>(
+ return new GridFinishedFuture<>(
new IgniteCheckedException("Failed to cancel connection,
server is stopped."));
}
@@ -3413,7 +3415,7 @@ public class GridNioServer<T> {
/**
* Class for requesting write and session close operations.
*/
- private static class NioOperationFuture<R> extends GridNioFutureImpl<R>
implements SessionWriteRequest,
+ private static class NioOperationFuture<R> extends GridFutureAdapter<R>
implements SessionWriteRequest,
SessionChangeRequest, GridNioKeyAttachment {
/** Socket channel in register request. */
@GridToStringExclude
@@ -3444,6 +3446,12 @@ public class GridNioServer<T> {
/** */
private Span span;
+ /** */
+ private boolean msgThread;
+
+ /** */
+ private IgniteInClosure<IgniteException> ackC;
+
/**
* @param sockCh Socket channel.
* @param accepted {@code True} if socket has been accepted.
@@ -3454,8 +3462,6 @@ public class GridNioServer<T> {
boolean accepted,
@Nullable Map<Integer, ?> meta
) {
- super(null);
-
op = NioOperation.REGISTER;
this.sockCh = sockCh;
@@ -3471,8 +3477,6 @@ public class GridNioServer<T> {
* @param op Requested operation.
*/
NioOperationFuture(GridSelectorNioSessionImpl ses, NioOperation op) {
- super(null);
-
assert ses != null || op == NioOperation.DUMP_STATS : "Invalid
params [ses=" + ses + ", op=" + op + ']';
assert op != null;
assert op != NioOperation.REGISTER;
@@ -3494,8 +3498,6 @@ public class GridNioServer<T> {
NioOperation op,
Object msg,
IgniteInClosure<IgniteException> ackC) {
- super(ackC);
-
assert ses != null;
assert op != null;
assert op != NioOperation.REGISTER;
@@ -3505,6 +3507,7 @@ public class GridNioServer<T> {
this.op = op;
this.msg = msg;
this.span = MTC.span();
+ this.ackC = ackC;
}
/**
@@ -3521,8 +3524,6 @@ public class GridNioServer<T> {
Message commMsg,
boolean skipRecovery,
IgniteInClosure<IgniteException> ackC) {
- super(ackC);
-
assert ses != null;
assert op != null;
assert op != NioOperation.REGISTER;
@@ -3533,6 +3534,7 @@ public class GridNioServer<T> {
this.msg = commMsg;
this.skipRecovery = skipRecovery;
this.span = MTC.span();
+ this.ackC = ackC;
}
/** {@inheritDoc} */
@@ -3598,6 +3600,21 @@ public class GridNioServer<T> {
onDone();
}
+ /** {@inheritDoc} */
+ @Override public void messageThread(boolean msgThread) {
+ this.msgThread = msgThread;
+ }
+
+ /** {@inheritDoc} */
+ @Override public boolean messageThread() {
+ return msgThread;
+ }
+
+ /** {@inheritDoc} */
+ @Override public IgniteInClosure<IgniteException> ackClosure() {
+ return ackC;
+ }
+
/** {@inheritDoc} */
@Override public boolean skipRecovery() {
return skipRecovery;
@@ -3693,7 +3710,7 @@ public class GridNioServer<T> {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> onSessionWrite(GridNioSession ses,
+ @Override public IgniteInternalFuture<?> onSessionWrite(GridNioSession
ses,
Object msg,
boolean fut,
IgniteInClosure<IgniteException> ackC) throws
IgniteCheckedException {
@@ -3731,7 +3748,7 @@ public class GridNioServer<T> {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<Boolean> onSessionClose(GridNioSession
ses) {
+ @Override public IgniteInternalFuture<Boolean>
onSessionClose(GridNioSession ses) {
return close(ses);
}
@@ -3746,12 +3763,12 @@ public class GridNioServer<T> {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> onPauseReads(GridNioSession ses)
throws IgniteCheckedException {
+ @Override public IgniteInternalFuture<?> onPauseReads(GridNioSession
ses) throws IgniteCheckedException {
return pauseResumeReads(ses, NioOperation.PAUSE_READ);
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> onResumeReads(GridNioSession ses)
throws IgniteCheckedException {
+ @Override public IgniteInternalFuture<?> onResumeReads(GridNioSession
ses) throws IgniteCheckedException {
return pauseResumeReads(ses, NioOperation.RESUME_READ);
}
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioSession.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioSession.java
index 979bc9f1437..1b9ac6f874a 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioSession.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioSession.java
@@ -21,6 +21,7 @@ import java.net.InetSocketAddress;
import java.security.cert.Certificate;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
+import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.lang.IgniteInClosure;
import org.jetbrains.annotations.Nullable;
@@ -97,7 +98,7 @@ public interface GridNioSession {
*
* @return Future representing result.
*/
- public GridNioFuture<Boolean> close();
+ public IgniteInternalFuture<Boolean> close();
/**
* Performs a request for asynchronous data send.
@@ -106,7 +107,7 @@ public interface GridNioSession {
* to the nio server.
* @return Future representing result.
*/
- public GridNioFuture<?> send(Object msg);
+ public IgniteInternalFuture<?> send(Object msg);
/**
* @param msg Message to be sent.
@@ -156,14 +157,14 @@ public interface GridNioSession {
*
* @return Future representing result.
*/
- public GridNioFuture<?> resumeReads();
+ public IgniteInternalFuture<?> resumeReads();
/**
* Pauses reads.
*
* @return Future representing result.
*/
- public GridNioFuture<?> pauseReads();
+ public IgniteInternalFuture<?> pauseReads();
/**
* Checks whether reads are paused.
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioSessionImpl.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioSessionImpl.java
index 64e250a316c..ef8aadd909f 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioSessionImpl.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioSessionImpl.java
@@ -23,6 +23,8 @@ import java.util.concurrent.atomic.AtomicLong;
import javax.net.ssl.SSLPeerUnverifiedException;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
+import org.apache.ignite.internal.IgniteInternalFuture;
+import org.apache.ignite.internal.util.future.GridFinishedFuture;
import org.apache.ignite.internal.util.nio.ssl.GridSslMeta;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.internal.util.typedef.internal.U;
@@ -110,7 +112,7 @@ public class GridNioSessionImpl implements GridNioSession {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> send(Object msg) {
+ @Override public IgniteInternalFuture<?> send(Object msg) {
try {
resetSendScheduleTime();
@@ -119,7 +121,7 @@ public class GridNioSessionImpl implements GridNioSession {
catch (IgniteCheckedException e) {
close();
- return new GridNioFinishedFuture<Object>(e);
+ return new GridFinishedFuture<Object>(e);
}
}
@@ -137,39 +139,39 @@ public class GridNioSessionImpl implements GridNioSession
{
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> resumeReads() {
+ @Override public IgniteInternalFuture<?> resumeReads() {
try {
return chain().onResumeReads(this);
}
catch (IgniteCheckedException e) {
close();
- return new GridNioFinishedFuture<Object>(e);
+ return new GridFinishedFuture<Object>(e);
}
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> pauseReads() {
+ @Override public IgniteInternalFuture<?> pauseReads() {
try {
return chain().onPauseReads(this);
}
catch (IgniteCheckedException e) {
close();
- return new GridNioFinishedFuture<Object>(e);
+ return new GridFinishedFuture<Object>(e);
}
}
/** {@inheritDoc} */
@SuppressWarnings("unchecked")
- @Override public GridNioFuture<Boolean> close() {
+ @Override public IgniteInternalFuture<Boolean> close() {
markedForClose = true;
try {
return filterChain.onSessionClose(this);
}
catch (IgniteCheckedException e) {
- return new GridNioFinishedFuture<>(e);
+ return new GridFinishedFuture<>(e);
}
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioTracerFilter.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioTracerFilter.java
index 31c69ef4acb..650aeb2cc7c 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioTracerFilter.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridNioTracerFilter.java
@@ -20,6 +20,7 @@ package org.apache.ignite.internal.util.nio;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteLogger;
+import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.processors.tracing.MTC;
import org.apache.ignite.internal.processors.tracing.NoopSpan;
import org.apache.ignite.internal.processors.tracing.NoopTracing;
@@ -80,7 +81,7 @@ public class GridNioTracerFilter extends GridNioFilterAdapter
{
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> onSessionWrite(
+ @Override public IgniteInternalFuture<?> onSessionWrite(
GridNioSession ses,
Object msg,
boolean fut,
@@ -109,7 +110,7 @@ public class GridNioTracerFilter extends
GridNioFilterAdapter {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<Boolean> onSessionClose(GridNioSession ses)
throws IgniteCheckedException {
+ @Override public IgniteInternalFuture<Boolean>
onSessionClose(GridNioSession ses) throws IgniteCheckedException {
return proceedSessionClose(ses);
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridSelectorNioSessionImpl.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridSelectorNioSessionImpl.java
index 85e76900b36..7fceaad96ea 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridSelectorNioSessionImpl.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridSelectorNioSessionImpl.java
@@ -28,6 +28,7 @@ import java.util.concurrent.Semaphore;
import java.util.concurrent.atomic.AtomicBoolean;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteLogger;
+import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.processors.metric.MetricRegistryImpl;
import org.apache.ignite.internal.processors.metric.impl.LongAdderMetric;
import org.apache.ignite.internal.processors.tracing.MTC;
@@ -494,8 +495,8 @@ public class GridSelectorNioSessionImpl extends
GridNioSessionImpl implements Gr
}
/** {@inheritDoc} */
- @Override public GridNioFuture<Boolean> close() {
- GridNioFuture<Boolean> fut = super.close();
+ @Override public IgniteInternalFuture<Boolean> close() {
+ IgniteInternalFuture<Boolean> fut = super.close();
if (!fut.isDone()) {
fut.listen(() -> {
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridTcpNioCommunicationClient.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridTcpNioCommunicationClient.java
index 768e62461a7..056f4c20a32 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridTcpNioCommunicationClient.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/GridTcpNioCommunicationClient.java
@@ -25,6 +25,7 @@ import java.util.UUID;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteLogger;
+import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.util.lang.IgniteInClosure2X;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.internal.util.typedef.internal.U;
@@ -100,7 +101,7 @@ public class GridTcpNioCommunicationClient extends
GridAbstractCommunicationClie
if (closed())
throw new IgniteCheckedException("Client was closed: " + this);
- GridNioFuture<?> fut = ses.send(data);
+ IgniteInternalFuture<?> fut = ses.send(data);
if (fut.isDone())
fut.get();
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/ssl/GridNioSslFilter.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/ssl/GridNioSslFilter.java
index 125aee429d9..ab9f2994699 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/ssl/GridNioSslFilter.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/ssl/GridNioSslFilter.java
@@ -26,14 +26,14 @@ import javax.net.ssl.SSLException;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteLogger;
+import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.processors.metric.MetricRegistryImpl;
import org.apache.ignite.internal.processors.metric.impl.HistogramMetricImpl;
import org.apache.ignite.internal.processors.metric.impl.IntMetricImpl;
+import org.apache.ignite.internal.util.future.GridFinishedFuture;
+import org.apache.ignite.internal.util.future.GridFutureAdapter;
import org.apache.ignite.internal.util.nio.GridNioException;
import org.apache.ignite.internal.util.nio.GridNioFilterAdapter;
-import org.apache.ignite.internal.util.nio.GridNioFinishedFuture;
-import org.apache.ignite.internal.util.nio.GridNioFuture;
-import org.apache.ignite.internal.util.nio.GridNioFutureImpl;
import org.apache.ignite.internal.util.nio.GridNioSession;
import org.apache.ignite.internal.util.nio.GridNioSessionMetaKey;
import org.apache.ignite.internal.util.typedef.internal.U;
@@ -243,10 +243,10 @@ public class GridNioSslFilter extends
GridNioFilterAdapter {
sslMeta.handler(hnd);
if (handshakeDuration != null) {
- GridNioFutureImpl<?> fut = ses.meta(HANDSHAKE_FUT_META_KEY);
+ GridFutureAdapter<?> fut = ses.meta(HANDSHAKE_FUT_META_KEY);
if (fut == null) {
- fut = new GridNioFutureImpl<>(null);
+ fut = new GridFutureAdapter<>();
ses.addMeta(HANDSHAKE_FUT_META_KEY, fut);
}
@@ -271,7 +271,7 @@ public class GridNioSslFilter extends GridNioFilterAdapter {
/** {@inheritDoc} */
@Override public void onSessionClosed(GridNioSession ses) throws
IgniteCheckedException {
try {
- GridNioFutureImpl<?> fut = ses.removeMeta(HANDSHAKE_FUT_META_KEY);
+ GridFutureAdapter<?> fut = ses.removeMeta(HANDSHAKE_FUT_META_KEY);
if (fut != null) {
if (rejectedSesCnt != null)
@@ -340,7 +340,7 @@ public class GridNioSslFilter extends GridNioFilterAdapter {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> onSessionWrite(
+ @Override public IgniteInternalFuture<?> onSessionWrite(
GridNioSession ses,
Object msg,
boolean fut,
@@ -352,7 +352,7 @@ public class GridNioSslFilter extends GridNioFilterAdapter {
ByteBuffer input = checkMessage(ses, msg);
if (!input.hasRemaining())
- return new GridNioFinishedFuture<Object>(null);
+ return new GridFinishedFuture<Object>(null);
GridNioSslHandler hnd = sslHandler(ses);
@@ -360,7 +360,7 @@ public class GridNioSslFilter extends GridNioFilterAdapter {
try {
if (hnd.isOutboundDone())
- return new GridNioFinishedFuture<Object>(new
IOException("Failed to send data (secure session was " +
+ return new GridFinishedFuture<Object>(new IOException("Failed
to send data (secure session was " +
"already closed): " + ses));
if (hnd.isHandshakeFinished()) {
@@ -426,7 +426,7 @@ public class GridNioSslFilter extends GridNioFilterAdapter {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<Boolean> onSessionClose(GridNioSession ses)
throws IgniteCheckedException {
+ @Override public IgniteInternalFuture<Boolean>
onSessionClose(GridNioSession ses) throws IgniteCheckedException {
GridNioSslHandler hnd = sslHandler(ses);
hnd.lock();
@@ -447,7 +447,7 @@ public class GridNioSslFilter extends GridNioFilterAdapter {
* @return Close future.
* @throws GridNioException If failed to forward requests to filter chain.
*/
- private GridNioFuture<Boolean> shutdownSession(GridNioSession ses,
GridNioSslHandler hnd)
+ private IgniteInternalFuture<Boolean> shutdownSession(GridNioSession ses,
GridNioSslHandler hnd)
throws IgniteCheckedException {
try {
hnd.closeOutbound();
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/ssl/GridNioSslHandler.java
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/ssl/GridNioSslHandler.java
index 9ece470653d..13cf4ab96be 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/util/nio/ssl/GridNioSslHandler.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/util/nio/ssl/GridNioSslHandler.java
@@ -29,10 +29,9 @@ import javax.net.ssl.SSLSession;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
import org.apache.ignite.IgniteLogger;
-import org.apache.ignite.internal.util.nio.GridNioEmbeddedFuture;
+import org.apache.ignite.internal.IgniteInternalFuture;
+import org.apache.ignite.internal.util.future.GridFutureAdapter;
import org.apache.ignite.internal.util.nio.GridNioException;
-import org.apache.ignite.internal.util.nio.GridNioFuture;
-import org.apache.ignite.internal.util.nio.GridNioFutureImpl;
import org.apache.ignite.internal.util.nio.GridNioSession;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgniteInClosure;
@@ -220,7 +219,7 @@ class GridNioSslHandler extends ReentrantLock {
if (!initHandshakeComplete) {
initHandshakeComplete = true;
- GridNioFutureImpl<?> fut =
ses.removeMeta(HANDSHAKE_FUT_META_KEY);
+ GridFutureAdapter<?> fut =
ses.removeMeta(HANDSHAKE_FUT_META_KEY);
if (fut != null)
fut.onDone();
@@ -422,10 +421,10 @@ class GridNioSslHandler extends ReentrantLock {
* @param ackC Closure invoked when message ACK is received.
* @return Write future.
*/
- GridNioFuture<?> deferredWrite(ByteBuffer buf,
IgniteInClosure<IgniteException> ackC) {
+ IgniteInternalFuture<?> deferredWrite(ByteBuffer buf,
IgniteInClosure<IgniteException> ackC) {
assert isHeldByCurrentThread();
- GridNioEmbeddedFuture<Object> fut = new GridNioEmbeddedFuture<>();
+ GridFutureAdapter<Object> fut = new GridFutureAdapter<>();
ByteBuffer cp = copy(buf);
@@ -446,7 +445,19 @@ class GridNioSslHandler extends ReentrantLock {
while (!deferredWriteQueue.isEmpty()) {
WriteRequest req = deferredWriteQueue.poll();
-
req.future().onDone((GridNioFuture<Object>)parent.proceedSessionWrite(ses,
req.buffer(), true, req.ackC));
+ GridFutureAdapter<Object> fut0 = req.future();
+
+ IgniteInternalFuture<Object> delegate =
(IgniteInternalFuture<Object>)parent.proceedSessionWrite(ses, req.buffer(),
+ true, req.ackC);
+
+ delegate.listen(fut -> {
+ try {
+ fut0.onDone(fut.get());
+ }
+ catch (IgniteCheckedException e) {
+ fut0.onDone(e);
+ }
+ });
}
}
@@ -486,7 +497,7 @@ class GridNioSslHandler extends ReentrantLock {
* @return Write future.
* @throws GridNioException If send failed.
*/
- GridNioFuture<?> writeNetBuffer(IgniteInClosure<IgniteException> ackC)
throws IgniteCheckedException {
+ IgniteInternalFuture<?> writeNetBuffer(IgniteInClosure<IgniteException>
ackC) throws IgniteCheckedException {
assert isHeldByCurrentThread();
ByteBuffer cp = copy(outNetBuf);
@@ -694,7 +705,7 @@ class GridNioSslHandler extends ReentrantLock {
*/
private static class WriteRequest {
/** Future that should be completed. */
- private final GridNioEmbeddedFuture<Object> fut;
+ private final GridFutureAdapter<Object> fut;
/** Buffer needed to be written. */
private final ByteBuffer buf;
@@ -709,7 +720,7 @@ class GridNioSslHandler extends ReentrantLock {
* @param buf Buffer to write.
* @param ackC Closure invoked when message ACK is received.
*/
- private WriteRequest(GridNioEmbeddedFuture<Object> fut,
+ private WriteRequest(GridFutureAdapter<Object> fut,
ByteBuffer buf,
IgniteInClosure<IgniteException> ackC) {
this.fut = fut;
@@ -720,7 +731,7 @@ class GridNioSslHandler extends ReentrantLock {
/**
* @return Future.
*/
- public GridNioEmbeddedFuture<Object> future() {
+ public GridFutureAdapter<Object> future() {
return fut;
}
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/util/future/nio/GridNioEmbeddedFutureSelfTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/util/future/nio/GridNioEmbeddedFutureSelfTest.java
deleted file mode 100644
index 3c60ea0e28d..00000000000
---
a/modules/core/src/test/java/org/apache/ignite/internal/util/future/nio/GridNioEmbeddedFutureSelfTest.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal.util.future.nio;
-
-import org.apache.ignite.internal.util.nio.GridNioEmbeddedFuture;
-import org.apache.ignite.internal.util.nio.GridNioFutureImpl;
-import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
-import org.junit.Test;
-
-import static java.util.concurrent.TimeUnit.SECONDS;
-
-/**
- * Test for NIO embedded future.
- */
-public class GridNioEmbeddedFutureSelfTest extends GridCommonAbstractTest {
- /**
- * @throws Exception If failed.
- */
- @Test
- public void testNioEmbeddedFuture() throws Exception {
- // Original future.
- final GridNioFutureImpl<Integer> origFut = new
GridNioFutureImpl<>(null);
-
- // Embedded future to test.
- final GridNioEmbeddedFuture<Integer> embFut = new
GridNioEmbeddedFuture<>();
-
- embFut.onDone(origFut, null);
-
- assertFalse("Expect original future is not complete.",
origFut.isDone());
-
- // Finish original future in separate thread.
- Thread t = new Thread() {
- @Override public void run() {
- origFut.onDone(100);
- }
- };
-
- t.start();
- t.join();
-
- assertTrue("Expect original future is complete.", origFut.isDone());
- assertTrue("Expect embedded future is complete.", embFut.isDone());
-
- // Wait for embedded future completes.
- assertEquals(new Integer(100), embFut.get(1, SECONDS));
- }
-}
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/util/future/nio/GridNioFutureSelfTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/util/future/nio/GridNioFutureSelfTest.java
deleted file mode 100644
index b5fc505f1c3..00000000000
---
a/modules/core/src/test/java/org/apache/ignite/internal/util/future/nio/GridNioFutureSelfTest.java
+++ /dev/null
@@ -1,218 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.internal.util.future.nio;
-
-import java.util.concurrent.Callable;
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.atomic.AtomicBoolean;
-import java.util.concurrent.atomic.AtomicReference;
-import org.apache.ignite.IgniteCheckedException;
-import org.apache.ignite.internal.IgniteFutureCancelledCheckedException;
-import org.apache.ignite.internal.IgniteFutureTimeoutCheckedException;
-import org.apache.ignite.internal.IgniteInternalFuture;
-import org.apache.ignite.internal.util.nio.GridNioFuture;
-import org.apache.ignite.internal.util.nio.GridNioFutureImpl;
-import org.apache.ignite.internal.util.typedef.CI1;
-import org.apache.ignite.testframework.GridTestUtils;
-import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
-import org.junit.Test;
-
-/**
- * Test for NIO future.
- */
-public class GridNioFutureSelfTest extends GridCommonAbstractTest {
- /**
- * @throws Exception If failed.
- */
- @Test
- public void testOnDone() throws Exception {
- 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"));
-
- final GridNioFutureImpl<String> callFut1 = fut;
-
- GridTestUtils.assertThrows(log, new Callable<Object>() {
- @Override public Object call() throws Exception {
- return callFut1.get();
- }
- }, IgniteCheckedException.class, "TestMessage");
-
- fut = new GridNioFutureImpl<>(null);
-
- fut.onDone("test", new IgniteCheckedException("TestMessage"));
-
- final GridNioFuture<String> callFut2 = fut;
-
- GridTestUtils.assertThrows(log, new Callable<Object>() {
- @Override public Object call() throws Exception {
- return callFut2.get();
- }
- }, IgniteCheckedException.class, "TestMessage");
-
- fut = new GridNioFutureImpl<>(null);
-
- fut.onDone("test");
-
- fut.onCancelled();
-
- assertEquals("test", fut.get());
- }
-
- /**
- * @throws Exception If failed.
- */
- @Test
- public void testOnCancelled() throws Exception {
- GridTestUtils.assertThrows(log, new Callable<Object>() {
- @Override public Object call() throws Exception {
- GridNioFutureImpl<String> fut = new GridNioFutureImpl<>(null);
-
- fut.onCancelled();
-
- return fut.get();
- }
- }, IgniteFutureCancelledCheckedException.class, null);
-
- GridTestUtils.assertThrows(log, new Callable<Object>() {
- @Override public Object call() throws Exception {
- GridNioFutureImpl<String> fut = new GridNioFutureImpl<>(null);
-
- fut.onCancelled();
-
- fut.onDone();
-
- return fut.get();
- }
- }, IgniteFutureCancelledCheckedException.class, null);
- }
-
- /**
- * @throws Exception If failed.
- */
- @Test
- public void testListenSyncNotify() throws Exception {
- GridNioFutureImpl<String> fut = new GridNioFutureImpl<>(null);
-
- int lsnrCnt = 10;
-
- final CountDownLatch latch = new CountDownLatch(lsnrCnt);
-
- final Thread runThread = Thread.currentThread();
-
- final AtomicReference<Exception> err = new AtomicReference<>();
-
- for (int i = 0; i < lsnrCnt; i++) {
- fut.listen(new CI1<IgniteInternalFuture<String>>() {
- @Override public void apply(IgniteInternalFuture<String> t) {
- if (Thread.currentThread() != runThread)
- err.compareAndSet(null, new Exception("Wrong
notification thread: " + Thread.currentThread()));
-
- latch.countDown();
- }
- });
- }
-
- fut.onDone();
-
- assertEquals(0, latch.getCount());
-
- if (err.get() != null)
- throw err.get();
-
- final AtomicBoolean called = new AtomicBoolean();
-
- err.set(null);
-
- fut.listen(new CI1<IgniteInternalFuture<String>>() {
- @Override public void apply(IgniteInternalFuture<String> t) {
- if (Thread.currentThread() != runThread)
- err.compareAndSet(null, new Exception("Wrong notification
thread: " + Thread.currentThread()));
-
- called.set(true);
- }
- });
-
- assertTrue(called.get());
-
- if (err.get() != null)
- throw err.get();
- }
-
- /**
- * @throws Exception If failed.
- */
- @Test
- public void testGet() throws Exception {
- GridNioFutureImpl<Object> unfinished = new GridNioFutureImpl<>(null);
- GridNioFutureImpl<Object> finished = new GridNioFutureImpl<>(null);
- GridNioFutureImpl<Object> cancelled = new GridNioFutureImpl<>(null);
-
- finished.onDone("Finished");
-
- cancelled.onCancelled();
-
- try {
- unfinished.get(50);
-
- assert false;
- }
- catch (IgniteFutureTimeoutCheckedException e) {
- info("Caught expected exception: " + e);
- }
-
- Object o = finished.get();
-
- assertEquals("Finished", o);
-
- o = finished.get(1000);
-
- assertEquals("Finished", o);
-
- try {
- cancelled.get();
-
- assert false;
- }
- catch (IgniteFutureCancelledCheckedException e) {
- info("Caught expected exception: " + e);
- }
-
- try {
- cancelled.get(1000);
-
- assert false;
- }
- catch (IgniteFutureCancelledCheckedException e) {
- info("Caught expected exception: " + e);
- }
-
- }
-}
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/GridNioSelfTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/GridNioSelfTest.java
index 255e263a4d5..46b6e74224b 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/GridNioSelfTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/GridNioSelfTest.java
@@ -688,7 +688,7 @@ public class GridNioSelfTest extends GridCommonAbstractTest
{
try {
SocketChannel ch = SocketChannel.open(new
InetSocketAddress(U.getLocalHost(), srvr2.port()));
- GridNioFuture<GridNioSession> fut = srvr1.createSession(ch, null,
false, null);
+ IgniteInternalFuture<GridNioSession> fut = srvr1.createSession(ch,
null, false, null);
ses = fut.get();
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/impl/GridNioFilterChainSelfTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/impl/GridNioFilterChainSelfTest.java
index 42a3bedeaf1..ebf80467fb3 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/impl/GridNioFilterChainSelfTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/impl/GridNioFilterChainSelfTest.java
@@ -21,9 +21,9 @@ import java.nio.ByteBuffer;
import java.util.concurrent.atomic.AtomicReference;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
+import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.util.nio.GridNioFilterAdapter;
import org.apache.ignite.internal.util.nio.GridNioFilterChain;
-import org.apache.ignite.internal.util.nio.GridNioFuture;
import org.apache.ignite.internal.util.nio.GridNioServerListener;
import org.apache.ignite.internal.util.nio.GridNioServerListenerAdapter;
import org.apache.ignite.internal.util.nio.GridNioSession;
@@ -114,7 +114,7 @@ public class GridNioFilterChainSelfTest extends
GridCommonAbstractTest {
proceedExceptionCaught(ses, ex);
}
- @Override public GridNioFuture<?> onSessionWrite(
+ @Override public IgniteInternalFuture<?> onSessionWrite(
GridNioSession ses,
Object msg,
boolean fut,
@@ -131,7 +131,7 @@ public class GridNioFilterChainSelfTest extends
GridCommonAbstractTest {
proceedMessageReceived(ses, msg);
}
- @Override public GridNioFuture<Boolean>
onSessionClose(GridNioSession ses) {
+ @Override public IgniteInternalFuture<Boolean>
onSessionClose(GridNioSession ses) {
closeEvt.compareAndSet(null,
ses.<String>meta(CLOSE_META_NAME));
return null;
@@ -215,7 +215,7 @@ public class GridNioFilterChainSelfTest extends
GridCommonAbstractTest {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> onSessionWrite(
+ @Override public IgniteInternalFuture<?> onSessionWrite(
GridNioSession ses,
Object msg,
boolean fut,
@@ -234,7 +234,7 @@ public class GridNioFilterChainSelfTest extends
GridCommonAbstractTest {
}
/** {@inheritDoc} */
- @Override public GridNioFuture<Boolean> onSessionClose(GridNioSession
ses) throws IgniteCheckedException {
+ @Override public IgniteInternalFuture<Boolean>
onSessionClose(GridNioSession ses) throws IgniteCheckedException {
chainMeta(ses, CLOSE_META_NAME);
return proceedSessionClose(ses);
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/impl/MockNioSession.java
b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/impl/MockNioSession.java
index 0994ffc022d..6a04aeda125 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/util/nio/impl/MockNioSession.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/util/nio/impl/MockNioSession.java
@@ -21,9 +21,9 @@ import java.net.InetSocketAddress;
import java.security.cert.Certificate;
import org.apache.ignite.IgniteCheckedException;
import org.apache.ignite.IgniteException;
+import org.apache.ignite.internal.IgniteInternalFuture;
+import org.apache.ignite.internal.util.future.GridFinishedFuture;
import org.apache.ignite.internal.util.lang.GridMetadataAwareAdapter;
-import org.apache.ignite.internal.util.nio.GridNioFinishedFuture;
-import org.apache.ignite.internal.util.nio.GridNioFuture;
import org.apache.ignite.internal.util.nio.GridNioRecoveryDescriptor;
import org.apache.ignite.internal.util.nio.GridNioSession;
import org.apache.ignite.lang.IgniteInClosure;
@@ -105,13 +105,13 @@ public class MockNioSession extends
GridMetadataAwareAdapter implements GridNioS
}
/** {@inheritDoc} */
- @Override public GridNioFuture<Boolean> close() {
- return new GridNioFinishedFuture<>(true);
+ @Override public IgniteInternalFuture<Boolean> close() {
+ return new GridFinishedFuture<>(true);
}
/** {@inheritDoc} */
- @Override public GridNioFuture<?> send(Object msg) {
- return new GridNioFinishedFuture<>(true);
+ @Override public IgniteInternalFuture<?> send(Object msg) {
+ return new GridFinishedFuture<>(true);
}
/** {@inheritDoc} */
@@ -121,12 +121,12 @@ public class MockNioSession extends
GridMetadataAwareAdapter implements GridNioS
}
/** {@inheritDoc} */
- @Override public GridNioFuture<Object> resumeReads() {
+ @Override public IgniteInternalFuture<Object> resumeReads() {
return null;
}
/** {@inheritDoc} */
- @Override public GridNioFuture<Object> pauseReads() {
+ @Override public IgniteInternalFuture<Object> pauseReads() {
return null;
}
diff --git
a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteLangSelfTestSuite.java
b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteLangSelfTestSuite.java
index b43ff63da65..228cf785375 100644
---
a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteLangSelfTestSuite.java
+++
b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteLangSelfTestSuite.java
@@ -22,8 +22,6 @@ import
org.apache.ignite.internal.util.future.GridEmbeddedFutureSelfTest;
import org.apache.ignite.internal.util.future.GridFutureAdapterSelfTest;
import org.apache.ignite.internal.util.future.IgniteCacheFutureImplTest;
import org.apache.ignite.internal.util.future.IgniteFutureImplTest;
-import
org.apache.ignite.internal.util.future.nio.GridNioEmbeddedFutureSelfTest;
-import org.apache.ignite.internal.util.future.nio.GridNioFutureSelfTest;
import org.apache.ignite.lang.GridByteArrayListSelfTest;
import org.apache.ignite.lang.GridMetadataAwareAdapterSelfTest;
import org.apache.ignite.lang.GridSetWrapperSelfTest;
@@ -76,8 +74,6 @@ import org.junit.runners.Suite;
GridFutureAdapterSelfTest.class,
GridCompoundFutureSelfTest.class,
GridEmbeddedFutureSelfTest.class,
- GridNioFutureSelfTest.class,
- GridNioEmbeddedFutureSelfTest.class,
IgniteFutureImplTest.class,
IgniteCacheFutureImplTest.class,