From e9778b7526b0cb097309b47a2480788226bd3fe2 Mon Sep 17 00:00:00 2001 From: Gary Russell Date: Fri, 14 Oct 2011 19:47:43 -0400 Subject: [PATCH] INT-2167 Code Polishing Missing braces. Add private constructors to utility classes. Remove unnecessary logger overrides. Remove unnecessary null check. Remove redundant 'implements BeanNameAware'. Improve Synchronization in UDP. Removed Unused Obsolete Constants --- ...InternetProtocolSendingMessageHandler.java | 4 ---- .../integration/ip/IpHeaders.java | 2 ++ .../ip/config/IpAdapterParserUtils.java | 20 ++++++++----------- .../ip/tcp/TcpSendingMessageHandler.java | 4 ---- .../connection/AbstractConnectionFactory.java | 7 +------ .../tcp/connection/AbstractTcpConnection.java | 3 ++- .../AbstractTcpConnectionInterceptor.java | 2 +- .../ip/tcp/connection/TcpNetConnection.java | 3 ++- .../serializer/ByteArrayCrLfSerializer.java | 6 ++++-- .../serializer/ByteArrayRawSerializer.java | 3 ++- .../serializer/ByteArrayStxEtxSerializer.java | 3 ++- .../udp/MulticastSendingMessageHandler.java | 12 +++++++++-- .../udp/UnicastReceivingChannelAdapter.java | 3 ++- .../ip/udp/UnicastSendingMessageHandler.java | 3 ++- .../integration/ip/util/RegexUtils.java | 1 + 15 files changed, 39 insertions(+), 37 deletions(-) diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/AbstractInternetProtocolSendingMessageHandler.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/AbstractInternetProtocolSendingMessageHandler.java index abe6438315..b107980e93 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/AbstractInternetProtocolSendingMessageHandler.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/AbstractInternetProtocolSendingMessageHandler.java @@ -21,8 +21,6 @@ import java.net.InetSocketAddress; import java.net.Socket; import java.net.SocketAddress; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.springframework.integration.handler.AbstractMessageHandler; import org.springframework.util.Assert; @@ -34,8 +32,6 @@ import org.springframework.util.Assert; */ public abstract class AbstractInternetProtocolSendingMessageHandler extends AbstractMessageHandler implements CommonSocketOptions { - protected final Log logger = LogFactory.getLog(getClass()); - private final SocketAddress destinationAddress; private final String host; diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/IpHeaders.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/IpHeaders.java index f628ca0de8..c797606246 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/IpHeaders.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/IpHeaders.java @@ -49,4 +49,6 @@ public abstract class IpHeaders { @Deprecated public static final String CONNECTION_SEQ = IP + "connection_seq"; + private IpHeaders() {} + } diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/config/IpAdapterParserUtils.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/config/IpAdapterParserUtils.java index 9742fe065f..c909c3e67c 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/config/IpAdapterParserUtils.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/config/IpAdapterParserUtils.java @@ -48,7 +48,7 @@ public abstract class IpAdapterParserUtils { static final String SO_SEND_BUFFER_SIZE = "so-send-buffer-size"; static final String SO_KEEP_ALIVE = "so-keep-alive"; - + static final String RECEIVE_BUFFER_SIZE = "receive-buffer-size"; static final String POOL_SIZE = "pool-size"; @@ -64,18 +64,12 @@ public abstract class IpAdapterParserUtils { static final String MIN_ACKS_SUCCESS = "min-acks-for-success"; static final String TIME_TO_LIVE = "time-to-live"; - + static final String USING_NIO = "using-nio"; - + static final String USING_DIRECT_BUFFERS = "using-direct-buffers"; - + static final String MESSAGE_FORMAT = "message-format"; - - static final String CUSTOM_SOCKET_READER_CLASS_NAME = - "custom-socket-reader-class-name"; - - static final String CUSTOM_SOCKET_WRITER_CLASS_NAME = - "custom-socket-writer-class-name"; static final String SO_LINGER = "so-linger"; @@ -88,9 +82,9 @@ public abstract class IpAdapterParserUtils { static final String TASK_EXECUTOR = "task-executor"; static final String TCP_CONNECTION_TYPE = "type"; - + static final String SERIALIZER = "serializer"; - + static final String DESERIALIZER = "deserializer"; static final String SINGLE_USE = "single-use"; @@ -119,6 +113,8 @@ public abstract class IpAdapterParserUtils { public static final String SCHEDULER = "scheduler"; + private IpAdapterParserUtils() {} + /** * Adds a constructor-arg to the provided bean definition builder * with the value of the attribute whose name is provided if that diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/TcpSendingMessageHandler.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/TcpSendingMessageHandler.java index bb5119e2cb..f7c0696dd6 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/TcpSendingMessageHandler.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/TcpSendingMessageHandler.java @@ -20,8 +20,6 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ScheduledFuture; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; import org.springframework.context.SmartLifecycle; import org.springframework.integration.Message; import org.springframework.integration.MessageDeliveryException; @@ -53,8 +51,6 @@ import org.springframework.util.Assert; public class TcpSendingMessageHandler extends AbstractMessageHandler implements TcpSender, SmartLifecycle, ClientModeCapable { - protected final Log logger = LogFactory.getLog(this.getClass()); - private volatile AbstractConnectionFactory clientConnectionFactory; private volatile AbstractConnectionFactory serverConnectionFactory; diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/AbstractConnectionFactory.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/AbstractConnectionFactory.java index 27e1280e98..480e1bb060 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/AbstractConnectionFactory.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/AbstractConnectionFactory.java @@ -34,9 +34,6 @@ import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.springframework.beans.factory.BeanNameAware; import org.springframework.context.SmartLifecycle; import org.springframework.core.serializer.Deserializer; import org.springframework.core.serializer.Serializer; @@ -53,9 +50,7 @@ import org.springframework.util.Assert; * */ public abstract class AbstractConnectionFactory extends IntegrationObjectSupport - implements ConnectionFactory, Runnable, SmartLifecycle, BeanNameAware { - - protected final Log logger = LogFactory.getLog(this.getClass()); + implements ConnectionFactory, Runnable, SmartLifecycle { protected static final int DEFAULT_REPLY_TIMEOUT = 10000; diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/AbstractTcpConnection.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/AbstractTcpConnection.java index 8541234206..44e5e58375 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/AbstractTcpConnection.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/AbstractTcpConnection.java @@ -90,8 +90,9 @@ public abstract class AbstractTcpConnection implements TcpConnection { } public void afterSend(Message message) throws Exception { - if (logger.isDebugEnabled()) + if (logger.isDebugEnabled()) { logger.debug("Message sent " + message); + } if (this.singleUse) { // if (we're a server socket, or a send-only socket), and soLinger <> 0, close if ((this.isServer() || this.actualListener == null) && this.soLinger != 0) { diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/AbstractTcpConnectionInterceptor.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/AbstractTcpConnectionInterceptor.java index 7a47ea3547..fa22449331 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/AbstractTcpConnectionInterceptor.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/AbstractTcpConnectionInterceptor.java @@ -170,7 +170,7 @@ public abstract class AbstractTcpConnectionInterceptor implements TcpConnectionI return this.realSender; } TcpSender sender = this.getSender(); - while (sender != null && sender instanceof AbstractTcpConnectionInterceptor) { + while (sender instanceof AbstractTcpConnectionInterceptor) { sender = ((AbstractTcpConnectionInterceptor) sender).getSender(); } this.realSender = sender != null; diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/TcpNetConnection.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/TcpNetConnection.java index 05b5a8c43f..e2a877e45c 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/TcpNetConnection.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/connection/TcpNetConnection.java @@ -128,8 +128,9 @@ public class TcpNetConnection extends AbstractTcpConnection { } break; } - if (logger.isDebugEnabled()) + if (logger.isDebugEnabled()) { logger.debug("Message received " + message); + } try { if (listener == null) { logger.warn("Unexpected message - no inbound adapter registered with connection " + message); diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/serializer/ByteArrayCrLfSerializer.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/serializer/ByteArrayCrLfSerializer.java index 72fda36108..596e2ef07d 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/serializer/ByteArrayCrLfSerializer.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/serializer/ByteArrayCrLfSerializer.java @@ -40,8 +40,9 @@ public class ByteArrayCrLfSerializer extends AbstractByteArraySerializer { byte[] buffer = new byte[this.maxMessageSize]; int n = 0; int bite; - if (logger.isDebugEnabled()) + if (logger.isDebugEnabled()) { logger.debug("Available to read:" + inputStream.available()); + } while (true) { bite = inputStream.read(); // logger.debug("Read:" + (char) bite); @@ -49,8 +50,9 @@ public class ByteArrayCrLfSerializer extends AbstractByteArraySerializer { throw new SoftEndOfStreamException("Stream closed between payloads"); } checkClosure(bite); - if (n > 0 && bite == '\n' && buffer[n-1] == '\r') + if (n > 0 && bite == '\n' && buffer[n-1] == '\r') { break; + } buffer[n++] = (byte) bite; if (n >= this.maxMessageSize) { throw new IOException("CRLF not found before max message length: " diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/serializer/ByteArrayRawSerializer.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/serializer/ByteArrayRawSerializer.java index cb6c1698d7..97a2c3ee81 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/serializer/ByteArrayRawSerializer.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/serializer/ByteArrayRawSerializer.java @@ -44,8 +44,9 @@ public class ByteArrayRawSerializer extends AbstractByteArraySerializer { byte[] buffer = new byte[this.maxMessageSize]; int n = 0; int bite = 0; - if (logger.isDebugEnabled()) + if (logger.isDebugEnabled()) { logger.debug("Available to read:" + inputStream.available()); + } while (bite >= 0) { bite = inputStream.read(); if (bite < 0) { diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/serializer/ByteArrayStxEtxSerializer.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/serializer/ByteArrayStxEtxSerializer.java index 1a6ab9c8bc..429a3936ad 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/serializer/ByteArrayStxEtxSerializer.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/tcp/serializer/ByteArrayStxEtxSerializer.java @@ -49,8 +49,9 @@ public class ByteArrayStxEtxSerializer extends AbstractByteArraySerializer { if (bite < 0) { throw new SoftEndOfStreamException("Stream closed between payloads"); } - if (bite != STX) + if (bite != STX) { throw new MessageMappingException("Expected STX to begin message"); + } byte[] buffer = new byte[this.maxMessageSize]; int n = 0; while ((bite = inputStream.read()) != ETX) { diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/udp/MulticastSendingMessageHandler.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/udp/MulticastSendingMessageHandler.java index d6936b44f8..701e8c60f1 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/udp/MulticastSendingMessageHandler.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/udp/MulticastSendingMessageHandler.java @@ -98,7 +98,16 @@ public class MulticastSendingMessageHandler extends UnicastSendingMessageHandler } @Override - protected synchronized DatagramSocket getSocket() throws IOException { + protected DatagramSocket getSocket() throws IOException { + if (this.getTheSocket() == null) { + synchronized (this) { + createSocket(); + } + } + return this.getTheSocket(); + } + + private void createSocket() throws IOException { if (this.getTheSocket() == null) { MulticastSocket socket; if (this.isAcknowledge()) { @@ -128,7 +137,6 @@ public class MulticastSendingMessageHandler extends UnicastSendingMessageHandler } this.setSocket(socket); } - return this.getTheSocket(); } diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/udp/UnicastReceivingChannelAdapter.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/udp/UnicastReceivingChannelAdapter.java index 52c3c258f0..0b25640db4 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/udp/UnicastReceivingChannelAdapter.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/udp/UnicastReceivingChannelAdapter.java @@ -138,8 +138,9 @@ public class UnicastReceivingChannelAdapter extends AbstractInternetProtocolRece Message message = null; try { message = mapper.toMessage(packet); - if (logger.isDebugEnabled()) + if (logger.isDebugEnabled()) { logger.debug("Received:" + message); + } } catch (Exception e) { logger.error("Failed to map packet to message ", e); diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/udp/UnicastSendingMessageHandler.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/udp/UnicastSendingMessageHandler.java index 0c0e981d83..6310913cb1 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/udp/UnicastSendingMessageHandler.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/udp/UnicastSendingMessageHandler.java @@ -239,8 +239,9 @@ public class UnicastSendingMessageHandler extends throw new MessageHandlingException(message, "failed to send UDP packet", e); } finally { - if (countdownLatch != null) + if (countdownLatch != null) { this.ackControl.remove(messageId); + } } } diff --git a/spring-integration-ip/src/main/java/org/springframework/integration/ip/util/RegexUtils.java b/spring-integration-ip/src/main/java/org/springframework/integration/ip/util/RegexUtils.java index 66c07e6a13..a2fe654da3 100644 --- a/spring-integration-ip/src/main/java/org/springframework/integration/ip/util/RegexUtils.java +++ b/spring-integration-ip/src/main/java/org/springframework/integration/ip/util/RegexUtils.java @@ -42,4 +42,5 @@ public abstract class RegexUtils { return out; } + private RegexUtils() {} }