X-Git-Url: http://git.tdb.fi/?p=libs%2Fnet.git;a=blobdiff_plain;f=source%2Fcommunicator.h;h=0aa152cd6c803e37410bc641abeb17f0d5748a3f;hp=4bd5409c72587dfc9dbe9b98e43e04b0bbdf5d27;hb=4696a776e2875697ea0d6a733609dd9c37918971;hpb=65b029e8334d4dfc9a6161fc04740b03d56a8e2f diff --git a/source/communicator.h b/source/communicator.h index 4bd5409..0aa152c 100644 --- a/source/communicator.h +++ b/source/communicator.h @@ -7,6 +7,14 @@ namespace Msp { namespace Net { +class sequence_error: public std::logic_error +{ +public: + sequence_error(const std::string &w): std::logic_error(w) { } + virtual ~sequence_error() throw() { } +}; + + class Communicator { public: @@ -34,7 +42,7 @@ public: void send(const P &pkt) { if(handshake_status!=2) - throw InvalidState("Handshaking is not done"); + throw sequence_error("handshaking not done"); unsigned size = protocol.assemble(pkt, out_buf, buf_size); socket.write(out_buf, size); }