From 26077f9bb4c93e90e8484b3fbc4847edd3e7bd89 Mon Sep 17 00:00:00 2001 From: Robert Gemmell Date: Fri, 11 Nov 2011 10:19:08 +0000 Subject: QPID-3610: set TCP_NODELAY to true by default, add new system property for changing default, add unit tests for system properties + connection url options. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1200803 13f79535-47bb-0310-9956-ffa450edef68 --- .../main/java/org/apache/qpid/configuration/ClientProperties.java | 6 ++++++ .../src/main/java/org/apache/qpid/transport/ConnectionSettings.java | 5 ++++- 2 files changed, 10 insertions(+), 1 deletion(-) (limited to 'java/common/src/main') diff --git a/java/common/src/main/java/org/apache/qpid/configuration/ClientProperties.java b/java/common/src/main/java/org/apache/qpid/configuration/ClientProperties.java index 62ded5b2d8..88e2fb0176 100644 --- a/java/common/src/main/java/org/apache/qpid/configuration/ClientProperties.java +++ b/java/common/src/main/java/org/apache/qpid/configuration/ClientProperties.java @@ -102,6 +102,12 @@ public class ClientProperties */ public static final int DEFAULT_SYNC_OPERATION_TIMEOUT = 60000; + /** + * System properties to change the default value used for TCP_NODELAY + */ + public static final String QPID_TCP_NODELAY_PROP_NAME = "qpid.tcp_nodelay"; + public static final String AMQJ_TCP_NODELAY_PROP_NAME = "amqj.tcp_nodelay"; + /* public static final QpidProperty IGNORE_SET_CLIENTID_PROP_NAME = QpidProperty.booleanProperty(false,"qpid.ignore_set_client_id","ignore_setclientID"); diff --git a/java/common/src/main/java/org/apache/qpid/transport/ConnectionSettings.java b/java/common/src/main/java/org/apache/qpid/transport/ConnectionSettings.java index 37a8e594c0..2ee507e2ec 100644 --- a/java/common/src/main/java/org/apache/qpid/transport/ConnectionSettings.java +++ b/java/common/src/main/java/org/apache/qpid/transport/ConnectionSettings.java @@ -22,6 +22,8 @@ package org.apache.qpid.transport; import java.util.Map; +import org.apache.qpid.configuration.ClientProperties; + /** * A ConnectionSettings object can only be associated with * one Connection object. I have added an assertion that will @@ -38,7 +40,8 @@ public class ConnectionSettings String username = "guest"; String password = "guest"; int port = 5672; - boolean tcpNodelay = Boolean.getBoolean("amqj.tcp_nodelay"); + boolean tcpNodelay = Boolean.valueOf(System.getProperty(ClientProperties.QPID_TCP_NODELAY_PROP_NAME, + System.getProperty(ClientProperties.AMQJ_TCP_NODELAY_PROP_NAME, "true"))); int maxChannelCount = 32767; int maxFrameSize = 65535; int heartbeatInterval; -- cgit v1.2.1