|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.derby.impl.store.replication.net.ReplicationMessage
public class ReplicationMessage
This message is used for the communication between the master and the slave during Replication. The message is composed of a type flag and corresponding object. Each type flag indicating the type of the content bundled inside the message.
Field Summary | |
---|---|
private java.lang.Object |
message
This is the content of the replication message. |
static long |
serialVersionUID
The version number is determined based on the database version of the current database. |
private int |
type
The valid values for the type of the content of the message are listed below. |
static int |
TYPE_ACK
This flag is used to send an acknowledgment of successful completion of a requested operation. |
static int |
TYPE_ERROR
Indicates that the requested operation was not able to be completed successfully. |
static int |
TYPE_FAILOVER
Used to signal the slave that it must failover. |
static int |
TYPE_INITIATE_INSTANT
Used during the intial handshake between the master and the slave. |
static int |
TYPE_INITIATE_VERSION
used during the intial handshake between the master and the slave. |
static int |
TYPE_LOG
This flag will be used for all messages that carry log records. |
static int |
TYPE_PING
A message used to check if the replication network is working. |
static int |
TYPE_PONG
A message sent as a response to a TYPE_PING message. |
static int |
TYPE_STOP
Used to send a stop replication signal to the slave. |
Constructor Summary | |
---|---|
ReplicationMessage()
public No args constructor required with Externalizable. |
|
ReplicationMessage(int type,
java.lang.Object message)
Constructor used to set the type and message . |
Method Summary | |
---|---|
java.lang.Object |
getMessage()
Used to get the actual message that is wrapped inside the ReplicationMessage object. |
int |
getType()
Used to get the type of this ReplicationMessage . |
void |
readExternal(java.io.ObjectInput in)
Used to restore the contents of this object. |
void |
writeExternal(java.io.ObjectOutput out)
Used to save the contents of this Object. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final long serialVersionUID
private java.lang.Object message
private int type
public static final int TYPE_INITIATE_VERSION
Long
.
IMPORTANT: This constant must not be changed in future versions since
we need it to decide slave/master version mismatch
public static final int TYPE_INITIATE_INSTANT
Long
.
public static final int TYPE_LOG
byte
array. The content of the byte array is the log records in the
binary form.
public static final int TYPE_ACK
String
. The SQLState of the
error message can be used here.
public static final int TYPE_ERROR
String[]
where the first length-1 fields
are used as arguments to create the exception and the last
field contains the SQLState. The SQLState is the last element
in the Array, because this means that the whole Array can be
used as input to the StandardException creator. The SQLState
will be ignored by the exception creator because there is one
argument too many. This way we don't have to make a copy of the
received Array, containing all elements except the SQLState
element.
public static final int TYPE_PING
public static final int TYPE_PONG
public static final int TYPE_STOP
public static final int TYPE_FAILOVER
Constructor Detail |
---|
public ReplicationMessage()
public ReplicationMessage(int type, java.lang.Object message)
type
and message
.
This is used while creating messages for sending while readExternal is
used on the receiving end.
type
- The type of this message. Must be one of the message
type constants of this class (TYPE_LOG, TYPE_ACK,
TYPE_ERROR, TYPE_INITIATE).message
- The message to be transmitted.Method Detail |
---|
public java.lang.Object getMessage()
public int getType()
ReplicationMessage
.
public void readExternal(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException
readExternal
in interface java.io.Externalizable
in
- the stream to read data from in order to restore the object.
java.io.IOException
- If an exception occurs while reading from the
InputStream
.
java.lang.ClassNotFoundException
- Class of a serialized object cannot
be found.public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException
writeExternal
in interface java.io.Externalizable
out
- the stream to write the object to.
java.io.IOException
- if an exception occurs while writing to the
OutputStream
.
|
Built on Thu 2011-03-10 11:54:14+0000, from revision ??? | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |