| 181 | } |
| 182 | |
| 183 | void process_timeout() { |
| 184 | proton::timestamp deadline = last_read + read_timeout; |
| 185 | proton::timestamp now = proton::timestamp::now(); |
| 186 | if (now >= deadline) { |
| 187 | receiver.close(); |
| 188 | closed = true; |
| 189 | receiver.connection().close(); |
| 190 | if (message_count) |
| 191 | do_next_sequence(); |
| 192 | else |
| 193 | std::cout << "Done. No more messages." << std::endl; |
| 194 | } else { |
| 195 | proton::duration next = deadline - now; |
| 196 | receiver.work_queue().schedule(next, [this]() { this->process_timeout(); }); |
| 197 | } |
| 198 | } |
| 199 | }; |
| 200 | |
| 201 |
no test coverage detected