Documentation
¶
Overview ¶
Package compensation provides HTTP handlers for compensation operations.
Index ¶
- type CompensateHandler
- func (h *CompensateHandler) HandleCompensateActivity(w http.ResponseWriter, r *http.Request)
- func (h *CompensateHandler) HandleGetCompensationHistory(w http.ResponseWriter, r *http.Request)
- func (h *CompensateHandler) HandleGetCompensationRecord(w http.ResponseWriter, r *http.Request)
- func (h *CompensateHandler) HandleListCompensations(w http.ResponseWriter, r *http.Request)
- func (h *CompensateHandler) HandleTriggerCompensation(w http.ResponseWriter, r *http.Request)
- func (h *CompensateHandler) RegisterRoutes(r chi.Router)
- type CompensationHistoryResponse
- type TriggerCompensationRequest
- type TriggerCompensationResponse
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CompensateHandler ¶
type CompensateHandler struct {
// contains filtered or unexported fields
}
CompensateHandler handles compensation-related API requests.
func NewCompensateHandler ¶
func NewCompensateHandler(temporalClient client.Client, repo repository.CompensationRepository) *CompensateHandler
NewCompensateHandler creates a new CompensateHandler.
func (*CompensateHandler) HandleCompensateActivity ¶
func (h *CompensateHandler) HandleCompensateActivity(w http.ResponseWriter, r *http.Request)
HandleCompensateActivity triggers compensation for a specific activity. POST /api/v1/workflows/:id/compensation/:activityName
func (*CompensateHandler) HandleGetCompensationHistory ¶
func (h *CompensateHandler) HandleGetCompensationHistory(w http.ResponseWriter, r *http.Request)
HandleGetCompensationHistory retrieves compensation history for a workflow. GET /api/v1/workflows/:id/compensation-history
func (*CompensateHandler) HandleGetCompensationRecord ¶
func (h *CompensateHandler) HandleGetCompensationRecord(w http.ResponseWriter, r *http.Request)
HandleGetCompensationRecord gets a specific compensation record. GET /api/v1/compensations/:id
func (*CompensateHandler) HandleListCompensations ¶
func (h *CompensateHandler) HandleListCompensations(w http.ResponseWriter, r *http.Request)
HandleListCompensations lists compensation records with filtering. GET /api/v1/compensations
func (*CompensateHandler) HandleTriggerCompensation ¶
func (h *CompensateHandler) HandleTriggerCompensation(w http.ResponseWriter, r *http.Request)
HandleTriggerCompensation triggers manual compensation for a workflow. POST /api/v1/workflows/:id/compensate
func (*CompensateHandler) RegisterRoutes ¶
func (h *CompensateHandler) RegisterRoutes(r chi.Router)
RegisterRoutes registers compensation routes on the given router.
type CompensationHistoryResponse ¶
type CompensationHistoryResponse struct {
WorkflowID string `json:"workflowId"`
Records []repository.CompensationRecord `json:"records"`
Summary *repository.CompensationSummary `json:"summary,omitempty"`
}
CompensationHistoryResponse is the response for compensation history.
type TriggerCompensationRequest ¶
type TriggerCompensationRequest struct {
Reason string `json:"reason,omitempty"`
ActivityNames []string `json:"activityNames,omitempty"` // If empty, compensate all
Metadata map[string]string `json:"metadata,omitempty"`
}
TriggerCompensationRequest is the request body for triggering compensation.
type TriggerCompensationResponse ¶
type TriggerCompensationResponse struct {
Status string `json:"status"`
Message string `json:"message"`
RequestID string `json:"requestId,omitempty"`
}
TriggerCompensationResponse is the response for triggering compensation.