Package org.mariadb.jdbc.message.client

## Interface RedoableClientMessage

All Superinterfaces:
  `org.mariadb.jdbc.message.ClientMessage`

All Known Subinterfaces:
  `RedoableWithPrepareClientMessage`

All Known Implementing Classes:
  `BulkExecutePacket`, `ChangeDbPacket`, `ExecutePacket`, `QueryPacket`, `QueryWithParametersPacket`

    public interface RedoableClientMessage
    extends org.mariadb.jdbc.message.ClientMessage

Client message that can be replayed

### Method Summary

All Methods Instance Methods Default Methods
`default int` `encode​(Writer writer, org.mariadb.jdbc.client.Context context, Prepare newPrepareResult)` Encode command to packet
`default void` `ensureReplayable​(org.mariadb.jdbc.client.Context context)` Ensure that command can be replayed
`default int` `reEncode​(Writer writer, org.mariadb.jdbc.client.Context context, Prepare newPrepareResult)` re-encode command to packet
`default void` `saveParameters()` Save parameters of command that can be re-executed

### Methods inherited from interface org.mariadb.jdbc.message.ClientMessage

`batchUpdateLength, binaryProtocol, canSkipMeta, description, encode, getLocalInfileInputStream, readPacket, validateLocalFileName`

### Method Detail

#### saveParameters

    default void saveParameters()

Save parameters of command that can be re-executed

#### ensureReplayable

    default void ensureReplayable​(org.mariadb.jdbc.client.Context context)
                           throws IOException,
                                  SQLException

Ensure that command can be replayed

Parameters:
  `context` - connection context
Throws:
  `IOException` - If socket error occurs
  `SQLException` - for other type of issue

#### encode

    default int encode​(Writer writer,
                       org.mariadb.jdbc.client.Context context,
                       Prepare newPrepareResult)
                throws IOException,
                       SQLException

Encode command to packet

Parameters:
  `writer` - socket writer
  `context` - connection context
  `newPrepareResult` - new prepare result if prepare has been changed
Returns:
  number of send command
Throws:
  `IOException` - if any socket error is issued
  `SQLException` - if any other kind of error occurs during encoding

#### reEncode

    default int reEncode​(Writer writer,
                         org.mariadb.jdbc.client.Context context,
                         Prepare newPrepareResult)
                  throws IOException,
                         SQLException

re-encode command to packet

Parameters:
  `writer` - socket writer
  `context` - connection context
  `newPrepareResult` - new prepare result if prepare has been changed
Returns:
  number of send command
Throws:
  `IOException` - if any socket error is issued
  `SQLException` - if any other kind of error occurs during encoding