Documentation
¶
Overview ¶
Package event is the compatibility facade over the event kernel packages: the value model (model), the declaration/compilation layer (catalog), the processing contracts (processing), and the dedup filter kept here. New code should import the owning package directly; the aliases keep the existing declaration and call sites compiling unchanged.
Index ¶
Constants ¶
const ( DefaultBufferSize = catalog.DefaultBufferSize MaxBufferSize = catalog.MaxBufferSize )
const ( ParamString = catalog.ParamString ParamEnum = catalog.ParamEnum ParamMulti = catalog.ParamMulti ParamBool = catalog.ParamBool ParamInt = catalog.ParamInt SubTypeEvent = catalog.SubTypeEvent SubTypeCallback = catalog.SubTypeCallback )
Variables ¶
This section is empty.
Functions ¶
func SanitizeAppID ¶
SanitizeAppID replaces ".." / path separators / NUL with "_" to guard filepath.Join; empty/dot-only collapses to "_".
Types ¶
type APIClient ¶
type APIClient = processing.APIClient
APIClient is the narrow API surface handed to domain hooks; see processing.APIClient for the contract.
type DedupFilter ¶
type DedupFilter struct {
// contains filtered or unexported fields
}
DedupFilter: seen map is sole authority; ring only bounds map size via overflow eviction.
func NewDedupFilter ¶
func NewDedupFilter() *DedupFilter
func NewDedupFilterWithSize ¶
func NewDedupFilterWithSize(ringSize int, ttl time.Duration) *DedupFilter
func (*DedupFilter) IsDuplicate ¶
func (d *DedupFilter) IsDuplicate(eventID string) bool
type KeyDefinition ¶
type KeyDefinition = catalog.KeyDefinition
type ParamValue ¶
type ParamValue = catalog.ParamValue
type ProcessFunc ¶
type ProcessFunc = catalog.ProcessFunc
type RawEvent ¶
RawEvent is the canonical event fact carrier; see model.Event for the field contracts.
type SchemaSpec ¶
type SchemaSpec = catalog.SchemaSpec
type SubscriptionType ¶ added in v1.0.55
type SubscriptionType = catalog.SubscriptionType
Directories
¶
| Path | Synopsis |
|---|---|
|
adapter
|
|
|
lark/websocket
Package websocket adapts the platform WebSocket connection into a pluggable event source (separate package to keep business registrations free of SDK transitive deps).
|
Package websocket adapts the platform WebSocket connection into a pluggable event source (separate package to keep business registrations free of SDK transitive deps). |
|
localbus/busctl
Package busctl is the wire-level control client for the event bus daemon.
|
Package busctl is the wire-level control client for the event bus daemon. |
|
localbus/busdiscover
Package busdiscover enumerates live bus daemons via per-AppID PID files protected by a process-lifetime advisory lock.
|
Package busdiscover enumerates live bus daemons via per-AppID PID files protected by a process-lifetime advisory lock. |
|
localbus/protocol
Package protocol defines the newline-delimited JSON wire format used over IPC.
|
Package protocol defines the newline-delimited JSON wire format used over IPC. |
|
localbus/transport
Package transport: Unix sockets on POSIX, named pipes on Windows.
|
Package transport: Unix sockets on POSIX, named pipes on Windows. |
|
application
|
|
|
consume
Package consume is the consume use case: it turns a request plus a compiled catalog entry into one immutable decision, renders that decision for dry-run, and executes the very same decision for a real run.
|
Package consume is the consume use case: it turns a request plus a compiled catalog entry into one immutable decision, renders that decision for dry-run, and executes the very same decision for a real run. |
|
Package bus implements the per-AppID event-bus daemon; lifecycle is driven by consumer presence (idle timeout) and explicit shutdown.
|
Package bus implements the per-AppID event-bus daemon; lifecycle is driven by consumer presence (idle timeout) and explicit shutdown. |
|
Package catalog owns the EventKey declaration types and compiles them into a validated, immutable snapshot.
|
Package catalog owns the EventKey declaration types and compiles them into a validated, immutable snapshot. |
|
Package consume drives the consume-side half of the events pipeline.
|
Package consume drives the consume-side half of the events pipeline. |
|
Package model holds the pure value types of the event kernel.
|
Package model holds the pure value types of the event kernel. |
|
Package processing defines how a domain processor's outcome is interpreted by the consume pipeline: emit exactly what the key's schema declares, or drop with a stated reason — never leak an undeclared shape to stdout.
|
Package processing defines how a domain processor's outcome is interpreted by the consume pipeline: emit exactly what the key's schema declares, or drop with a stated reason — never leak an undeclared shape to stdout. |
|
Package schemas derives JSON Schema fragments from Go types via reflection.
|
Package schemas derives JSON Schema fragments from Go types via reflection. |
|
Package testutil holds test-only helpers shared across event subsystem tests.
|
Package testutil holds test-only helpers shared across event subsystem tests. |