/*! Check if the writer will block \param ts timeout \return true if won't block */ bool writer_poll(const Poco::Timespan &ts = Poco::Timespan()) const { return _writer.poll(ts); }
/*! Write a string message to the underlying socket. \param from Message (string) to write \return number of bytes written */ int send(const f8String& from) { return _writer.send(from.data(), from.size()); }
/*! Call the FIXreader method \return result of call */ int writer_execute() { return _writer.execute(_writer.cancellation_token()); }
/*! Write messages to the underlying socket as a single batch. \param msgs vector of Message to write \param destroy if true delete after send \return true on success */ size_t write_batch(const std::vector<Message *>& msgs, bool destroy) { return _writer.write_batch(msgs, destroy); }
/*! Write a string message to the underlying socket. \param from Message (string) to write \param sz number bytes to send \return number of bytes written */ int send(const char *from, size_t sz) { return _writer.send(from, sz); }
/*! Write a message to the underlying socket. Non-pipelined version. \param from Message to write \return true on success */ virtual bool write(Message& from) { return _writer.write(from); }
/*! Write a message to the underlying socket. \param from Message to write \param destroy if true delete after send \return true on success */ virtual bool write(Message *from, bool destroy=true) { return _writer.write(from, destroy); }
/*! Check if the writer will block \return true if won't block */ bool writer_poll() const { return _writer.poll(); }
/*! Call the FIXreader method \return result of call */ int writer_execute() { return _writer.execute(); }
/*! Write a string message to the underlying socket. \param from Message (string) to write \return number of bytes written */ int send(const f8String& from) { return _writer.send(from); }