Documentation
¶
Overview ¶
Package server exposes the authenticated Integration and DeviceSession v1 runtime.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Config ¶
type Config struct {
Store sessionstore.Store
Issuer auth.Issuer
Verifier auth.Verifier
Integration integrationv1.Document
RequestIdentity RequestIdentity
Readiness func(context.Context) error
LeaseDuration time.Duration
Heartbeat time.Duration
StreamDuration time.Duration
StreamHeartbeat time.Duration
StreamWriteTimeout time.Duration
}
type DeviceExecutor ¶
type DeviceExecutor interface {
FrameProducer
Execute(context.Context, string, json.RawMessage) error
}
type DriverExecutor ¶
func (DriverExecutor) CaptureFrame ¶
func (executor DriverExecutor) CaptureFrame(ctx context.Context) (Frame, error)
func (DriverExecutor) Execute ¶
func (executor DriverExecutor) Execute(ctx context.Context, command string, payload json.RawMessage) error
type RequestIdentity ¶
type RuntimeConfig ¶
type Worker ¶
type Worker struct {
NodeLease sessionstore.NodeLease
Store WorkerStore
Executors map[string]DeviceExecutor
PollInterval time.Duration
ClaimDuration time.Duration
ExecutionTimeout time.Duration
Now func() time.Time
}
type WorkerStore ¶
type WorkerStore interface {
ClaimFrame(context.Context, sessionstore.NodeLease, time.Duration) (sessionstore.FrameWork, error)
CompleteFrame(context.Context, sessionstore.FrameWork, sessionstore.FrameData) error
FailFrame(context.Context, sessionstore.FrameWork, string, bool, string) error
ClaimInput(context.Context, sessionstore.NodeLease, time.Duration) (sessionstore.InputWork, error)
StartInput(context.Context, sessionstore.InputWork) error
CompleteInput(context.Context, sessionstore.InputWork, string, time.Duration, *sessionstore.ExecutionFailure) error
WaitInputActive(context.Context, sessionstore.InputWork, time.Duration) (bool, error)
WaitForWork(context.Context, string, time.Duration) error
}
Click to show internal directories.
Click to hide internal directories.