Files
Cyrene/backend/platform-bridge/internal/bridge/adapter.go
T

25 lines
666 B
Go

package bridge
import "context"
// PlatformAdapter is the interface every platform adapter must implement.
type PlatformAdapter interface {
PlatformName() string
// Message conversion.
ToUnified(rawMessage interface{}) (*UnifiedMessage, error)
FromUnified(response *UnifiedResponse) ([]PlatformMessage, error)
// Capabilities.
Capabilities() PlatformCapabilities
// Connection management.
Connect(ctx context.Context) error
Disconnect(ctx context.Context) error
IsConnected() bool
HealthCheck() error
}
// MessageHandler receives unified messages from adapters for processing.
type MessageHandler func(msg *UnifiedMessage) (*UnifiedResponse, error)