21 #ifndef KINETIC_CPP_CLIENT_NONBLOCKING_STRING_H_
22 #define KINETIC_CPP_CLIENT_NONBLOCKING_STRING_H_
27 #include "kinetic/common.h"
28 #include "socket_wrapper_interface.h"
32 using std::shared_ptr;
33 using std::unique_ptr;
36 enum NonblockingStringStatus {
44 NonblockingStringReader(shared_ptr<SocketWrapperInterface> socket_wrapper,
size_t size, unique_ptr<const string> &s);
46 NonblockingStringStatus Read();
49 shared_ptr<SocketWrapperInterface> socket_wrapper_;
51 unique_ptr<const string> &s_;
60 NonblockingStringStatus Write();
63 shared_ptr<SocketWrapperInterface> socket_wrapper_;
64 const shared_ptr<const string> s_;
65 size_t bytes_written_;
71 #endif // KINETIC_CPP_CLIENT_NONBLOCKING_STRING_H_