@@ -363,43 +363,33 @@ bool StatusManager::handleMessage(const ocpp::messages::ChangeAvailabilityReq& r
363363 unsigned int connector_id = request.connectorId ;
364364 if (m_connectors.isValid (connector_id))
365365 {
366- // In the case the ChangeAvailability.req contains ConnectorId = 0, the status change applies to the Charge Point and all Connectors.
367- if (connector_id == 0 )
368- {
369- for (unsigned int i=0 ;i <= m_connectors.getCount ();i++)
366+ // Notify request
367+ response.status = m_events_handler.changeAvailabilityRequested (connector_id, request.type );
368+ if (response.status == AvailabilityStatus::Accepted)
369+ {
370+ // Update status
371+ ChargePointStatus status = ChargePointStatus::Unavailable;
372+ if (request.type == AvailabilityType::Operative)
373+ {
374+ status = ChargePointStatus::Available;
375+ }
376+
377+ // In the case the ChangeAvailability.req contains ConnectorId = 0, the status change applies to the Charge Point and all Connectors.
378+ if (connector_id == 0 )
370379 {
371- response.status = m_events_handler.changeAvailabilityRequested (i, request.type );
372- if (response.status == AvailabilityStatus::Accepted)
380+ for (unsigned int i = 0 ; i <= m_connectors.getCount (); i++)
373381 {
374- // Update status
375- ChargePointStatus status = ChargePointStatus::Unavailable;
376- if (request.type == AvailabilityType::Operative)
377- {
378- status = ChargePointStatus::Available;
379- }
380382 m_worker_pool.run <void >([this , i, status] { updateConnectorStatus (i, status); });
381383 }
382-
383- LOG_INFO << " Change availability " << AvailabilityStatusHelper.toString (response.status );
384384 }
385- }
386- else
387- {
388- // Notify request
389- response.status = m_events_handler.changeAvailabilityRequested (connector_id, request.type );
390- if (response.status == AvailabilityStatus::Accepted)
385+ else
391386 {
392- // Update status
393- ChargePointStatus status = ChargePointStatus::Unavailable;
394- if (request.type == AvailabilityType::Operative)
395- {
396- status = ChargePointStatus::Available;
397- }
398387 m_worker_pool.run <void >([this , connector_id, status] { updateConnectorStatus (connector_id, status); });
399388 }
400-
401- LOG_INFO << " Change availability " << AvailabilityStatusHelper.toString (response.status );
402389 }
390+
391+ LOG_INFO << " Change availability " << AvailabilityStatusHelper.toString (response.status );
392+
403393 ret = true ;
404394 }
405395 else
0 commit comments