Search in sources :

Example 1 with Channel

use of com.automatak.dnp3.Channel in project wildfly-core by wildfly.

the class JConsoleCLIPlugin method connectUsingRemoting.

private boolean connectUsingRemoting(CommandContext cmdCtx, RemotingMBeanServerConnection rmtMBeanSvrConn) throws IOException, CliInitializationException {
    Connection conn = rmtMBeanSvrConn.getConnection();
    Channel channel;
    final IoFuture<Channel> futureChannel = conn.openChannel("management", OptionMap.EMPTY);
    IoFuture.Status result = futureChannel.await(5, TimeUnit.SECONDS);
    if (result == IoFuture.Status.DONE) {
        channel = futureChannel.get();
    } else {
        futureChannel.cancel();
        return false;
    }
    ModelControllerClient modelCtlrClient = ExistingChannelModelControllerClient.createReceiving(channel, createExecutor());
    cmdCtx.bindClient(modelCtlrClient);
    return true;
}
Also used : ExistingChannelModelControllerClient(org.jboss.as.controller.client.impl.ExistingChannelModelControllerClient) ModelControllerClient(org.jboss.as.controller.client.ModelControllerClient) Channel(org.jboss.remoting3.Channel) Connection(org.jboss.remoting3.Connection) MBeanServerConnection(javax.management.MBeanServerConnection) RemotingMBeanServerConnection(org.jboss.remotingjmx.RemotingMBeanServerConnection) IoFuture(org.xnio.IoFuture)

Example 2 with Channel

use of com.automatak.dnp3.Channel in project wildfly-core by wildfly.

the class ServerInventoryImpl method serverCommunicationRegistered.

@Override
public ProxyController serverCommunicationRegistered(final String serverProcessName, final ManagementChannelHandler channelAssociation) {
    if (shutdown || connectionFinished) {
        throw HostControllerLogger.ROOT_LOGGER.hostAlreadyShutdown();
    }
    final String serverName = ManagedServer.getServerName(serverProcessName);
    final ManagedServer server = servers.get(serverName);
    if (server == null) {
        ROOT_LOGGER.noServerAvailable(serverName);
        return null;
    }
    try {
        final TransactionalProtocolClient client = server.channelRegistered(channelAssociation);
        final Channel channel = channelAssociation.getChannel();
        channel.addCloseHandler(new CloseHandler<Channel>() {

            public void handleClose(final Channel closed, final IOException exception) {
                final boolean shuttingDown = shutdown || connectionFinished;
                // Unregister right away
                if (server.callbackUnregistered(client, shuttingDown)) {
                    domainController.unregisterRunningServer(server.getServerName());
                }
            }
        });
        return server.getProxyController();
    } catch (IOException e) {
        throw new RuntimeException(e);
    }
}
Also used : TransactionalProtocolClient(org.jboss.as.controller.remote.TransactionalProtocolClient) Channel(org.jboss.remoting3.Channel) IOException(java.io.IOException)

Example 3 with Channel

use of com.automatak.dnp3.Channel in project wildfly-core by wildfly.

the class RemoteDomainConnection method connectionOpened.

@Override
public void connectionOpened(final Connection connection) throws IOException {
    final Channel channel = openChannel(connection, CHANNEL_SERVICE_TYPE, configuration.getOptionMap());
    if (setChannel(channel)) {
        channel.receiveMessage(channelHandler.getReceiver());
        channel.addCloseHandler(channelHandler);
        try {
            if (runningMode == RunningMode.ADMIN_ONLY) {
                // Fetch the domain configuration
                channelHandler.executeRequest(new FetchDomainConfigurationRequest(), null).getResult().get();
            } else {
                // Start the registration process
                channelHandler.executeRequest(new RegisterHostControllerRequest(), null).getResult().get();
            }
        } catch (Exception e) {
            if (e.getCause() instanceof IOException) {
                throw (IOException) e.getCause();
            }
            throw new IOException(e);
        }
        // Registered
        registered();
    } else {
        channel.closeAsync();
    }
}
Also used : FutureManagementChannel(org.jboss.as.protocol.mgmt.FutureManagementChannel) Channel(org.jboss.remoting3.Channel) IOException(java.io.IOException) URISyntaxException(java.net.URISyntaxException) TimeoutException(java.util.concurrent.TimeoutException) PrivilegedActionException(java.security.PrivilegedActionException) IOException(java.io.IOException) ExecutionException(java.util.concurrent.ExecutionException) SlaveRegistrationException(org.jboss.as.domain.controller.SlaveRegistrationException)

Example 4 with Channel

use of com.automatak.dnp3.Channel in project wildfly-core by wildfly.

the class HostControllerConnection method connectionOpened.

@Override
public void connectionOpened(final Connection connection) throws IOException {
    final Channel channel = openChannel(connection, SERVER_CHANNEL_TYPE, configuration.getOptionMap());
    if (setChannel(channel)) {
        channel.receiveMessage(channelHandler.getReceiver());
        channel.addCloseHandler(channelHandler);
    } else {
        channel.closeAsync();
    }
}
Also used : FutureManagementChannel(org.jboss.as.protocol.mgmt.FutureManagementChannel) Channel(org.jboss.remoting3.Channel)

Example 5 with Channel

use of com.automatak.dnp3.Channel in project wildfly-core by wildfly.

the class TransactionalProtocolClientTestCase method stopChannels.

@After
public void stopChannels() throws Exception {
    for (final Channel channel : channels) {
        channel.close();
    }
    IoUtils.safeClose(channelServer);
    channelServer = null;
}
Also used : Channel(org.jboss.remoting3.Channel) After(org.junit.After)

Aggregations

Channel (org.jboss.remoting3.Channel)41 IOException (java.io.IOException)29 Test (org.junit.Test)14 Connection (org.jboss.remoting3.Connection)12 MessageInputStream (org.jboss.remoting3.MessageInputStream)12 CountDownLatch (java.util.concurrent.CountDownLatch)10 OpenListener (org.jboss.remoting3.OpenListener)10 MessageOutputStream (org.jboss.remoting3.MessageOutputStream)9 InetSocketAddress (java.net.InetSocketAddress)8 URI (java.net.URI)8 AtomicReference (java.util.concurrent.atomic.AtomicReference)8 IoFuture (org.xnio.IoFuture)7 Channel (com.google.cloud.video.livestream.v1.Channel)6 LivestreamServiceClient (com.google.cloud.video.livestream.v1.LivestreamServiceClient)6 URISyntaxException (java.net.URISyntaxException)6 ManagementClientChannelStrategy (org.jboss.as.protocol.mgmt.ManagementClientChannelStrategy)6 FutureResult (org.xnio.FutureResult)6 ManagementChannelHandler (org.jboss.as.protocol.mgmt.ManagementChannelHandler)5 Endpoint (org.jboss.remoting3.Endpoint)5 ProtocolConnectionConfiguration (org.jboss.as.protocol.ProtocolConnectionConfiguration)4