38 lines
1.0 KiB
Go
38 lines
1.0 KiB
Go
package service
|
|
|
|
import (
|
|
"context"
|
|
"kontor-api-gin/internal/models"
|
|
"kontor-api-gin/internal/repository"
|
|
"log/slog"
|
|
)
|
|
|
|
type MediaFileService struct {
|
|
repository *repository.MediaFileRepository
|
|
}
|
|
|
|
func NewMediaFileService(repo *repository.MediaFileRepository) *MediaFileService {
|
|
service := &MediaFileService{repository: repo}
|
|
return service
|
|
}
|
|
|
|
func (service *MediaFileService) List(context context.Context) ([]models.MediaFile, error) {
|
|
slog.Info("MediaFileService#List")
|
|
return service.repository.FindAll(context)
|
|
}
|
|
|
|
func (service *MediaFileService) Get(context context.Context, id string) (*models.MediaFile, error) {
|
|
slog.Info("MediaFileService#Get")
|
|
return service.repository.GetById(context, id)
|
|
}
|
|
|
|
func (service *MediaFileService) Add(context context.Context, url string) (*models.MediaFile, error) {
|
|
slog.Info("MediaFileService#Add")
|
|
return service.repository.Add(context, url)
|
|
}
|
|
|
|
func (service *MediaFileService) Delete(context context.Context, id string) error {
|
|
slog.Info("MediaFileService#Delete")
|
|
return service.repository.Delete(context, id)
|
|
}
|