36 lines
943 B
Go
36 lines
943 B
Go
package site
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/gocql/gocql"
|
|
"go.uber.org/zap"
|
|
|
|
siteusecase "codeberg.org/mapleopentech/monorepo/cloud/maplepress-backend/internal/usecase/site"
|
|
)
|
|
|
|
// GetSiteService handles getting a single site
|
|
type GetSiteService interface {
|
|
GetSite(ctx context.Context, tenantID gocql.UUID, input *siteusecase.GetSiteInput) (*siteusecase.GetSiteOutput, error)
|
|
}
|
|
|
|
type getSiteService struct {
|
|
getUC *siteusecase.GetSiteUseCase
|
|
logger *zap.Logger
|
|
}
|
|
|
|
// NewGetSiteService creates a new GetSiteService
|
|
func NewGetSiteService(
|
|
getUC *siteusecase.GetSiteUseCase,
|
|
logger *zap.Logger,
|
|
) GetSiteService {
|
|
return &getSiteService{
|
|
getUC: getUC,
|
|
logger: logger.Named("get-site-service"),
|
|
}
|
|
}
|
|
|
|
// GetSite retrieves a site by ID
|
|
func (s *getSiteService) GetSite(ctx context.Context, tenantID gocql.UUID, input *siteusecase.GetSiteInput) (*siteusecase.GetSiteOutput, error) {
|
|
return s.getUC.Execute(ctx, tenantID, input)
|
|
}
|