diff options
| author | Felix Morgner <felix.morgner@gmail.com> | 2018-11-30 17:50:47 +0100 |
|---|---|---|
| committer | Felix Morgner <felix.morgner@gmail.com> | 2018-11-30 17:50:47 +0100 |
| commit | 9f266f1ed5f45d6c673eb7b3fe6276f73ac99252 (patch) | |
| tree | 6bd9bba8d8f9cf6c497cd07d4ebdef1cdaf6420f /src/control_connection.cpp | |
| parent | 3abece6f0a7edca476ee0c493f30dda8f8bcefd5 (diff) | |
| download | wanda-9f266f1ed5f45d6c673eb7b3fe6276f73ac99252.tar.xz wanda-9f266f1ed5f45d6c673eb7b3fe6276f73ac99252.zip | |
core: move state to connection
Diffstat (limited to 'src/control_connection.cpp')
| -rw-r--r-- | src/control_connection.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/control_connection.cpp b/src/control_connection.cpp index c06d489..b0d30d6 100644 --- a/src/control_connection.cpp +++ b/src/control_connection.cpp @@ -30,9 +30,9 @@ bool control_connection::remove(listener * listener) void control_connection::start() { - if (!m_running) + if (m_state == state::unknown) { - m_running = true; + m_state = state::fresh; perform_read(); } } @@ -77,6 +77,16 @@ void control_connection::close() m_listeners.clear(); } +void control_connection::update(state state) +{ + m_state = state; +} + +control_connection::state control_connection::current_state() const +{ + return m_state; +} + void control_connection::perform_read() { boost::asio::async_read_until(m_socket, m_in, '\n', [that = shared_from_this(), this](auto const &error, auto const length) { |
