Files
TekH 0e88b349d7 Rebrand project: DocumentOperator to DocumentService
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.
2026-07-30 14:02:56 +02:00

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; } = [];
}