prf::net::CoapServiceTaskRunner class final

Generic task runner that keeps CoAP UDP service active.

This runner contains transport-level task policy only. It waits for lwIP readiness, starts UDP CoAP service, and retries on failure. Endpoint routing and payload handling are provided separately by prf::coap::Server and higher-level control services.

Constructors, destructors, conversion operators

CoapServiceTaskRunner(CoapService& coap_service, uint16_t port, prf::system::ITaskHeartbeatSink* task_heartbeat_sink = nullptr, prf::system::TaskHealthTaskId task_id = prf::system::TaskHealthTaskId::Coap)
Constructs CoAP service task runner.

Public functions

void run()
Runs CoAP service task loop forever.

Function documentation

prf::net::CoapServiceTaskRunner::CoapServiceTaskRunner(CoapService& coap_service, uint16_t port, prf::system::ITaskHeartbeatSink* task_heartbeat_sink = nullptr, prf::system::TaskHealthTaskId task_id = prf::system::TaskHealthTaskId::Coap)

Constructs CoAP service task runner.

Parameters
coap_service UDP CoAP transport service implementation.
port UDP listening port.
task_heartbeat_sink
task_id

void prf::net::CoapServiceTaskRunner::run()

Runs CoAP service task loop forever.

The loop blocks until lwIP runtime is ready, then repeatedly ensures that CoAP service is running. On start failure it applies bounded retry delay. This method never returns.