#include <iostream>
#include <utility>
#include <algorithm>
#include <string>
class BufferedReader {
public:
explicit BufferedReader(PackageStream *stream) : stream(stream) {
}
int32_t Read(char *output_buffer, int32_t buffer_len) {
this->stream->package_len_ = buffer_len;
return this->stream->ReadPackage(output_buffer);
}
private:
PackageStream *stream;
};