Skip to content

Commit

Permalink
Renamed ReadHandler and WriteHandler
Browse files Browse the repository at this point in the history
to SocketReader and SocketWriter. The original names are flipped; the socket
reader process the read data, and the read handler reads data from the socket.

The same goes for the writing part.

So in this PR these names are flipped so that the SocketReader is responsible
for reading from the socket and the ReadHandler is process the incoming data.
  • Loading branch information
pveentjer committed Sep 1, 2015
1 parent 11ababd commit a182088
Show file tree
Hide file tree
Showing 56 changed files with 671 additions and 498 deletions.
4 changes: 2 additions & 2 deletions checkstyle/suppressions.xml
Expand Up @@ -369,7 +369,7 @@
<suppress checks="MethodCount" files="com/hazelcast/nio/Bits"/>
<suppress checks="ExecutableStatementCount|ClassDataAbstractionCoupling|ClassFanOutComplexity"
files="com/hazelcast/nio/tcp/TcpIpConnectionManager"/>
<suppress checks="NPathComplexity" files="com/hazelcast/nio/tcp/spinning/SpinningReadHandler"/>
<suppress checks="NPathComplexity" files="com/hazelcast/nio/tcp/spinning/SpinningSocketReader"/>
<suppress checks="MethodCount|MagicNumber" files="com/hazelcast/internal/serialization/impl/ByteArrayObjectDataInput"/>
<suppress checks="MethodCount|MagicNumber" files="com/hazelcast/internal/serialization/impl/ByteArrayObjectDataOutput"/>
<suppress checks="MethodCount|MagicNumber" files="com/hazelcast/internal/serialization/impl/ByteBufferObjectDataInput"/>
Expand All @@ -385,7 +385,7 @@
<suppress checks="ReturnCount" files="com/hazelcast/internal/serialization/impl/MorphingPortableReader"/>
<suppress checks="MethodCount" files="com/hazelcast/nio/NodeIOService"/>
<suppress checks="MagicNumber|ReturnCount|MethodCount|NPathComplexity" files="com/hazelcast/nio/Packet"/>
<suppress checks="NPathComplexity" files="com/hazelcast/nio/tcp/nonblocking/NonBlockingReadHandler"/>
<suppress checks="NPathComplexity" files="com/hazelcast/nio/tcp/nonblocking/NonBlockingSocketReader"/>
<suppress checks="MagicNumber|EmptyBlock|MethodCount" files="com/hazelcast/nio/tcp/nonblocking/NonBlockingWriteHandler"/>
<suppress checks="ClassFanOutComplexity|ClassDataAbstractionCoupling|MethodCount|ParameterNumber"
files="com/hazelcast/internal/serialization/impl/SerializationServiceImpl"/>
Expand Down
Expand Up @@ -22,10 +22,10 @@
import com.hazelcast.core.HazelcastInstance;
import com.hazelcast.instance.GroupProperties;
import com.hazelcast.instance.Node;
import com.hazelcast.nio.tcp.nonblocking.NonBlockingReadHandler;
import com.hazelcast.nio.tcp.nonblocking.NonBlockingSocketReader;
import com.hazelcast.nio.tcp.TcpIpConnection;
import com.hazelcast.nio.tcp.TcpIpConnectionManager;
import com.hazelcast.nio.tcp.nonblocking.NonBlockingWriteHandler;
import com.hazelcast.nio.tcp.nonblocking.NonBlockingSocketWriter;
import com.hazelcast.test.HazelcastSerialClassRunner;
import com.hazelcast.test.HazelcastTestSupport;
import com.hazelcast.test.annotation.QuickTest;
Expand Down Expand Up @@ -57,14 +57,14 @@ public void testClientBufferSize_SameAsForMemberMemberConnectionsByDefault() {
HazelcastInstance client = HazelcastClient.newHazelcastClient();

TcpIpConnection clientConnection = getClientConnection(server);
NonBlockingReadHandler readHandler = (NonBlockingReadHandler) clientConnection.getReadHandler();
NonBlockingWriteHandler writeHandler = (NonBlockingWriteHandler) clientConnection.getWriteHandler();
NonBlockingSocketReader reader = (NonBlockingSocketReader) clientConnection.getSocketReader();
NonBlockingSocketWriter writer = (NonBlockingSocketWriter) clientConnection.getSocketWriter();

int defaultReceiveBuffer = getDefaultReceiverBufferSize(server);
int defaultSendBuffer = getDefaultSendBufferSize(server);

assertHasByteBufferWithSize(readHandler, "inputBuffer", defaultReceiveBuffer);
assertHasByteBufferWithSize(writeHandler, "outputBuffer", defaultSendBuffer);
assertHasByteBufferWithSize(reader, "inputBuffer", defaultReceiveBuffer);
assertHasByteBufferWithSize(writer, "outputBuffer", defaultSendBuffer);
}

@Test
Expand All @@ -80,11 +80,11 @@ public void testClientBufferSize_ExplicitOverride() {
HazelcastInstance client = HazelcastClient.newHazelcastClient();

TcpIpConnection clientConnection = getClientConnection(server);
NonBlockingReadHandler readHandler = (NonBlockingReadHandler) clientConnection.getReadHandler();
NonBlockingWriteHandler writeHandler = (NonBlockingWriteHandler) clientConnection.getWriteHandler();
NonBlockingSocketReader reader = (NonBlockingSocketReader) clientConnection.getSocketReader();
NonBlockingSocketWriter writer = (NonBlockingSocketWriter) clientConnection.getSocketWriter();

assertHasByteBufferWithSize(readHandler, "inputBuffer", receiveBufferSizeKB * 1024);
assertHasByteBufferWithSize(writeHandler, "outputBuffer", sendBufferSizeKB * 1024);
assertHasByteBufferWithSize(reader, "inputBuffer", receiveBufferSizeKB * 1024);
assertHasByteBufferWithSize(writer, "outputBuffer", sendBufferSizeKB * 1024);
}

private int getDefaultSendBufferSize(HazelcastInstance instance) {
Expand Down
Expand Up @@ -36,11 +36,11 @@
import com.hazelcast.internal.serialization.SerializationService;
import com.hazelcast.internal.serialization.SerializationServiceBuilder;
import com.hazelcast.nio.tcp.DefaultSocketChannelWrapperFactory;
import com.hazelcast.nio.tcp.MemberSocketWriter;
import com.hazelcast.nio.tcp.MemberSocketReader;
import com.hazelcast.nio.tcp.MemberWriteHandler;
import com.hazelcast.nio.tcp.MemberReadHandler;
import com.hazelcast.nio.tcp.SocketChannelWrapperFactory;
import com.hazelcast.nio.tcp.SocketReader;
import com.hazelcast.nio.tcp.SocketWriter;
import com.hazelcast.nio.tcp.ReadHandler;
import com.hazelcast.nio.tcp.WriteHandler;
import com.hazelcast.nio.tcp.TcpIpConnection;
import com.hazelcast.partition.strategy.DefaultPartitioningStrategy;
import com.hazelcast.security.SecurityContext;
Expand Down Expand Up @@ -161,14 +161,14 @@ public SocketChannelWrapperFactory getSocketChannelWrapperFactory() {
}

@Override
public SocketReader createSocketReader(TcpIpConnection connection, IOService ioService) {
public ReadHandler createReadHandler(TcpIpConnection connection, IOService ioService) {
NodeEngineImpl nodeEngine = node.nodeEngine;
return new MemberSocketReader(connection, nodeEngine.getPacketDispatcher());
return new MemberReadHandler(connection, nodeEngine.getPacketDispatcher());
}

@Override
public SocketWriter createSocketWriter(TcpIpConnection connection, IOService ioService) {
return new MemberSocketWriter();
public WriteHandler createWriteHandler(TcpIpConnection connection, IOService ioService) {
return new MemberWriteHandler();
}

@Override
Expand Down
Expand Up @@ -24,8 +24,8 @@
import com.hazelcast.nio.IOService;
import com.hazelcast.nio.MemberSocketInterceptor;
import com.hazelcast.nio.tcp.SocketChannelWrapperFactory;
import com.hazelcast.nio.tcp.SocketReader;
import com.hazelcast.nio.tcp.SocketWriter;
import com.hazelcast.nio.tcp.ReadHandler;
import com.hazelcast.nio.tcp.WriteHandler;
import com.hazelcast.nio.tcp.TcpIpConnection;
import com.hazelcast.security.SecurityContext;

Expand Down Expand Up @@ -95,22 +95,22 @@ public interface NodeExtension {
SocketChannelWrapperFactory getSocketChannelWrapperFactory();

/**
* Creates a <tt>PacketReader</tt> for given <tt>Connection</tt> instance.
* Creates a <tt>ReadHandler</tt> for given <tt>Connection</tt> instance.
*
* @param connection tcp-ip connection
* @param ioService IOService
* @return packet reader
* @return the created ReadHandler.
*/
SocketReader createSocketReader(TcpIpConnection connection, IOService ioService);
ReadHandler createReadHandler(TcpIpConnection connection, IOService ioService);

/**
* Creates a <tt>PacketWriter</tt> for given <tt>Connection</tt> instance.
* Creates a <tt>WriteHandler</tt> for given <tt>Connection</tt> instance.
*
* @param connection tcp-ip connection
* @param ioService IOService
* @return packet writer
* @return the created WriteHandler
*/
SocketWriter createSocketWriter(TcpIpConnection connection, IOService ioService);
WriteHandler createWriteHandler(TcpIpConnection connection, IOService ioService);

/**
* Creates factory method that creates server side client message handlers
Expand Down
Expand Up @@ -16,16 +16,15 @@

package com.hazelcast.internal.ascii;

import com.hazelcast.nio.ascii.SocketTextReader;
import com.hazelcast.nio.ascii.SocketTextWriter;
import com.hazelcast.nio.ascii.TextReadHandler;
import com.hazelcast.nio.ascii.TextWriteHandler;

public abstract class AbstractTextCommand implements TextCommand {
protected final TextCommandConstants.TextCommandType type;
private SocketTextReader socketTextReader;
private SocketTextWriter socketTextWriter;
private TextReadHandler readHandler;
private TextWriteHandler writeHandler;
private long requestId = -1;


protected AbstractTextCommand(TextCommandConstants.TextCommandType type) {
this.type = type;
}
Expand All @@ -36,13 +35,13 @@ public TextCommandConstants.TextCommandType getType() {
}

@Override
public SocketTextReader getSocketTextReader() {
return socketTextReader;
public TextReadHandler getReadHandler() {
return readHandler;
}

@Override
public SocketTextWriter getSocketTextWriter() {
return socketTextWriter;
public TextWriteHandler getWriteHandler() {
return writeHandler;
}

@Override
Expand All @@ -51,10 +50,10 @@ public long getRequestId() {
}

@Override
public void init(SocketTextReader socketTextReader, long requestId) {
this.socketTextReader = socketTextReader;
public void init(TextReadHandler textReadHandler, long requestId) {
this.readHandler = textReadHandler;
this.requestId = requestId;
this.socketTextWriter = socketTextReader.getSocketTextWriter();
this.writeHandler = textReadHandler.getTextWriteHandler();
}

@Override
Expand Down
Expand Up @@ -16,8 +16,8 @@

package com.hazelcast.internal.ascii;

import com.hazelcast.nio.ascii.SocketTextReader;
import com.hazelcast.nio.ascii.TextReadHandler;

public interface CommandParser {
TextCommand parser(SocketTextReader socketTextReader, String cmd, int space);
TextCommand parser(TextReadHandler readHandler, String cmd, int space);
}
Expand Up @@ -18,18 +18,18 @@

import com.hazelcast.nio.SocketReadable;
import com.hazelcast.nio.SocketWritable;
import com.hazelcast.nio.ascii.SocketTextReader;
import com.hazelcast.nio.ascii.SocketTextWriter;
import com.hazelcast.nio.ascii.TextReadHandler;
import com.hazelcast.nio.ascii.TextWriteHandler;

public interface TextCommand extends SocketWritable, SocketReadable {

TextCommandConstants.TextCommandType getType();

void init(SocketTextReader socketTextReader, long requestId);
void init(TextReadHandler textReadHandler, long requestId);

SocketTextReader getSocketTextReader();
TextReadHandler getReadHandler();

SocketTextWriter getSocketTextWriter();
TextWriteHandler getWriteHandler();

long getRequestId();

Expand Down
Expand Up @@ -36,7 +36,7 @@
import com.hazelcast.instance.Node;
import com.hazelcast.instance.OutOfMemoryErrorDispatcher;
import com.hazelcast.logging.ILogger;
import com.hazelcast.nio.ascii.SocketTextWriter;
import com.hazelcast.nio.ascii.TextWriteHandler;
import com.hazelcast.nio.serialization.Data;
import com.hazelcast.util.Clock;
import com.hazelcast.util.EmptyStatement;
Expand Down Expand Up @@ -375,8 +375,8 @@ public void run() {
stopObject.notify();
}
} else {
SocketTextWriter socketTextWriter = textCommand.getSocketTextWriter();
socketTextWriter.enqueue(textCommand);
TextWriteHandler textWriteHandler = textCommand.getWriteHandler();
textWriteHandler.enqueue(textCommand);
}
} catch (InterruptedException e) {
return;
Expand Down
Expand Up @@ -18,12 +18,12 @@

import com.hazelcast.internal.ascii.CommandParser;
import com.hazelcast.internal.ascii.TextCommand;
import com.hazelcast.nio.ascii.SocketTextReader;
import com.hazelcast.nio.ascii.TextReadHandler;

import java.util.StringTokenizer;

public class DeleteCommandParser implements CommandParser {
public TextCommand parser(SocketTextReader socketTextReader, String cmd, int space) {
public TextCommand parser(TextReadHandler readHandler, String cmd, int space) {
StringTokenizer st = new StringTokenizer(cmd);
st.nextToken();
String key = null;
Expand Down
Expand Up @@ -18,24 +18,24 @@

import com.hazelcast.internal.ascii.CommandParser;
import com.hazelcast.internal.ascii.TextCommand;
import com.hazelcast.nio.ascii.SocketTextReader;
import com.hazelcast.nio.ascii.TextReadHandler;

import java.util.StringTokenizer;

public class GetCommandParser implements CommandParser {

public TextCommand parser(SocketTextReader socketTextReader, String cmd, int space) {
public TextCommand parser(TextReadHandler readHandler, String cmd, int space) {
String key = cmd.substring(space + 1);
if (key.indexOf(' ') == -1) {
GetCommand r = new GetCommand(key);
socketTextReader.publishRequest(r);
readHandler.publishRequest(r);
} else {
StringTokenizer st = new StringTokenizer(key);
while (st.hasMoreTokens()) {
PartialGetCommand r = new PartialGetCommand(st.nextToken());
socketTextReader.publishRequest(r);
readHandler.publishRequest(r);
}
socketTextReader.publishRequest(new EndCommand());
readHandler.publishRequest(new EndCommand());
}
return null;
}
Expand Down
Expand Up @@ -20,7 +20,7 @@
import com.hazelcast.internal.ascii.TextCommand;
import com.hazelcast.internal.ascii.TextCommandConstants;
import com.hazelcast.internal.ascii.TypeAwareCommandParser;
import com.hazelcast.nio.ascii.SocketTextReader;
import com.hazelcast.nio.ascii.TextReadHandler;

import java.util.StringTokenizer;

Expand All @@ -36,7 +36,7 @@ public IncrementCommandParser(TextCommandConstants.TextCommandType type) {
super(type);
}

public TextCommand parser(SocketTextReader socketTextReader, String cmd, int space) {
public TextCommand parser(TextReadHandler readHandler, String cmd, int space) {
StringTokenizer st = new StringTokenizer(cmd);
st.nextToken();
String key = null;
Expand Down
Expand Up @@ -19,7 +19,7 @@
import com.hazelcast.internal.ascii.TextCommand;
import com.hazelcast.internal.ascii.TextCommandConstants;
import com.hazelcast.internal.ascii.TypeAwareCommandParser;
import com.hazelcast.nio.ascii.SocketTextReader;
import com.hazelcast.nio.ascii.TextReadHandler;

import java.util.StringTokenizer;

Expand All @@ -30,7 +30,7 @@ public SetCommandParser(TextCommandConstants.TextCommandType type) {
super(type);
}

public TextCommand parser(SocketTextReader socketTextReader, String cmd, int space) {
public TextCommand parser(TextReadHandler readHandler, String cmd, int space) {
StringTokenizer st = new StringTokenizer(cmd);
st.nextToken();
String key = null;
Expand Down
Expand Up @@ -19,7 +19,7 @@
import com.hazelcast.internal.ascii.TextCommand;
import com.hazelcast.internal.ascii.TextCommandConstants;
import com.hazelcast.internal.ascii.TypeAwareCommandParser;
import com.hazelcast.nio.ascii.SocketTextReader;
import com.hazelcast.nio.ascii.TextReadHandler;

import static com.hazelcast.internal.ascii.TextCommandConstants.TextCommandType.QUIT;
import static com.hazelcast.internal.ascii.TextCommandConstants.TextCommandType.STATS;
Expand All @@ -31,7 +31,7 @@ public SimpleCommandParser(TextCommandConstants.TextCommandType type) {
super(type);
}

public TextCommand parser(SocketTextReader socketTextReader, String cmd, int space) {
public TextCommand parser(TextReadHandler readHandler, String cmd, int space) {
if (type == QUIT) {
return new SimpleCommand(type);
} else if (type == STATS) {
Expand Down
Expand Up @@ -37,7 +37,7 @@ public SimpleCommandProcessor(TextCommandService textCommandService) {
public void handle(SimpleCommand command) {
if (command.getType() == QUIT) {
try {
command.getSocketTextReader().closeConnection();
command.getReadHandler().closeConnection();
} catch (Exception e) {
logger.warning(e);
}
Expand Down
Expand Up @@ -19,7 +19,7 @@
import com.hazelcast.internal.ascii.TextCommand;
import com.hazelcast.internal.ascii.TextCommandConstants;
import com.hazelcast.internal.ascii.TypeAwareCommandParser;
import com.hazelcast.nio.ascii.SocketTextReader;
import com.hazelcast.nio.ascii.TextReadHandler;

import java.util.StringTokenizer;

Expand All @@ -36,7 +36,7 @@ public TouchCommandParser(TextCommandConstants.TextCommandType type) {
super(type);
}

public TextCommand parser(SocketTextReader socketTextReader, String cmd, int space) {
public TextCommand parser(TextReadHandler readHandler, String cmd, int space) {
StringTokenizer st = new StringTokenizer(cmd);
st.nextToken();
String key = null;
Expand Down
Expand Up @@ -19,15 +19,15 @@
import com.hazelcast.internal.ascii.CommandParser;
import com.hazelcast.internal.ascii.TextCommand;
import com.hazelcast.internal.ascii.memcache.ErrorCommand;
import com.hazelcast.nio.ascii.SocketTextReader;
import com.hazelcast.nio.ascii.TextReadHandler;

import java.util.StringTokenizer;

import static com.hazelcast.internal.ascii.TextCommandConstants.TextCommandType.ERROR_CLIENT;

public class HttpDeleteCommandParser implements CommandParser {

public TextCommand parser(SocketTextReader socketTextReader, String cmd, int space) {
public TextCommand parser(TextReadHandler readHandler, String cmd, int space) {
StringTokenizer st = new StringTokenizer(cmd);
st.nextToken();
String uri = null;
Expand Down

0 comments on commit a182088

Please sign in to comment.