/** * The a particular socket's connection failed * This function will call all substreams disconnected methods */ template <class ErrorCode> void connectionFailedCallback(const ASIOSocketWrapper* whichSocket, const ErrorCode &error) { unsigned int which=0; for (std::vector<ASIOSocketWrapper>::iterator i=mSockets.begin(),ie=mSockets.end(); i!=ie; ++i,++which) { if (&*i==whichSocket) break; } connectionFailedCallback(which==mSockets.size()?0:which,error.message()); }
/** * The connection failed to connect before any sockets had been established (ex: host not found) * This function will call all substreams disconnected methods */ template <class ErrorCode> void connectionFailedCallback(const ErrorCode& error) { connectionFailedCallback(error.message()); }
/** * The a particular socket's connection failed * This function will call all substreams disconnected methods */ template <class ErrorCode> void connectionFailedCallback(unsigned int whichSocket, const ErrorCode& error) { connectionFailedCallback(whichSocket,error.message()); }
void MultiplexedSocket::connectionFailedCallback(unsigned int whichSocket, const std::string& error) { connectionFailedCallback(error); //FIXME do something with the socket specifically that failed. }