package service

import (
	"context"
	"github.com/go-nunu/nunu-layout-advanced/internal/model"
	"github.com/go-nunu/nunu-layout-advanced/internal/repository"
)

type GameShieldUserIpService interface {
	GetGameShieldUserIp(ctx context.Context, id int64) (*model.GameShieldUserIp, error)
}

func NewGameShieldUserIpService(
	service *Service,
	gameShieldUserIpRepository repository.GameShieldUserIpRepository,
) GameShieldUserIpService {
	return &gameShieldUserIpService{
		Service:                    service,
		gameShieldUserIpRepository: gameShieldUserIpRepository,
	}
}

type gameShieldUserIpService struct {
	*Service
	gameShieldUserIpRepository repository.GameShieldUserIpRepository
}

func (s *gameShieldUserIpService) GetGameShieldUserIp(ctx context.Context, id int64) (*model.GameShieldUserIp, error) {
	return s.gameShieldUserIpRepository.GetGameShieldUserIp(ctx, id)
}
