private static void initConnection(Vertx vertx, ProtonConnection connection) { connection.openHandler(res -> { System.out.println("Client connection opened, container-id: " + connection.getRemoteContainer()); connection.open(); }); connection.closeHandler(c -> { System.out.println("Client closing connection, container-id: " + connection.getRemoteContainer()); connection.close(); connection.disconnect(); }); connection.disconnectHandler(c -> { System.out.println("Client socket disconnected, container-id: " + connection.getRemoteContainer()); connection.disconnect(); }); connection.sessionOpenHandler(session -> { session.closeHandler(x -> { session.close(); session.free(); }); session.open(); }); connection.senderOpenHandler(sender -> { initSender(vertx, connection, sender); }); connection.receiverOpenHandler(receiver -> { initReceiver(receiver); }); connection.open(); }
/** * Sets a default handler on a session that is invoked when an AMQP <em>end</em> frame * is received from the peer. * <p> * The default handler sends an <em>end</em> frame and then frees up the resources * maintained for the session by invoking its <em>free</em> method. * * @param session The session to set the handler on. * @throws NullPointerException if session is {@code null}. */ public static void setDefaultCloseHandler(final ProtonSession session) { session.closeHandler(remoteClose -> { session.close(); session.free(); }); }
/** * Sets a default handler on a session that is invoked when an AMQP <em>end</em> frame * is received from the peer. * <p> * The default handler sends an <em>end</em> frame and then frees up the resources * maintained for the session by invoking its <em>free</em> method. * * @param session The session to set the handler on. * @throws NullPointerException if session is {@code null}. */ public static void setDefaultCloseHandler(final ProtonSession session) { session.closeHandler(remoteClose -> { session.close(); session.free(); }); }