File tree Expand file tree Collapse file tree 1 file changed +18
-0
lines changed
Expand file tree Collapse file tree 1 file changed +18
-0
lines changed Original file line number Diff line number Diff line change @@ -338,10 +338,28 @@ type OCRAttributedOnchainSignature struct {
338338type TriggerExecutable interface {
339339 RegisterTrigger (ctx context.Context , request TriggerRegistrationRequest ) (<- chan TriggerResponse , error )
340340 UnregisterTrigger (ctx context.Context , request TriggerRegistrationRequest ) error
341+ AckEvent (ctx context.Context , triggerId string , eventId string ) error
342+ }
343+
344+ type BaseTriggerCapability struct {
345+ /*
346+ Keeps track of workflow registrations (similar to LLO streams trigger).
347+ Handles retransmits based on T_retransmit and T_max.
348+ Persists pending events in the DB to be resilient to node restarts.
349+ */
350+ }
351+
352+ func (* BaseTriggerCapability ) deliverEvent (event * TriggerEvent , workflowIDs []string ) error {
353+ /*
354+ Base Trigger Capability can interact with the Don2Don layer (in the remote capability setting)
355+ as well as directly with a consumer (in the local setting).
356+ */
357+ return nil // only when the event is successfully persisted and ready to be reliably delivered
341358}
342359
343360// TriggerCapability interface needs to be implemented by all trigger capabilities.
344361type TriggerCapability interface {
362+ BaseTriggerCapability
345363 BaseCapability
346364 TriggerExecutable
347365}
You can’t perform that action at this time.
0 commit comments