-
Notifications
You must be signed in to change notification settings - Fork 380
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ability to dependency inject network layer. #54
Comments
Socket( void );
Socket::listen( port, bind_address, new_connection_callback );
Socket::connect( port, address, success_callback, error_callback );
Socket::write( ..., success_callback, error_callback );
Socket::read( ..., success_callback, error_callback );
Socket::set_option( name, value );
Socket::shutdown( void );
Socket::is_open( void );
Socket::is_closed( void );
static Socket::create( void ); Service::set_network_layer( TCPSocketFactory );
Service::set_network_layer( RS232SocketFactory );
etc... |
During this development please remove the io_service and buffer from the request. The Socket should contain all of the ASIO related items. Given we would have to place all runloop operations in the socket layer after this refactor. Might we want to give it a better name? Socket::schedule( work ); Maybe: Runloop runloop;
runloop.schedule( work ); |
This ticket is rising in priority. With this feature in place we could achieve a far greater set of tests to aid in the validation of the framework logic e.g. confirming WebSocketManager::parse/compose. |
Move all ASIO logic into the socket abstraction.
The text was updated successfully, but these errors were encountered: