Cleanup entity creation

This commit is contained in:
michal.szwaj 2018-04-06 20:33:27 +02:00 committed by Huan Truong
parent cc062f57e1
commit 84de27cc02
2 changed files with 38 additions and 40 deletions

View File

@ -48,7 +48,6 @@ public:
private: private:
using std::enable_shared_from_this<App>::shared_from_this; using std::enable_shared_from_this<App>::shared_from_this;
void enumerateDevices(); void enumerateDevices();
void waitForDevice(); void waitForDevice();
void aoapDeviceHandler(aasdk::usb::DeviceHandle deviceHandle); void aoapDeviceHandler(aasdk::usb::DeviceHandle deviceHandle);

View File

@ -54,8 +54,13 @@ void App::waitForUSBDevice()
void App::start(aasdk::tcp::ITCPEndpoint::SocketPointer socket) void App::start(aasdk::tcp::ITCPEndpoint::SocketPointer socket)
{ {
strand_.dispatch([this, self = this->shared_from_this(), socket = std::move(socket)]() mutable { strand_.dispatch([this, self = this->shared_from_this(), socket = std::move(socket)]() mutable {
if(androidAutoEntity_ == nullptr) if(androidAutoEntity_ != nullptr)
{ {
tcpWrapper_.close(*socket);
OPENAUTO_LOG(warning) << "[App] android auto entity is still running.";
return;
}
try try
{ {
usbHub_->cancel(); usbHub_->cancel();
@ -72,12 +77,6 @@ void App::start(aasdk::tcp::ITCPEndpoint::SocketPointer socket)
androidAutoEntity_.reset(); androidAutoEntity_.reset();
this->waitForDevice(); this->waitForDevice();
} }
}
else
{
tcpWrapper_.close(*socket);
OPENAUTO_LOG(warning) << "[App] android auto entity is still running.";
}
}); });
} }
@ -91,6 +90,7 @@ void App::stop()
if(androidAutoEntity_ != nullptr) if(androidAutoEntity_ != nullptr)
{ {
androidAutoEntity_->stop(); androidAutoEntity_->stop();
androidAutoEntity_.reset();
} }
}); });
} }
@ -103,8 +103,12 @@ void App::aoapDeviceHandler(aasdk::usb::DeviceHandle deviceHandle)
OPENAUTO_LOG(info) << "[CS] Ran USB Plug script."; OPENAUTO_LOG(info) << "[CS] Ran USB Plug script.";
#endif #endif
if(androidAutoEntity_ == nullptr) if(androidAutoEntity_ != nullptr)
{ {
OPENAUTO_LOG(warning) << "[App] android auto entity is still running.";
return;
}
try try
{ {
connectedAccessoriesEnumerator_->cancel(); connectedAccessoriesEnumerator_->cancel();
@ -121,11 +125,6 @@ void App::aoapDeviceHandler(aasdk::usb::DeviceHandle deviceHandle)
this->waitForDevice(); this->waitForDevice();
} }
} }
else
{
OPENAUTO_LOG(warning) << "[App] android auto entity is still running.";
}
}
void App::enumerateDevices() void App::enumerateDevices()
{ {