This commit implements a complete rebranding of the project: - Updated all namespaces from `DocumentOperator` to `DocumentService`. - Renamed file paths, embedded resources, and test data references. - Updated configuration keys, logging paths, and Redis instance names. - Revised documentation to reflect the new project name. - Modified project and solution files to align with the new structure. - Updated class names, DTOs, commands, queries, and handlers. - Adjusted middleware, controllers, and API endpoints. - Updated Swagger metadata and API titles to `DocumentService API`. - Refactored test namespaces, resource paths, and embedded resources. - Updated build and deployment configurations for the new name. - Replaced all references to `DocumentOperator` in comments and literals. These changes ensure consistency across the codebase and documentation.
53 lines
1.5 KiB
C#
53 lines
1.5 KiB
C#
namespace DocumentService.Application.Common.DTOs;
|
|
|
|
/// <summary>
|
|
/// PDF/A validation result including conformance level and validation errors/warnings
|
|
/// </summary>
|
|
public record PdfAValidationResult
|
|
{
|
|
/// <summary>
|
|
/// Whether the PDF is valid (no errors)
|
|
/// </summary>
|
|
public bool IsValid { get; init; }
|
|
|
|
/// <summary>
|
|
/// PDF version (e.g., "1.4", "1.7")
|
|
/// </summary>
|
|
public string PdfVersion { get; init; } = string.Empty;
|
|
|
|
/// <summary>
|
|
/// Number of pages in the PDF
|
|
/// </summary>
|
|
public int PageCount { get; init; }
|
|
|
|
/// <summary>
|
|
/// File size in bytes
|
|
/// </summary>
|
|
public long FileSize { get; init; }
|
|
|
|
/// <summary>
|
|
/// Whether the PDF is encrypted
|
|
/// </summary>
|
|
public bool Encrypted { get; init; }
|
|
|
|
/// <summary>
|
|
/// PDF/A version (e.g., "PDF/A-1b", "PDF/A-2a", "PDF/A-3u") or null if not PDF/A compliant
|
|
/// </summary>
|
|
public string? PdfAVersion { get; init; }
|
|
|
|
/// <summary>
|
|
/// Whether the PDF conforms to PDF/A standard
|
|
/// </summary>
|
|
public bool PdfACompliant { get; init; }
|
|
|
|
/// <summary>
|
|
/// Validation errors (e.g., "PDF/A documents cannot be encrypted")
|
|
/// </summary>
|
|
public IReadOnlyList<string> Errors { get; init; } = [];
|
|
|
|
/// <summary>
|
|
/// Validation warnings (e.g., "Manual verification recommended: All fonts must be embedded")
|
|
/// </summary>
|
|
public IReadOnlyList<string> Warnings { get; init; } = [];
|
|
}
|