package service

import (
	"context"
	"github.com/UpmeshLTD/urus-aio/service-template/config"
	"github.com/UpmeshLTD/urus-aio/service-template/domain/domain_a"
	"github.com/gin-gonic/gin"
)

//go:generate mockery --name=Service --case=snake
type Service interface {
	iHealthCheck
	iGRPC
}

type serviceImpl struct {
	config  config.Config
	domainA domain_a.Service
}

func NewService(
	config config.Config,
	domainA domain_a.Service,
) Service {
	return &serviceImpl{
		config:  config,
		domainA: domainA,
	}
}

func getCtx(c *gin.Context) context.Context {
	return c.Request.Context()
}
