summaryrefslogtreecommitdiff
path: root/modules/io_codec/c++/io_peer.tmpl.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'modules/io_codec/c++/io_peer.tmpl.hpp')
-rw-r--r--modules/io_codec/c++/io_peer.tmpl.hpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/modules/io_codec/c++/io_peer.tmpl.hpp b/modules/io_codec/c++/io_peer.tmpl.hpp
index faf8c7b..a9f942d 100644
--- a/modules/io_codec/c++/io_peer.tmpl.hpp
+++ b/modules/io_codec/c++/io_peer.tmpl.hpp
@@ -52,6 +52,7 @@ streaming_io_peer<Incoming, Outgoing, TransportEncoding, ContentEncoding,
}
auto& len_val = eo_len.get_value();
in_buffer_.write_advance(len_val);
+ in_buff->write_advance(len_val);
data<Incoming, ContentEncoding> in_data{std::move(in_buff)};
incoming_feeder_->feed(std::move(in_data));
@@ -84,13 +85,20 @@ streaming_io_peer<Incoming, Outgoing, TransportEncoding, ContentEncoding,
io_stream_->read(&in_buffer_.write(), 1, in_buffer_.write_segment_length());
}
+}
+#include <iostream>
+namespace saw {
+
template <typename Incoming, typename Outgoing, typename TransportEncoding,
typename ContentEncoding, typename BufferT>
error_or<void> streaming_io_peer<Incoming, Outgoing, TransportEncoding, ContentEncoding,
BufferT>::send(data<Outgoing, ContentEncoding>
msg) {
+ std::cout<<"O: "<<out_buffer_.read_segment_length()<<std::endl;
bool restart_write = (out_buffer_.read_segment_length() == 0u);
+ std::cout<<"A: "<<out_buffer_.read_segment_length()<<std::endl;
+
auto& msg_buff = msg.get_buffer();
{
auto eov = in_codec_.wrap(out_buffer_, msg_buff);
@@ -100,6 +108,7 @@ error_or<void> streaming_io_peer<Incoming, Outgoing, TransportEncoding, ContentE
}
// auto& len_val = eov.get_value();
}
+ std::cout<<"B"<<std::endl;
auto eov = out_buffer_.write_from(msg_buff);
if (eov.is_error()) {
@@ -108,11 +117,14 @@ error_or<void> streaming_io_peer<Incoming, Outgoing, TransportEncoding, ContentE
}
auto& len_val = eov.get_value();
out_buffer_.write_advance(len_val);
+ std::cout<<"C"<<std::endl;
if (restart_write && out_buffer_.read_segment_length() > 0u) {
+ std::cout<<"D"<<std::endl;
io_stream_->write(&out_buffer_.read(),
out_buffer_.read_segment_length());
}
+ std::cout<<"E"<<std::endl;
return void_t{};
}