diff --git a/go/seats/containerimageregistry/contract.go b/go/seats/containerimageregistry/contract.go index d14c33e..c18b82c 100644 --- a/go/seats/containerimageregistry/contract.go +++ b/go/seats/containerimageregistry/contract.go @@ -29,6 +29,16 @@ const ( EventReleased = "released" ) +// Verbs is every verb the seat serves, in its definition's order: a new copy each call. +func Verbs() []string { + return []string{VerbPublish, VerbPublishPart, VerbVersions, VerbRemove, VerbMirror, VerbTags, VerbHold, VerbRelease} +} + +// Events is every event published on the seat's subject: a new copy each call. +func Events() []string { + return []string{EventPublished, EventRefused, EventRemoved, EventHeld, EventReleased} +} + // Family is where the seat's events are kept. const ( Family = "container-image-registry.events" diff --git a/go/seats/gopackageregistry/contract.go b/go/seats/gopackageregistry/contract.go index 39f58cf..5b3fb87 100644 --- a/go/seats/gopackageregistry/contract.go +++ b/go/seats/gopackageregistry/contract.go @@ -23,6 +23,16 @@ const ( EventRemoved = "removed" ) +// Verbs is every verb the seat serves, in its definition's order: a new copy each call. +func Verbs() []string { + return []string{VerbPublish, VerbPublishPart, VerbVersions, VerbRemove} +} + +// Events is every event published on the seat's subject: a new copy each call. +func Events() []string { + return []string{EventPublished, EventRefused, EventRemoved} +} + // Family is where the seat's events are kept. const ( Family = "go-package-registry.events" diff --git a/go/seats/meshbroker/contract.go b/go/seats/meshbroker/contract.go index 46907d3..2a95c36 100644 --- a/go/seats/meshbroker/contract.go +++ b/go/seats/meshbroker/contract.go @@ -29,6 +29,16 @@ const ( EventDropped = "dropped" ) +// Verbs is every verb the seat serves, in its definition's order: a new copy each call. +func Verbs() []string { + return []string{VerbList, VerbShow, VerbCheck, VerbOrphans, VerbCreate, VerbApply, VerbRecreate, VerbDrop} +} + +// Events is every event published on the seat's subject: a new copy each call. +func Events() []string { + return []string{EventCreated, EventRefused, EventDrifted, EventDriftCleared, EventFull, EventFullCleared, EventOrphaned, EventRecreated, EventDropped} +} + // Family is where the seat's events are kept. const ( Family = "mesh-broker.events" diff --git a/go/seats/meshconfig/contract.go b/go/seats/meshconfig/contract.go index ff82d22..207bf63 100644 --- a/go/seats/meshconfig/contract.go +++ b/go/seats/meshconfig/contract.go @@ -11,6 +11,11 @@ const ( VerbRenames = "renames" ) +// Verbs is every verb the seat serves, in its definition's order: a new copy each call. +func Verbs() []string { + return []string{VerbConfig, VerbRenames} +} + // The holder's own events, listed beside the seat and published under the holder's subjects (ADR 0620 §2). const ( HolderEventConfigChanged = "config-changed" diff --git a/go/seats/meshdeliverychecker/contract.go b/go/seats/meshdeliverychecker/contract.go index da03e1a..6f881a7 100644 --- a/go/seats/meshdeliverychecker/contract.go +++ b/go/seats/meshdeliverychecker/contract.go @@ -12,6 +12,11 @@ const ( VerbTryEnd = "try-end" ) +// Verbs is every verb the seat serves, in its definition's order: a new copy each call. +func Verbs() []string { + return []string{VerbTry, VerbTryRead, VerbTryEnd} +} + // The holder's own events, listed beside the seat and published under the holder's subjects (ADR 0620 §2). const ( HolderEventVerdict = "verdict" diff --git a/go/seats/meshvault/contract.go b/go/seats/meshvault/contract.go index b0231b3..bf04ecc 100644 --- a/go/seats/meshvault/contract.go +++ b/go/seats/meshvault/contract.go @@ -24,6 +24,11 @@ const ( VerbRetire = "retire" ) +// Verbs is every verb the seat serves, in its definition's order: a new copy each call. +func Verbs() []string { + return []string{VerbGet, VerbSecretAsk, VerbIssued, VerbRotate, VerbMoveIn, VerbNodeKey, VerbOwn, VerbIssueAccount, VerbSign, VerbEnrolmentToken, VerbNodeAccount, VerbRotateNode, VerbNodeAccountConfirm, VerbAbandon, VerbRetire} +} + // The holder's own events, listed beside the seat and published under the holder's subjects (ADR 0620 §2). const ( HolderEventProvisioned = "provisioned" diff --git a/go/seats/npmpackageregistry/contract.go b/go/seats/npmpackageregistry/contract.go index 690946c..5489417 100644 --- a/go/seats/npmpackageregistry/contract.go +++ b/go/seats/npmpackageregistry/contract.go @@ -23,6 +23,16 @@ const ( EventRemoved = "removed" ) +// Verbs is every verb the seat serves, in its definition's order: a new copy each call. +func Verbs() []string { + return []string{VerbPublish, VerbPublishPart, VerbVersions, VerbRemove} +} + +// Events is every event published on the seat's subject: a new copy each call. +func Events() []string { + return []string{EventPublished, EventRefused, EventRemoved} +} + // Family is where the seat's events are kept. const ( Family = "npm-package-registry.events" diff --git a/go/seats/ociartifactregistry/contract.go b/go/seats/ociartifactregistry/contract.go index e602f28..9042e7e 100644 --- a/go/seats/ociartifactregistry/contract.go +++ b/go/seats/ociartifactregistry/contract.go @@ -27,6 +27,16 @@ const ( EventReleased = "released" ) +// Verbs is every verb the seat serves, in its definition's order: a new copy each call. +func Verbs() []string { + return []string{VerbPublish, VerbPublishPart, VerbVersions, VerbRemove, VerbHold, VerbRelease} +} + +// Events is every event published on the seat's subject: a new copy each call. +func Events() []string { + return []string{EventPublished, EventRefused, EventRemoved, EventHeld, EventReleased} +} + // Family is where the seat's events are kept. const ( Family = "oci-artifact-registry.events" diff --git a/go/seats/operatorchannel/contract.go b/go/seats/operatorchannel/contract.go index 49fdc1e..86a4786 100644 --- a/go/seats/operatorchannel/contract.go +++ b/go/seats/operatorchannel/contract.go @@ -24,6 +24,16 @@ const ( EventDecided = "decided" ) +// Verbs is every verb the seat serves, in its definition's order: a new copy each call. +func Verbs() []string { + return []string{VerbOpen, VerbHistory, VerbNotify, VerbTell, VerbAsks} +} + +// Events is every event published on the seat's subject: a new copy each call. +func Events() []string { + return []string{EventDecided} +} + // Family is where the seat's events are kept. const ( Family = "operator-channel.decided"