public void WriteToStream(Stream outputStream, Encoding encoding)
{
//NpgsqlEventLog.LogMsg( this.ToString() + _commandText, LogLevel.Debug );
String commandText = _command.GetCommandText();
// Tell to mediator what command is being sent.
_command.Connector.Mediator.SqlSent = commandText;
// Send the query to server.
// Write the byte 'Q' to identify a query message.
outputStream.WriteByte((Byte)'Q');
if (_protocolVersion == ProtocolVersion.Version3)
{
// Write message length. Int32 + string length + null terminator.
PGUtil.WriteInt32(outputStream, 4 + encoding.GetByteCount(commandText) + 1);
}
// Write the query. In this case it is the CommandText text.
// It is a string terminated by a C NULL character.
PGUtil.WriteString(commandText, outputStream, encoding);
}