SocketError :: added ability to throw specific code