115 lines
4.4 KiB
C#
115 lines
4.4 KiB
C#
using Core.Blueprint.DAL.Infrastructure.Contracts;
|
|
using Core.Blueprint.DAL.Service.Contracts;
|
|
using Core.Blueprint.Domain.Entities;
|
|
using Serilog;
|
|
|
|
|
|
namespace Core.Blueprint.DAL.Service
|
|
{
|
|
//[LoggingAttribute]
|
|
public class SampleItemService : ISampleItemService
|
|
{
|
|
private readonly ILogger _logger;
|
|
private readonly IRepositoryIdentityBase<SampleItem> _repository;
|
|
public SampleItemService(ISampleItemRepository repository, ILogger logger)
|
|
{
|
|
_repository = repository;
|
|
_logger = logger;
|
|
}
|
|
|
|
//[LoggingAttribute] //Time of request, class name, class method... memory usage....
|
|
public virtual async ValueTask<SampleItem> CreateAsync(SampleItem entity)
|
|
{
|
|
try
|
|
{
|
|
_logger.Information("Starting to create the Sample item");
|
|
var ret = await _repository.CreateAsync(entity);
|
|
_logger.Information("Finishing to create the Sample item | Method: {method} | Class: {class}", nameof(CreateAsync), nameof(SampleItemService));
|
|
return ret;
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
|
|
_logger.Error(ex, "{error} | Method: {method} | Class: {class}", ex.Message, nameof(CreateAsync), nameof(SampleItemService));
|
|
return default;
|
|
}
|
|
|
|
}
|
|
|
|
public virtual async ValueTask<bool> DeleteAsync(string id)
|
|
{
|
|
try
|
|
{
|
|
_logger.Information("Starting to delete the Sample item | Method: {method} | Class: {class}", nameof(DeleteAsync), nameof(SampleItemService));
|
|
var ret = await _repository.DeleteAsync(id);
|
|
_logger.Information("Finishing to delete the Sample item | Method: {method} | Class: {class}", nameof(DeleteAsync), nameof(SampleItemService));
|
|
return ret;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
|
|
_logger.Error(ex, "{error} | Method: {method} | Class: {class}", ex.Message, nameof(DeleteAsync), nameof(SampleItemService));
|
|
return default;
|
|
}
|
|
|
|
}
|
|
|
|
public virtual async ValueTask<IEnumerable<SampleItem>> GetAllAsync()
|
|
{
|
|
try
|
|
{
|
|
_logger.Information("Starting to get all Sample item | Method: {method} | Class: {class}", nameof(GetAllAsync), nameof(SampleItemService));
|
|
var ret = await _repository.GetAllAsync();
|
|
_logger.Information("Finishing to get all Sample item | Method: {method} | Class: {class}", nameof(GetAllAsync), nameof(SampleItemService));
|
|
return ret;
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
|
|
_logger.Error(ex, "{error} | Method: {method} | Class: {class}", ex.Message, nameof(GetAllAsync), nameof(SampleItemService));
|
|
return default;
|
|
}
|
|
|
|
}
|
|
|
|
public virtual async ValueTask<SampleItem> GetByIdAsync(string id)
|
|
{
|
|
try
|
|
{
|
|
_logger.Information("Starting to get Sample item by id | Method: {method} | Class: {class}", nameof(GetByIdAsync), nameof(SampleItemService));
|
|
var ret = await _repository.GetByIdAsync(id);
|
|
_logger.Information("Finishing to get all Sample item | Method: {method} | Class: {class}", nameof(GetByIdAsync), nameof(SampleItemService));
|
|
return ret;
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
_logger.Error(ex, "{error} | Method: {method} | Class: {class}", ex.Message, nameof(GetByIdAsync), nameof(SampleItemService));
|
|
return default;
|
|
}
|
|
|
|
}
|
|
|
|
public virtual async Task<bool> UpdateAsync(string id, SampleItem entity)
|
|
{
|
|
try
|
|
{
|
|
_logger.Information("Starting to update Sample item | Method: {method} | Class: {class}", nameof(UpdateAsync), nameof(SampleItemService));
|
|
var ret = await _repository.UpdateAsync(id, entity);
|
|
_logger.Information("Finishing to update Sample item | Method: {method} | Class: {class}", nameof(UpdateAsync), nameof(SampleItemService));
|
|
return ret;
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
|
|
_logger.Error(ex, "{error} | Method: {method} | Class: {class}", ex.Message, nameof(UpdateAsync), nameof(SampleItemService));
|
|
return default;
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|