using Core.Blueprint.DAL.Infrastructure.Contracts; using Core.Blueprint.DAL.Service.Contracts; using Core.Blueprint.Domain.Dtos; using Serilog; namespace Core.Blueprint.DAL.Service { public class SampleImageService : ISampleImageService { private readonly ISampleImageRepository _sampleImageRepository; private readonly ILogger _logger; public SampleImageService(ISampleImageRepository sampleImageRepository, ILogger logger) { _sampleImageRepository = sampleImageRepository; _logger = logger; } public IAsyncEnumerable GetAllUrl() { try { _logger.Information("Starting to get the images urls list | Method: {method} | Class: {class}", nameof(GetAllUrl), nameof(SampleImageService)); var ret = _sampleImageRepository.GetAllImagesUrls(); _logger.Information("Finishing to get the images urls list | Method: {method} | Class: {class}", nameof(GetAllUrl), nameof(SampleImageService)); return ret; } catch (Exception ex) { _logger.Error(ex, "{error} | Method: {method} | Class: {class}", ex.Message, nameof(GetAllUrl), nameof(SampleImageService)); return default; } } public async Task GetFirstUrl() { try { _logger.Information("Starting to get the first image url | Method: {method} | Class: {class}", nameof(GetFirstUrl), nameof(SampleImageService)); var ret = await _sampleImageRepository.GetFirstImageUrl(); _logger.Information("Finishing to get the first image url | Method: {method} | Class: {class}", nameof(GetFirstUrl), nameof(SampleImageService)); return ret; } catch (Exception ex) { _logger.Error(ex, "{error} | Method: {method} | Class: {class}", ex.Message, nameof(GetFirstUrl), nameof(SampleImageService)); return default; } } public async Task GetUploadUrl() { try { _logger.Information("Starting to get the upload image url | Method: {method} | Class: {class}", nameof(GetUploadUrl), nameof(SampleImageService)); var ret = await _sampleImageRepository.GetUploadUrl(); _logger.Information("Finishing to get the upload image url | Method: {method} | Class: {class}", nameof(GetUploadUrl), nameof(SampleImageService)); return ret; } catch (Exception ex) { _logger.Error(ex, "{error} | Method: {method} | Class: {class}", ex.Message, nameof(GetUploadUrl), nameof(SampleImageService)); return default; } } } }