public override void WriteArgumentsTo(RabbitMQ.Client.Impl.MethodArgumentWriter writer)
 {
     writer.WriteShort(m_ticket);
       writer.WriteShortstr(m_destination);
       writer.WriteBit(m_redelivered);
       writer.WriteBit(m_immediate);
       writer.WriteLonglong(m_ttl);
       writer.WriteOctet(m_priority);
       writer.WriteTimestamp(m_timestamp);
       writer.WriteOctet(m_deliveryMode);
       writer.WriteTimestamp(m_expiration);
       writer.WriteShortstr(m_exchange);
       writer.WriteShortstr(m_routingKey);
       writer.WriteShortstr(m_messageId);
       writer.WriteShortstr(m_correlationId);
       writer.WriteShortstr(m_replyTo);
       writer.WriteShortstr(m_contentType);
       writer.WriteShortstr(m_contentEncoding);
       writer.WriteShortstr(m_userId);
       writer.WriteShortstr(m_appId);
       writer.WriteShortstr(m_transactionId);
       writer.WriteLongstr(m_securityToken);
       writer.WriteTable(m_applicationHeaders);
       writer.WriteContent(m_body);
 }