refactor: Rename EmailPorifler to MessagingService
This commit is contained in:
@@ -1,11 +0,0 @@
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Infrastructure.Persistence;
|
||||
|
||||
/// <summary>
|
||||
/// Entity Framework Core DbContext for EmailProfiler.
|
||||
/// IMPORTANT: This context maps to a LEGACY database - NO schema modifications allowed!
|
||||
/// </summary>
|
||||
public class EmailProfilerDbContext(DbContextOptions<EmailProfilerDbContext> options) : DbContext(options)
|
||||
{
|
||||
}
|
||||
@@ -1,8 +1,8 @@
|
||||
using DigitalData.EmailProfiler.Application.EmailSending.Commands;
|
||||
using DigitalData.MessagingService.Application.EmailSending.Commands;
|
||||
using MediatR;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace DigitalData.EmailProfiler.API.Controllers;
|
||||
namespace DigitalData.MessagingService.API.Controllers;
|
||||
|
||||
/// <summary>
|
||||
/// Email sending API controller
|
||||
@@ -4,7 +4,7 @@
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
<Nullable>enable</Nullable>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
<UserSecretsId>dotnet-DigitalData.EmailProfiler.Service-e7ef6a9a-436f-48a1-b4f6-ec9381c8cb47</UserSecretsId>
|
||||
<UserSecretsId>dotnet-DigitalData.MessagingService.Service-e7ef6a9a-436f-48a1-b4f6-ec9381c8cb47</UserSecretsId>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
@@ -21,9 +21,9 @@
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\DigitalData.EmailProfiler.Application\DigitalData.EmailProfiler.Application.csproj" />
|
||||
<ProjectReference Include="..\DigitalData.EmailProfiler.Domain\DigitalData.EmailProfiler.Domain.csproj" />
|
||||
<ProjectReference Include="..\DigitalData.EmailProfiler.Infrastructure\DigitalData.EmailProfiler.Infrastructure.csproj" />
|
||||
<ProjectReference Include="..\DigitalData.MessagingService.Application\DigitalData.MessagingService.Application.csproj" />
|
||||
<ProjectReference Include="..\DigitalData.MessagingService.Domain\DigitalData.MessagingService.Domain.csproj" />
|
||||
<ProjectReference Include="..\DigitalData.MessagingService.Infrastructure\DigitalData.MessagingService.Infrastructure.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
@@ -1,8 +1,8 @@
|
||||
using System.Net;
|
||||
using System.Text.Json;
|
||||
using DigitalData.EmailProfiler.Domain.Exceptions;
|
||||
using DigitalData.MessagingService.Domain.Exceptions;
|
||||
|
||||
namespace DigitalData.EmailProfiler.API.Middleware;
|
||||
namespace DigitalData.MessagingService.API.Middleware;
|
||||
|
||||
/// <summary>
|
||||
/// Global exception handling middleware
|
||||
@@ -1,7 +1,7 @@
|
||||
using DigitalData.EmailProfiler.API.Middleware;
|
||||
using DigitalData.EmailProfiler.Application;
|
||||
using DigitalData.EmailProfiler.Application.Common.Dtos;
|
||||
using DigitalData.EmailProfiler.Infrastructure;
|
||||
using DigitalData.MessagingService.API.Middleware;
|
||||
using DigitalData.MessagingService.Application;
|
||||
using DigitalData.MessagingService.Application.Common.Dtos;
|
||||
using DigitalData.MessagingService.Infrastructure;
|
||||
using Serilog;
|
||||
|
||||
// Configure Serilog early
|
||||
@@ -16,7 +16,7 @@ Log.Logger = new LoggerConfiguration()
|
||||
|
||||
try
|
||||
{
|
||||
Log.Information("Starting EmailProfiler API");
|
||||
Log.Information("Starting MessagingService API");
|
||||
|
||||
var builder = WebApplication.CreateBuilder(args);
|
||||
|
||||
@@ -71,13 +71,13 @@ try
|
||||
|
||||
app.MapControllers();
|
||||
|
||||
Log.Information("EmailProfiler API started successfully");
|
||||
Log.Information("MessagingService API started successfully");
|
||||
|
||||
app.Run();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Log.Fatal(ex, "EmailProfiler API failed to start");
|
||||
Log.Fatal(ex, "MessagingService API failed to start");
|
||||
throw;
|
||||
}
|
||||
finally
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Application.Common.Dtos;
|
||||
namespace DigitalData.MessagingService.Application.Common.Dtos;
|
||||
|
||||
/// <summary>
|
||||
/// DTO for EmailAccount query results.
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Application.Common.Events;
|
||||
namespace DigitalData.MessagingService.Application.Common.Events;
|
||||
|
||||
public class OutgoingEmailEvent
|
||||
{
|
||||
@@ -1,6 +1,6 @@
|
||||
using MediatR;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Application.Common.Interfaces;
|
||||
namespace DigitalData.MessagingService.Application.Common.Interfaces;
|
||||
|
||||
/// <summary>
|
||||
/// Interface for publishing commands to a message broker (e.g., RabbitMQ)
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Application.Common.Interfaces;
|
||||
namespace DigitalData.MessagingService.Application.Common.Interfaces;
|
||||
|
||||
/// <summary>
|
||||
/// Email service interface for SMTP operations.
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Application.Common.Interfaces;
|
||||
namespace DigitalData.MessagingService.Application.Common.Interfaces;
|
||||
|
||||
/// <summary>
|
||||
/// Encryption service interface for password encryption.
|
||||
@@ -1,7 +1,7 @@
|
||||
using DigitalData.EmailProfiler.Application.Common.Events;
|
||||
using DigitalData.EmailProfiler.Application.EmailSending.Commands;
|
||||
using DigitalData.MessagingService.Application.Common.Events;
|
||||
using DigitalData.MessagingService.Application.EmailSending.Commands;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Application.Common.Interfaces;
|
||||
namespace DigitalData.MessagingService.Application.Common.Interfaces;
|
||||
|
||||
/// <summary>
|
||||
/// Email queue interface for outgoing emails.
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Application.Common.Interfaces;
|
||||
namespace DigitalData.MessagingService.Application.Common.Interfaces;
|
||||
|
||||
/// <summary>
|
||||
/// PDF processing service interface.
|
||||
@@ -1,6 +1,6 @@
|
||||
using System.Linq.Expressions;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Application.Common.Interfaces;
|
||||
namespace DigitalData.MessagingService.Application.Common.Interfaces;
|
||||
|
||||
/// <summary>
|
||||
/// Generic repository interface for CRUD operations.
|
||||
@@ -1,8 +1,8 @@
|
||||
using AutoMapper;
|
||||
using DigitalData.EmailProfiler.Application.Common.Events;
|
||||
using DigitalData.EmailProfiler.Application.EmailSending.Commands;
|
||||
using DigitalData.MessagingService.Application.Common.Events;
|
||||
using DigitalData.MessagingService.Application.EmailSending.Commands;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Application.Common.Mappings;
|
||||
namespace DigitalData.MessagingService.Application.Common.Mappings;
|
||||
|
||||
/// <summary>
|
||||
/// AutoMapper profile for Emails
|
||||
@@ -3,7 +3,7 @@ using FluentValidation;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Application;
|
||||
namespace DigitalData.MessagingService.Application;
|
||||
|
||||
/// <summary>
|
||||
/// Dependency injection configuration for Application layer.
|
||||
@@ -7,7 +7,7 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\DigitalData.EmailProfiler.Domain\DigitalData.EmailProfiler.Domain.csproj" />
|
||||
<ProjectReference Include="..\DigitalData.MessagingService.Domain\DigitalData.MessagingService.Domain.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
@@ -1,9 +1,9 @@
|
||||
using AutoMapper;
|
||||
using DigitalData.EmailProfiler.Application.Common.Events;
|
||||
using DigitalData.EmailProfiler.Application.Common.Interfaces;
|
||||
using DigitalData.MessagingService.Application.Common.Events;
|
||||
using DigitalData.MessagingService.Application.Common.Interfaces;
|
||||
using MediatR;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Application.EmailSending.Commands;
|
||||
namespace DigitalData.MessagingService.Application.EmailSending.Commands;
|
||||
|
||||
/// <summary>
|
||||
/// Command to send an email (enqueue to RabbitMQ)
|
||||
@@ -1,7 +1,7 @@
|
||||
using DigitalData.EmailProfiler.Application.EmailSending.Commands;
|
||||
using DigitalData.MessagingService.Application.EmailSending.Commands;
|
||||
using FluentValidation;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Application.EmailSending.Validators;
|
||||
namespace DigitalData.MessagingService.Application.EmailSending.Validators;
|
||||
|
||||
/// <summary>
|
||||
/// Validator for SendEmailCommand
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Domain.Common;
|
||||
namespace DigitalData.MessagingService.Domain.Common;
|
||||
|
||||
public abstract class BaseEntity
|
||||
{
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Domain.Common;
|
||||
namespace DigitalData.MessagingService.Domain.Common;
|
||||
|
||||
/// <summary>
|
||||
/// Domain-wide constants
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Domain.Common;
|
||||
namespace DigitalData.MessagingService.Domain.Common;
|
||||
|
||||
/// <summary>
|
||||
/// Marker interface for aggregate roots in DDD
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Domain.Common;
|
||||
namespace DigitalData.MessagingService.Domain.Common;
|
||||
|
||||
/// <summary>
|
||||
/// Base class for value objects that implement equality by value
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Domain.Enums;
|
||||
namespace DigitalData.MessagingService.Domain.Enums;
|
||||
|
||||
public enum AttachmentStatus
|
||||
{
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Domain.Enums;
|
||||
namespace DigitalData.MessagingService.Domain.Enums;
|
||||
|
||||
public enum AuthenticationType
|
||||
{
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Domain.Enums;
|
||||
namespace DigitalData.MessagingService.Domain.Enums;
|
||||
|
||||
public enum EmailStatus
|
||||
{
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Domain.Enums;
|
||||
namespace DigitalData.MessagingService.Domain.Enums;
|
||||
|
||||
public enum ErrorCode
|
||||
{
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Domain.Enums;
|
||||
namespace DigitalData.MessagingService.Domain.Enums;
|
||||
|
||||
public enum ProcessType
|
||||
{
|
||||
@@ -1,6 +1,6 @@
|
||||
using DigitalData.EmailProfiler.Domain.Enums;
|
||||
using DigitalData.MessagingService.Domain.Enums;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Domain.Exceptions;
|
||||
namespace DigitalData.MessagingService.Domain.Exceptions;
|
||||
|
||||
public class AttachmentProcessingException : DomainException
|
||||
{
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Domain.Exceptions;
|
||||
namespace DigitalData.MessagingService.Domain.Exceptions;
|
||||
|
||||
/// <summary>
|
||||
/// Exception thrown when OAuth2 authentication fails.
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Domain.Exceptions;
|
||||
namespace DigitalData.MessagingService.Domain.Exceptions;
|
||||
|
||||
/// <summary>
|
||||
/// Exception thrown when DMS (windream) is not available or not configured properly.
|
||||
@@ -1,6 +1,6 @@
|
||||
using DigitalData.EmailProfiler.Domain.Enums;
|
||||
using DigitalData.MessagingService.Domain.Enums;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Domain.Exceptions;
|
||||
namespace DigitalData.MessagingService.Domain.Exceptions;
|
||||
|
||||
public class DomainException : Exception
|
||||
{
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Domain.Exceptions;
|
||||
namespace DigitalData.MessagingService.Domain.Exceptions;
|
||||
|
||||
/// <summary>
|
||||
/// Exception thrown when a PDF file is invalid or corrupted.
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Domain.Exceptions;
|
||||
namespace DigitalData.MessagingService.Domain.Exceptions;
|
||||
|
||||
/// <summary>
|
||||
/// Exception thrown when a requested entity is not found.
|
||||
@@ -1,6 +1,6 @@
|
||||
using DigitalData.EmailProfiler.Domain.Enums;
|
||||
using DigitalData.MessagingService.Domain.Enums;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Domain.Exceptions;
|
||||
namespace DigitalData.MessagingService.Domain.Exceptions;
|
||||
|
||||
public class ValidationException : DomainException
|
||||
{
|
||||
@@ -1,6 +1,6 @@
|
||||
using DigitalData.EmailProfiler.Domain.ValueObjects;
|
||||
using DigitalData.MessagingService.Domain.ValueObjects;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Domain.Services;
|
||||
namespace DigitalData.MessagingService.Domain.Services;
|
||||
|
||||
public interface IMessageIdGenerator
|
||||
{
|
||||
@@ -1,8 +1,8 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using DigitalData.EmailProfiler.Domain.Common;
|
||||
using DigitalData.EmailProfiler.Domain.Exceptions;
|
||||
using DigitalData.MessagingService.Domain.Common;
|
||||
using DigitalData.MessagingService.Domain.Exceptions;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Domain.ValueObjects;
|
||||
namespace DigitalData.MessagingService.Domain.ValueObjects;
|
||||
|
||||
/// <summary>
|
||||
/// Value object representing an email address with validation
|
||||
@@ -1,8 +1,8 @@
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
using DigitalData.EmailProfiler.Domain.Common;
|
||||
using DigitalData.MessagingService.Domain.Common;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Domain.ValueObjects;
|
||||
namespace DigitalData.MessagingService.Domain.ValueObjects;
|
||||
|
||||
/// <summary>
|
||||
/// Value object representing a unique message identifier with hash generation
|
||||
@@ -1,13 +1,13 @@
|
||||
using DigitalData.EmailProfiler.Application.Common.Interfaces;
|
||||
using DigitalData.EmailProfiler.Infrastructure.Messaging;
|
||||
using DigitalData.EmailProfiler.Infrastructure.Queue;
|
||||
using DigitalData.EmailProfiler.Infrastructure.Services;
|
||||
using DigitalData.EmailProfiler.Infrastructure.Services.Background;
|
||||
using DigitalData.MessagingService.Application.Common.Interfaces;
|
||||
using DigitalData.MessagingService.Infrastructure.Messaging;
|
||||
using DigitalData.MessagingService.Infrastructure.Queue;
|
||||
using DigitalData.MessagingService.Infrastructure.Services;
|
||||
using DigitalData.MessagingService.Infrastructure.Services.Background;
|
||||
using Microsoft.AspNetCore.DataProtection;
|
||||
using Microsoft.Extensions.Configuration;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Infrastructure;
|
||||
namespace DigitalData.MessagingService.Infrastructure;
|
||||
|
||||
/// <summary>
|
||||
/// Dependency injection configuration for Infrastructure layer
|
||||
@@ -41,7 +41,7 @@ public static class DependencyInjection
|
||||
// --- Data Protection (for encryption) ---
|
||||
services.AddDataProtection()
|
||||
.PersistKeysToFileSystem(new DirectoryInfo(@"C:\ProgramData\EmailService\Keys"))
|
||||
.SetApplicationName("EmailProfiler");
|
||||
.SetApplicationName("MessagingService");
|
||||
|
||||
// Register Background Workers
|
||||
services.AddHostedService<AsyncInitWorker>();
|
||||
@@ -7,8 +7,8 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\DigitalData.EmailProfiler.Domain\DigitalData.EmailProfiler.Domain.csproj" />
|
||||
<ProjectReference Include="..\DigitalData.EmailProfiler.Application\DigitalData.EmailProfiler.Application.csproj" />
|
||||
<ProjectReference Include="..\DigitalData.MessagingService.Domain\DigitalData.MessagingService.Domain.csproj" />
|
||||
<ProjectReference Include="..\DigitalData.MessagingService.Application\DigitalData.MessagingService.Application.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
@@ -1,4 +1,4 @@
|
||||
namespace DigitalData.EmailProfiler.Infrastructure.Messaging;
|
||||
namespace DigitalData.MessagingService.Infrastructure.Messaging;
|
||||
|
||||
/// <summary>
|
||||
/// Configuration for RabbitMQ connection
|
||||
@@ -0,0 +1,11 @@
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace DigitalData.MessagingService.Infrastructure.Persistence;
|
||||
|
||||
/// <summary>
|
||||
/// Entity Framework Core DbContext for MessagingService.
|
||||
/// IMPORTANT: This context maps to a LEGACY database - NO schema modifications allowed!
|
||||
/// </summary>
|
||||
public class MessagingServiceDbContext(DbContextOptions<MessagingServiceDbContext> options) : DbContext(options)
|
||||
{
|
||||
}
|
||||
@@ -1,14 +1,14 @@
|
||||
using System.Text;
|
||||
using System.Text.Json;
|
||||
using DigitalData.EmailProfiler.Application.Common.Interfaces;
|
||||
using DigitalData.EmailProfiler.Infrastructure.Messaging;
|
||||
using DigitalData.MessagingService.Application.Common.Interfaces;
|
||||
using DigitalData.MessagingService.Infrastructure.Messaging;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Microsoft.Extensions.Options;
|
||||
using RabbitMQ.Client;
|
||||
using RabbitMQ.Client.Events;
|
||||
using DigitalData.EmailProfiler.Application.Common.Events;
|
||||
using DigitalData.MessagingService.Application.Common.Events;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Infrastructure.Queue;
|
||||
namespace DigitalData.MessagingService.Infrastructure.Queue;
|
||||
|
||||
/// <summary>
|
||||
/// RabbitMQ-based email queue implementation for outgoing emails.
|
||||
@@ -1,17 +1,17 @@
|
||||
using System.Linq.Expressions;
|
||||
using AutoMapper;
|
||||
using DigitalData.EmailProfiler.Application.Common.Interfaces;
|
||||
using DigitalData.EmailProfiler.Domain.Exceptions;
|
||||
using DigitalData.EmailProfiler.Infrastructure.Persistence;
|
||||
using DigitalData.MessagingService.Application.Common.Interfaces;
|
||||
using DigitalData.MessagingService.Domain.Exceptions;
|
||||
using DigitalData.MessagingService.Infrastructure.Persistence;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Infrastructure.Repositories;
|
||||
namespace DigitalData.MessagingService.Infrastructure.Repositories;
|
||||
|
||||
/// <summary>
|
||||
/// Generic repository implementation with AutoMapper-based CRUD operations.
|
||||
/// IMPORTANT: Each operation auto-saves changes - NO explicit SaveChangesAsync needed!
|
||||
/// </summary>
|
||||
public class Repository<TEntity>(EmailProfilerDbContext Context, IMapper Mapper) : IRepository<TEntity> where TEntity : class
|
||||
public class Repository<TEntity>(MessagingServiceDbContext Context, IMapper Mapper) : IRepository<TEntity> where TEntity : class
|
||||
{
|
||||
private readonly DbSet<TEntity> _dbSet = Context.Set<TEntity>();
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
using DigitalData.EmailProfiler.Application.Common.Interfaces;
|
||||
using DigitalData.EmailProfiler.Infrastructure.Queue;
|
||||
using DigitalData.MessagingService.Application.Common.Interfaces;
|
||||
using DigitalData.MessagingService.Infrastructure.Queue;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
using Microsoft.Extensions.Logging;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Infrastructure.Services.Background;
|
||||
namespace DigitalData.MessagingService.Infrastructure.Services.Background;
|
||||
|
||||
/// <summary>
|
||||
/// A hosted background service responsible for initializing the outgoing email queue consumer.
|
||||
@@ -1,7 +1,7 @@
|
||||
using DigitalData.EmailProfiler.Application.Common.Interfaces;
|
||||
using DigitalData.MessagingService.Application.Common.Interfaces;
|
||||
using Microsoft.AspNetCore.DataProtection;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Infrastructure.Services;
|
||||
namespace DigitalData.MessagingService.Infrastructure.Services;
|
||||
|
||||
/// <summary>
|
||||
/// Encryption service using ASP.NET Core Data Protection API.
|
||||
@@ -9,7 +9,7 @@ namespace DigitalData.EmailProfiler.Infrastructure.Services;
|
||||
/// </summary>
|
||||
public class DataProtectionEncryptionService(IDataProtectionProvider Provider) : IEncryptionService
|
||||
{
|
||||
private readonly IDataProtector Protector = Provider.CreateProtector("EmailProfiler.Passwords");
|
||||
private readonly IDataProtector Protector = Provider.CreateProtector("MessagingService.Passwords");
|
||||
|
||||
public string Encrypt(string plainText)
|
||||
{
|
||||
@@ -1,8 +1,8 @@
|
||||
using DevExpress.Pdf;
|
||||
using DigitalData.EmailProfiler.Application.Common.Interfaces;
|
||||
using DigitalData.EmailProfiler.Domain.Exceptions;
|
||||
using DigitalData.MessagingService.Application.Common.Interfaces;
|
||||
using DigitalData.MessagingService.Domain.Exceptions;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Infrastructure.Services;
|
||||
namespace DigitalData.MessagingService.Infrastructure.Services;
|
||||
|
||||
/// <summary>
|
||||
/// PDF processing service using DevExpress.Pdf.
|
||||
@@ -1,13 +1,13 @@
|
||||
using System.Text;
|
||||
using DigitalData.EmailProfiler.Application.Common.Dtos;
|
||||
using DigitalData.EmailProfiler.Application.Common.Interfaces;
|
||||
using DigitalData.EmailProfiler.Domain.Exceptions;
|
||||
using DigitalData.MessagingService.Application.Common.Dtos;
|
||||
using DigitalData.MessagingService.Application.Common.Interfaces;
|
||||
using DigitalData.MessagingService.Domain.Exceptions;
|
||||
using Limilabs.Client.SMTP;
|
||||
using Limilabs.Mail;
|
||||
using Limilabs.Mail.Headers;
|
||||
using Microsoft.Extensions.Options;
|
||||
|
||||
namespace DigitalData.EmailProfiler.Infrastructure.Services;
|
||||
namespace DigitalData.MessagingService.Infrastructure.Services;
|
||||
|
||||
/// <summary>
|
||||
/// Email service using Limilabs Mail.dll for SMTP operations (send-only).
|
||||
Reference in New Issue
Block a user