当前位置: 首页>>代码示例>>Java>>正文


Java ConnectionFactory.setHandshakeTimeout方法代码示例

本文整理汇总了Java中com.rabbitmq.client.ConnectionFactory.setHandshakeTimeout方法的典型用法代码示例。如果您正苦于以下问题:Java ConnectionFactory.setHandshakeTimeout方法的具体用法?Java ConnectionFactory.setHandshakeTimeout怎么用?Java ConnectionFactory.setHandshakeTimeout使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.rabbitmq.client.ConnectionFactory的用法示例。


在下文中一共展示了ConnectionFactory.setHandshakeTimeout方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: create

import com.rabbitmq.client.ConnectionFactory; //导入方法依赖的package包/类
static ConnectionProvider create(final RabbitMqConfig config, final DefaultSslConfigurator sslConfigurator) {
    final ConnectionFactory connectionFactory = new ConnectionFactory();
    connectionFactory.setUsername(config.username());
    connectionFactory.setPassword(config.password());
    connectionFactory.setVirtualHost(config.virtualHost());
    connectionFactory.setAutomaticRecoveryEnabled(config.networkRecoveryEnabled());
    connectionFactory.setTopologyRecoveryEnabled(config.topologyRecoveryEnabled());
    connectionFactory.setConnectionTimeout((int) config.connectionTimeout().toMillis());
    connectionFactory.setHandshakeTimeout((int) config.handshakeTimeout().toMillis());
    connectionFactory.setShutdownTimeout((int) config.shutdownTimeout().toMillis());
    connectionFactory.setNetworkRecoveryInterval(config.networkRecoveryInterval().toMillis());
    connectionFactory.setRequestedHeartbeat((int) config.heartbeat().getSeconds());
    connectionFactory.setRequestedChannelMax(config.channelLimit());
    connectionFactory.setRequestedFrameMax(config.frameSizeLimit());
    if (config.nonBlockingIoEnabled()) {
        connectionFactory.useNio();
    } else {
        connectionFactory.useBlockingIo();
    }
    if (config.sslEnabled()) {
        sslConfigurator.configure(connectionFactory, config);
    }
    return new RabbitConnectionProvider(config, connectionFactory);
}
 
开发者ID:FinderSystems,项目名称:Elmer,代码行数:25,代码来源:RabbitConnectionProvider.java

示例2: createConnection

import com.rabbitmq.client.ConnectionFactory; //导入方法依赖的package包/类
private synchronized Connection createConnection(ChannelType connectionType) throws ConnectionFailureException {
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    Date startTime = new Date();
    sdf.setTimeZone(TimeZone.getTimeZone("UTC"));
    settings.getClient_properties().put("connection_type", connectionType.toString());
    settings.getClient_properties().put("connect_time", sdf.format(startTime)+"Z");

    ConnectionFactory cf = new ConnectionFactory();
    cf.setRequestedHeartbeat(settings.getHeartbeat());
    cf.setConnectionTimeout(settings.getConnection_timeout_millis());
    cf.setShutdownTimeout(settings.getShutdown_timeout_millis());
    cf.setRequestedFrameMax(settings.getFrame_max());
    cf.setHandshakeTimeout(settings.getHandshake_timeout_millis());
    cf.setClientProperties((Map)settings.getClient_properties());
    //cf.setSocketConfigurator(); NOTE is this worth investigating??
    cf.setRequestedChannelMax(0);//Hard coded ..
    cf.setAutomaticRecoveryEnabled(false);//Hard coded ..
    cf.setTopologyRecoveryEnabled(false);//Hard coded ..

    Exception lastException = null;
    Connection connection = null;
    for (BrokerAddresses.BrokerAddress address : addresses) {
        cf.setPassword(address.password);
        cf.setUsername(address.username);
        cf.setPort(address.port);
        cf.setHost(address.host);
        cf.setVirtualHost(address.virtualHost);
        try {
            if(address.scheme.toLowerCase().equals("amqps")){
                cf.useSslProtocol();
                cf.setSocketFactory(SSLSocketFactory.getDefault()); //Because rabbit uses NoopTrustStore by default...
            }
            log.infoWithParams("Creating "+connectionType+" connection to broker ...",
                    "address", address.toString(),
                    "settings", settings.toString());
            connection = cf.newConnection();
            boolean isOpen = connection.isOpen();
            if(!isOpen){
                continue;
            }
            break;
        } catch (Exception e) {
            log.debugWithParams("Failed to createConnection to broker",
                    "address", address.toString());
            lastException = e;
        }
    }

    if(connection == null){
        throw new ConnectionFailureException(cf, lastException);
    }

    conToChannel.put(connectionType,
            new ConnectionInfo(
                    connection,
                    new ArrayList<ChannelImpl>(),
                    settings.getClient_properties(),
                    connectionType)
    );
    log.infoWithParams("Successfully created "+connectionType+" connection to broker.",
            "address", addresses.get(0).toString(),
            "localPort", ((AMQConnection) connection).getLocalPort(),
            "settings", settings.toString());

    return connection;

}
 
开发者ID:meltwater,项目名称:rxrabbit,代码行数:68,代码来源:DefaultChannelFactory.java


注:本文中的com.rabbitmq.client.ConnectionFactory.setHandshakeTimeout方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。