46 std::ostream *_out =
nullptr;
47 bool _brokenPipe =
false;
49 Connection() =
default;
51 virtual void send(
const std::string &buffer) = 0;
52 virtual void sendChunk(
const std::string &buffer, std::map<std::string, std::string> &extensions) = 0;
55 ~Connection()
override =
default;
57 virtual void initConnection() = 0;
58 virtual void closeConnection() = 0;
60 virtual std::string exit() = 0;
62 virtual void send(
const std::string &buffer, std::map<std::string, std::string> &extensions) = 0;
63 virtual void sendExtensions(std::map<std::string, std::string> &extensions) = 0;
64 virtual void sendExit() = 0;
65 virtual bool receive(std::map<std::string, std::string> &extensions, std::ostream *strm =
nullptr) = 0;
67 virtual Socket * getSocket()
72 virtual bool isConnected()
74 if (_mySock)
return _mySock->isConnected();
78 virtual void setOutputStream(std::ostream *strm)
82 virtual std::ostream * getOutputStream()
87 virtual void brokenPipe()
92 virtual unsigned int getRecvChunkSize() = 0;
93 virtual unsigned int getSendChunkSize() = 0;
95 void dump(std::ostream &strm)
const override;