public abstract class TextProtocol
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
class |
TextProtocol.Fail |
static class |
TextProtocol.InvalidMessageException
Used to indicate a message format or invalid content exception.
|
class |
TextProtocol.Message
Base message class for all messages exchanged in the protocol.
|
static class |
TextProtocol.MessageError |
class |
TextProtocol.MessageExchange
Use to parallelize message exchanges via Futures.
|
static class |
TextProtocol.MessageOp
The Operations that are part of the protocol.
|
class |
TextProtocol.OK |
class |
TextProtocol.ProtocolError |
class |
TextProtocol.RequestMessage
Base class for all Request messages
|
class |
TextProtocol.ResponseMessage
Base classes for response messages.
|
protected static class |
TextProtocol.StringFormatable |
static class |
TextProtocol.TOKENS
Represents the tokens on a message line.
|
protected static interface |
TextProtocol.WireFormatable |
Modifier and Type | Field and Description |
---|---|
protected EnvironmentImpl |
envImpl |
TextProtocol.MessageOp |
FAIL_RESP |
protected java.util.logging.Formatter |
formatter |
protected java.util.logging.Logger |
logger |
protected java.lang.String |
messageNocheckSuffix |
TextProtocol.MessageOp |
OK_RESP |
TextProtocol.MessageOp |
PROTOCOL_ERROR |
static java.lang.String |
SEPARATOR |
static java.lang.String |
SEPARATOR_REGEXP |
Constructor and Description |
---|
TextProtocol(java.lang.String version,
java.lang.String groupName,
NameIdPair nameIdPair,
EnvironmentImpl envImpl)
Creates an instance of the Protocol.
|
Modifier and Type | Method and Description |
---|---|
int |
getMajorVersionNumber(java.lang.String version)
Returns the Integer number which represents a Protocol version.
|
NameIdPair |
getNameIdPair() |
int |
getOpenTimeout() |
int |
getReadTimeout() |
TextProtocol.RequestMessage |
getRequestMessage(java.nio.channels.SocketChannel channel)
Reads the channel and returns a read request.
|
protected void |
initializeMessageOps(TextProtocol.MessageOp[] protocolOps)
The messages as defined by the subclass.
|
int |
messageCount() |
TextProtocol.Message |
parse(java.lang.String line)
Parses a line into a Request/Response message.
|
TextProtocol.RequestMessage |
parseRequest(java.lang.String requestLine)
Converts a request line into a requestMessage.
|
(package private) TextProtocol.ResponseMessage |
parseResponse(java.lang.String responseLine)
Converts a response line into a ResponseMessage.
|
TextProtocol.ResponseMessage |
process(java.lang.Object requestProcessor,
TextProtocol.RequestMessage requestMessage) |
protected void |
setTimeouts(RepImpl repImpl,
DurationConfigParam openTimeoutConfig,
DurationConfigParam readTimeoutConfig)
Set the network timeouts associated with uses of this protocol instance.
|
void |
updateNodeIds(java.util.Set<java.lang.Integer> newMemberIds)
Updates the current set of nodes that constitutes the group.
|
protected final java.lang.String messageNocheckSuffix
public static final java.lang.String SEPARATOR
public static final java.lang.String SEPARATOR_REGEXP
public final TextProtocol.MessageOp PROTOCOL_ERROR
public final TextProtocol.MessageOp OK_RESP
public final TextProtocol.MessageOp FAIL_RESP
protected final java.util.logging.Logger logger
protected final java.util.logging.Formatter formatter
protected final EnvironmentImpl envImpl
public TextProtocol(java.lang.String version, java.lang.String groupName, NameIdPair nameIdPair, EnvironmentImpl envImpl)
nameIdPair
- a unique identifier for this nodeenvImpl
- for logging, may be nullprotected void setTimeouts(RepImpl repImpl, DurationConfigParam openTimeoutConfig, DurationConfigParam readTimeoutConfig)
protected void initializeMessageOps(TextProtocol.MessageOp[] protocolOps)
protocolOps
- the message ops defined by the subclass.public int getOpenTimeout()
public int getReadTimeout()
public NameIdPair getNameIdPair()
public int messageCount()
public void updateNodeIds(java.util.Set<java.lang.Integer> newMemberIds)
newMemberIds
- public int getMajorVersionNumber(java.lang.String version)
public TextProtocol.Message parse(java.lang.String line) throws TextProtocol.InvalidMessageException
line
- containing the messageTextProtocol.InvalidMessageException
TextProtocol.ResponseMessage parseResponse(java.lang.String responseLine) throws TextProtocol.InvalidMessageException
responseLine
- TextProtocol.InvalidMessageException
public TextProtocol.RequestMessage parseRequest(java.lang.String requestLine) throws TextProtocol.InvalidMessageException
requestLine
- TextProtocol.InvalidMessageException
public TextProtocol.RequestMessage getRequestMessage(java.nio.channels.SocketChannel channel) throws java.io.IOException
channel
- the channel delivering the requestjava.io.IOException
public TextProtocol.ResponseMessage process(java.lang.Object requestProcessor, TextProtocol.RequestMessage requestMessage)
Copyright (c) 2004-2012 Oracle. All rights reserved.