Export template source from be30143a326d5d7d7b0cbabea5bc5ac0301ef5b9:quixos-instance/interfaces/event-subscription
This commit is contained in:
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"monorepoCommit": "be30143a326d5d7d7b0cbabea5bc5ac0301ef5b9",
|
||||||
|
"sourcePath": "quixos-instance/interfaces/event-subscription"
|
||||||
|
}
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
import interface EventStream;
|
||||||
|
import interface EventHandler;
|
||||||
|
type StartPosition = variant id "org.quixos.events:start@1" {
|
||||||
|
future id "events:start:future" : unit;
|
||||||
|
retained id "events:start:retained" : unit;
|
||||||
|
afterCursor id "events:start:after" : string;
|
||||||
|
};
|
||||||
|
interface EventSubscription<value Payload,value Parameters> id "interface:org.quixos.events:subscription" revision "interface:org.quixos.events:subscription@1" {
|
||||||
|
operation attach id "events:attach" : record {source:interface-ref<EventStream<Payload>>;handler:interface-ref<EventHandler<Payload,Parameters>>;parameters:Parameters;start:StartPosition;} -> unit {
|
||||||
|
call id "events:attach:call" execution transaction;
|
||||||
|
}
|
||||||
|
queryable value status id "events:status" : record {status:string;generation:uint64;cursor:uint64;failure:optional<record {publication:string;code:string;message:string;}>;} {
|
||||||
|
get id "events:status:get" execution snapshot;
|
||||||
|
}
|
||||||
|
operation pause id "events:pause" : unit -> unit {call id "events:pause:call" execution transaction;}
|
||||||
|
operation resume id "events:resume" : unit -> unit {call id "events:resume:call" execution transaction;}
|
||||||
|
operation retire id "events:retire" : unit -> unit {call id "events:retire:call" execution transaction;}
|
||||||
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
quixos-lock version 1 {
|
||||||
|
quixos source { repository "https://gitea-external.egads.tutti.syntaxblitz.net/quixos/quixos.git"; commit "be30143a326d5d7d7b0cbabea5bc5ac0301ef5b9"; }
|
||||||
|
interface EventStream source { repository "https://repos.quixos.org/quixos-studio/interface-event-stream.git"; commit "5d9409557059ca2a3247af080a33516985916f66"; }
|
||||||
|
interface EventHandler source { repository "https://repos.quixos.org/quixos-studio/interface-event-handler.git"; commit "a57f8a5f4636228e63feeb83d4809a9f58367d78"; }
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user