26 lines
619 B
Go
26 lines
619 B
Go
package biz
|
|
|
|
import (
|
|
"context"
|
|
)
|
|
|
|
// WebSocketRepo is a WebSocket repository interface.
|
|
type WebSocketRepo interface {
|
|
SendMessage(ctx context.Context, message []byte) error
|
|
}
|
|
|
|
// WebSocketUsecase is a WebSocket use case.
|
|
type WebSocketUsecase struct {
|
|
repo WebSocketRepo
|
|
}
|
|
|
|
// NewWebSocketUsecase new a WebSocket use case.
|
|
func NewWebSocketUsecase(repo WebSocketRepo) *WebSocketUsecase {
|
|
return &WebSocketUsecase{repo: repo}
|
|
}
|
|
|
|
// HandleMessage handles incoming WebSocket messages.
|
|
func (uc *WebSocketUsecase) HandleMessage(ctx context.Context, message []byte) error {
|
|
return uc.repo.SendMessage(ctx, message)
|
|
}
|