Skip to content

Commit f474c39

Browse files
authored
Merge pull request #178 from c-jimenez/fix/status_notif
[chargepoint] Use asynchronous transmission of status notification
2 parents f123966 + e05e753 commit f474c39

File tree

1 file changed

+12
-14
lines changed

1 file changed

+12
-14
lines changed

src/chargepoint/status/StatusManager.cpp

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -144,24 +144,22 @@ bool StatusManager::updateConnectorStatus(unsigned int conn
144144
Connector* connector = m_connectors.getConnector(connector_id);
145145
if (connector)
146146
{
147+
std::lock_guard<std::mutex> lock(connector->mutex);
148+
147149
// Check if status has changed
148150
if (connector->status != status)
149151
{
150-
{
151-
std::lock_guard<std::mutex> lock(connector->mutex);
152-
153-
// Save new status
154-
connector->status = status;
155-
connector->status_timestamp = DateTime::now();
156-
connector->error_code = error_code;
157-
connector->info = info;
158-
connector->vendor_id = vendor_id;
159-
connector->vendor_error = vendor_error;
160-
m_connectors.saveConnector(connector->id);
161-
}
162-
163152
LOG_INFO << "Connector " << connector_id << " : " << ChargePointStatusHelper.toString(status);
164153

154+
// Save new status
155+
connector->status = status;
156+
connector->status_timestamp = DateTime::now();
157+
connector->error_code = error_code;
158+
connector->info = info;
159+
connector->vendor_id = vendor_id;
160+
connector->vendor_error = vendor_error;
161+
m_connectors.saveConnector(connector->id);
162+
165163
// Check registration status
166164
if (m_registration_status == RegistrationStatus::Accepted)
167165
{
@@ -170,7 +168,7 @@ bool StatusManager::updateConnectorStatus(unsigned int conn
170168
if (duration == std::chrono::seconds(0))
171169
{
172170
// Notify now
173-
statusNotificationProcess(connector_id);
171+
m_worker_pool.run<void>(std::bind(&StatusManager::statusNotificationProcess, this, connector_id));
174172
}
175173
else
176174
{

0 commit comments

Comments
 (0)