Example usage for org.springframework.messaging.tcp TcpConnectionHandler afterConnectFailure

List of usage examples for org.springframework.messaging.tcp TcpConnectionHandler afterConnectFailure

Introduction

In this page you can find the example usage for org.springframework.messaging.tcp TcpConnectionHandler afterConnectFailure.

Prototype

void afterConnectFailure(Throwable ex);

Source Link

Document

Invoked on failure to connect.

Usage

From source file:org.springframework.messaging.tcp.reactor.ReactorNettyTcpClient.java

private ListenableFuture<Void> handleShuttingDownConnectFailure(TcpConnectionHandler<P> handler) {
    IllegalStateException ex = new IllegalStateException("Shutting down.");
    handler.afterConnectFailure(ex);
    return new MonoToListenableFutureAdapter<>(Mono.error(ex));
}

From source file:org.springframework.messaging.tcp.reactor.ReactorTcpClient.java

private void composeConnectionHandling(Composable<TcpConnection<Message<P>, Message<P>>> composable,
        final TcpConnectionHandler<P> connectionHandler) {

    composable.when(Throwable.class, new Consumer<Throwable>() {
        @Override/*  w  ww  .  j ava 2s . com*/
        public void accept(Throwable ex) {
            connectionHandler.afterConnectFailure(ex);
        }
    });

    composable.consume(new Consumer<TcpConnection<Message<P>, Message<P>>>() {
        @Override
        public void accept(TcpConnection<Message<P>, Message<P>> connection) {
            connection.on().close(new Runnable() {
                @Override
                public void run() {
                    connectionHandler.afterConnectionClosed();
                }
            });
            connection.consume(new Consumer<Message<P>>() {
                @Override
                public void accept(Message<P> message) {
                    connectionHandler.handleMessage(message);
                }
            });
            connection.when(Throwable.class, new Consumer<Throwable>() {
                @Override
                public void accept(Throwable t) {
                    logger.error("Exception on connection " + connectionHandler, t);
                }
            });
            connectionHandler.afterConnected(new ReactorTcpConnection<P>(connection));
        }
    });
}