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 "Internal event [%] received for reader [%] in current state [%]\n",
46 getReader()->getName(),
47 getMonitoringState());
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);
71 mLogger->trace(
"Event ignored\n");
ObservableLocalReaderAdapter::InternalEvent InternalEvent