14#include "keyple/core/service/WaitForCardRemovalStateAdapter.hpp"
22WaitForCardRemovalStateAdapter::WaitForCardRemovalStateAdapter(
23 ObservableLocalReaderAdapter* reader,
24 std::shared_ptr<AbstractMonitoringJobAdapter> monitoringJob,
25 std::shared_ptr<ExecutorService> executorService)
26: AbstractObservableStateAdapter(
27 MonitoringState::WAIT_FOR_CARD_REMOVAL,
34WaitForCardRemovalStateAdapter::WaitForCardRemovalStateAdapter(
35 ObservableLocalReaderAdapter* reader)
36: WaitForCardRemovalStateAdapter(reader, nullptr, nullptr)
41WaitForCardRemovalStateAdapter::onEvent(
const InternalEvent event)
44 "[fsmState=%, reader=%] Processing internal event [type=%]\n",
46 getReader()->getName(),
51 case InternalEvent::CARD_REMOVED:
57 getReader()->processCardRemoved();
58 if (getReader()->getDetectionMode() == DetectionMode::REPEATING) {
59 switchState(MonitoringState::WAIT_FOR_CARD_INSERTION);
61 switchState(MonitoringState::WAIT_FOR_START_DETECTION);
65 case InternalEvent::STOP_DETECT:
66 getReader()->processCardRemoved();
67 switchState(MonitoringState::WAIT_FOR_START_DETECTION);
72 "[fsmState=%, reader=%] Internal event ignored\n",
74 getReader()->getName());
79 "[fsmState=%, reader=%] Internal event processed [type=%]\n",
81 getReader()->getName(),
ObservableLocalReaderAdapter::InternalEvent InternalEvent