Class TriggerHandlers

Class Documentation

class TriggerHandlers

HTTP handlers for trigger CRUD and SSE streaming.

Implements SOVD trigger endpoints:

  • POST /{entity}/triggers - create trigger

  • GET /{entity}/triggers - list triggers

  • GET /{entity}/triggers/{id} - get trigger

  • PUT /{entity}/triggers/{id} - update trigger

  • DELETE /{entity}/triggers/{id} - delete trigger

  • GET /{entity}/triggers/{id}/events - SSE stream

Public Functions

TriggerHandlers(HandlerContext &ctx, TriggerManager &trigger_mgr, std::shared_ptr<SSEClientTracker> client_tracker)
void handle_create(const httplib::Request &req, httplib::Response &res)

POST /{entity}/triggers - create trigger.

void handle_list(const httplib::Request &req, httplib::Response &res)

GET /{entity}/triggers - list all triggers for entity.

void handle_get(const httplib::Request &req, httplib::Response &res)

GET /{entity}/triggers/{id} - get single trigger.

void handle_update(const httplib::Request &req, httplib::Response &res)

PUT /{entity}/triggers/{id} - update trigger.

void handle_delete(const httplib::Request &req, httplib::Response &res)

DELETE /{entity}/triggers/{id} - delete trigger.

void handle_events(const httplib::Request &req, httplib::Response &res)

GET /{entity}/triggers/{id}/events - SSE event stream.

Public Static Functions

static nlohmann::json trigger_to_json(const TriggerInfo &info, const std::string &event_source)

Convert trigger info to JSON response.

static tl::expected<TriggerParsedResourceUri, std::string> parse_resource_uri(const std::string &resource)

Parse resource URI for triggers (includes areas in addition to apps/components/functions).