Initial project snapshot
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
package sessionbroker
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
workercontracts "github.com/example/remote-access-platform/backend/pkg/contracts/worker"
|
||||
)
|
||||
|
||||
type WorkerOrchestrator interface {
|
||||
Reserve(ctx context.Context, request workercontracts.AttachRequest) (*workercontracts.WorkerLease, error)
|
||||
GetSessionLease(ctx context.Context, sessionID string) (*workercontracts.WorkerLease, error)
|
||||
ReleaseSessionLease(ctx context.Context, sessionID string) error
|
||||
PrepareAttachment(ctx context.Context, session RemoteSession, attachment SessionAttachment, runtimeMetadata map[string]any) error
|
||||
NotifyDetachment(ctx context.Context, session RemoteSession, attachment SessionAttachment) error
|
||||
TerminateRemoteSession(ctx context.Context, sessionID, attachmentID string) error
|
||||
ValidateSessionRuntime(ctx context.Context, sessionID, workerID string) (bool, string, error)
|
||||
}
|
||||
Reference in New Issue
Block a user