org.firebirdsql.gds.ng.wire

## Interface TransmitAction

Functional Interface:
  This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

    @FunctionalInterface
    public interface TransmitAction

Action for transmitting messages to Firebird.

This action is primarily intended for transmitting data while the transmit lock is held.

Since:
  5.0.11
See Also:
  `XdrStreamAccess.withTransmitLock(TransmitAction)`

### Method Summary

All Methods Instance Methods Abstract Methods
`void` `transmit(XdrOutputStream xdrOut)` Transmits a message (or messages) to Firebird.

### Method Detail

#### transmit

    void transmit(XdrOutputStream xdrOut)
           throws java.io.IOException,
                  java.sql.SQLException

Transmits a message (or messages) to Firebird.

Implementations should not obtain (additional) locks, and must not attempt to read (receive) data from the server. Preferably, the only operations done are writes to `xdrOut`. In general, an action should write the whole message. If that is not possible, make sure that the full message is written while the transmit lock is held.

Parameters:
  `xdrOut` - XDR output stream to Firebird server
Throws:
  `java.io.IOException` - for errors writing into `xdrOut`
  `java.sql.SQLException` - for connection state errors
See Also:
  `XdrStreamAccess.withTransmitLock(TransmitAction)`