github.com/angryronald/go-kit@v0.0.0-20240505173814-ff2bd9c79dbf/generic/http/client/client.log.service.go (about)

     1  package client
     2  
     3  import (
     4  	"context"
     5  
     6  	"github.com/angryronald/go-kit/generic/repository"
     7  	"github.com/google/uuid"
     8  )
     9  
    10  type ClientRequestLogService struct {
    11  	repository repository.ImmutableGenericRepositoryInterface
    12  }
    13  
    14  func (s *ClientRequestLogService) Add(ctx context.Context, clientRequestLog *ClientRequestLog) error {
    15  	var err error
    16  	clientRequestLog.ID, err = uuid.NewRandom()
    17  	if err != nil {
    18  		return err
    19  	}
    20  
    21  	if _, err = s.repository.Insert(ctx, clientRequestLog); err != nil {
    22  		return err
    23  	}
    24  
    25  	return nil
    26  }
    27  
    28  func NewClientRequestLogService(
    29  	repository repository.ImmutableGenericRepositoryInterface,
    30  ) ClientRequestLogServiceInterface {
    31  	return &ClientRequestLogService{
    32  		repository: repository,
    33  	}
    34  }