chore(quarkus-327): bump to Quarkus 3.27.3 LTS, rename quarkus-resteasy-reactive → quarkus-rest, fix testGetAuditQuestions map vs list, rename deprecated config keys
This commit is contained in:
@@ -1,135 +1,135 @@
|
||||
package dev.lions.exceptions;
|
||||
|
||||
import lombok.Builder;
|
||||
import lombok.Getter;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
/**
|
||||
* Exception spécialisée pour la gestion des erreurs lors du téléchargement de fichiers.
|
||||
* Cette classe encapsule les différents types d'erreurs pouvant survenir pendant
|
||||
* le processus de téléchargement et de traitement des fichiers.
|
||||
*
|
||||
* @author Lions Dev Team
|
||||
* @version 1.0
|
||||
*/
|
||||
@Slf4j
|
||||
public class FileUploadException extends BusinessException {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* Détails techniques de l'erreur de téléchargement
|
||||
*/
|
||||
private final FileUploadErrorDetails errorDetails;
|
||||
|
||||
/**
|
||||
* Crée une nouvelle instance avec un message d'erreur simple.
|
||||
*
|
||||
* @param message Description de l'erreur
|
||||
*/
|
||||
public FileUploadException(String message) {
|
||||
this(message, null, null);
|
||||
log.error("Erreur de téléchargement : {}", message);
|
||||
}
|
||||
|
||||
/**
|
||||
* Crée une nouvelle instance avec un message et une cause.
|
||||
*
|
||||
* @param message Description de l'erreur
|
||||
* @param cause Exception à l'origine de l'erreur
|
||||
*/
|
||||
public FileUploadException(String message, Throwable cause) {
|
||||
this(message, cause, null);
|
||||
log.error("Erreur de téléchargement : {}", message, cause);
|
||||
}
|
||||
|
||||
/**
|
||||
* Crée une nouvelle instance avec tous les détails de l'erreur.
|
||||
*
|
||||
* @param message Description de l'erreur
|
||||
* @param cause Exception à l'origine de l'erreur
|
||||
* @param errorDetails Détails techniques de l'erreur
|
||||
*/
|
||||
public FileUploadException(String message, Throwable cause, FileUploadErrorDetails errorDetails) {
|
||||
super(message, cause);
|
||||
this.errorDetails = errorDetails;
|
||||
log.error("Erreur de téléchargement détaillée : {} - Détails : {}", message, errorDetails);
|
||||
}
|
||||
|
||||
/**
|
||||
* Récupère les détails techniques de l'erreur.
|
||||
*
|
||||
* @return Détails de l'erreur ou null si non disponibles
|
||||
*/
|
||||
public FileUploadErrorDetails getErrorDetails() {
|
||||
return errorDetails;
|
||||
}
|
||||
|
||||
/**
|
||||
* Classe interne représentant les détails techniques d'une erreur de téléchargement.
|
||||
*/
|
||||
@Getter
|
||||
@Builder
|
||||
public static class FileUploadErrorDetails {
|
||||
private final String fileName;
|
||||
private final long fileSize;
|
||||
private final String mimeType;
|
||||
private final String uploadLocation;
|
||||
private final String validationError;
|
||||
private final String processingPhase;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return String.format(
|
||||
"FileUploadErrorDetails[fileName=%s, fileSize=%d, mimeType=%s, " +
|
||||
"location=%s, error=%s, phase=%s]",
|
||||
fileName, fileSize, mimeType, uploadLocation, validationError, processingPhase
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Crée une instance d'exception pour un fichier trop volumineux.
|
||||
*
|
||||
* @param fileName Nom du fichier
|
||||
* @param actualSize Taille réelle du fichier
|
||||
* @param maxSize Taille maximale autorisée
|
||||
* @return Instance de FileUploadException
|
||||
*/
|
||||
public static FileUploadException fileTooLarge(String fileName, long actualSize, long maxSize) {
|
||||
String message = String.format(
|
||||
"Le fichier '%s' est trop volumineux (%d octets). Maximum autorisé : %d octets",
|
||||
fileName, actualSize, maxSize
|
||||
);
|
||||
|
||||
FileUploadErrorDetails details = FileUploadErrorDetails.builder()
|
||||
.fileName(fileName)
|
||||
.fileSize(actualSize)
|
||||
.validationError("FILE_TOO_LARGE")
|
||||
.processingPhase("VALIDATION")
|
||||
.build();
|
||||
|
||||
return new FileUploadException(message, null, details);
|
||||
}
|
||||
|
||||
/**
|
||||
* Crée une instance d'exception pour un type de fichier non autorisé.
|
||||
*
|
||||
* @param fileName Nom du fichier
|
||||
* @param mimeType Type MIME du fichier
|
||||
* @return Instance de FileUploadException
|
||||
*/
|
||||
public static FileUploadException invalidFileType(String fileName, String mimeType) {
|
||||
String message = String.format(
|
||||
"Le type de fichier '%s' n'est pas autorisé pour '%s'",
|
||||
mimeType, fileName
|
||||
);
|
||||
|
||||
FileUploadErrorDetails details =
|
||||
FileUploadErrorDetails.builder().fileName(fileName).mimeType(mimeType)
|
||||
.validationError("INVALID_FILE_TYPE").processingPhase("VALIDATION")
|
||||
.fileSize(-1).build();
|
||||
|
||||
return new FileUploadException(message, null, details);
|
||||
}
|
||||
package dev.lions.exceptions;
|
||||
|
||||
import lombok.Builder;
|
||||
import lombok.Getter;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
/**
|
||||
* Exception spécialisée pour la gestion des erreurs lors du téléchargement de fichiers.
|
||||
* Cette classe encapsule les différents types d'erreurs pouvant survenir pendant
|
||||
* le processus de téléchargement et de traitement des fichiers.
|
||||
*
|
||||
* @author Lions Dev Team
|
||||
* @version 1.0
|
||||
*/
|
||||
@Slf4j
|
||||
public class FileUploadException extends BusinessException {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* Détails techniques de l'erreur de téléchargement
|
||||
*/
|
||||
private final FileUploadErrorDetails errorDetails;
|
||||
|
||||
/**
|
||||
* Crée une nouvelle instance avec un message d'erreur simple.
|
||||
*
|
||||
* @param message Description de l'erreur
|
||||
*/
|
||||
public FileUploadException(String message) {
|
||||
this(message, null, null);
|
||||
log.error("Erreur de téléchargement : {}", message);
|
||||
}
|
||||
|
||||
/**
|
||||
* Crée une nouvelle instance avec un message et une cause.
|
||||
*
|
||||
* @param message Description de l'erreur
|
||||
* @param cause Exception à l'origine de l'erreur
|
||||
*/
|
||||
public FileUploadException(String message, Throwable cause) {
|
||||
this(message, cause, null);
|
||||
log.error("Erreur de téléchargement : {}", message, cause);
|
||||
}
|
||||
|
||||
/**
|
||||
* Crée une nouvelle instance avec tous les détails de l'erreur.
|
||||
*
|
||||
* @param message Description de l'erreur
|
||||
* @param cause Exception à l'origine de l'erreur
|
||||
* @param errorDetails Détails techniques de l'erreur
|
||||
*/
|
||||
public FileUploadException(String message, Throwable cause, FileUploadErrorDetails errorDetails) {
|
||||
super(message, cause);
|
||||
this.errorDetails = errorDetails;
|
||||
log.error("Erreur de téléchargement détaillée : {} - Détails : {}", message, errorDetails);
|
||||
}
|
||||
|
||||
/**
|
||||
* Récupère les détails techniques de l'erreur.
|
||||
*
|
||||
* @return Détails de l'erreur ou null si non disponibles
|
||||
*/
|
||||
public FileUploadErrorDetails getErrorDetails() {
|
||||
return errorDetails;
|
||||
}
|
||||
|
||||
/**
|
||||
* Classe interne représentant les détails techniques d'une erreur de téléchargement.
|
||||
*/
|
||||
@Getter
|
||||
@Builder
|
||||
public static class FileUploadErrorDetails {
|
||||
private final String fileName;
|
||||
private final long fileSize;
|
||||
private final String mimeType;
|
||||
private final String uploadLocation;
|
||||
private final String validationError;
|
||||
private final String processingPhase;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return String.format(
|
||||
"FileUploadErrorDetails[fileName=%s, fileSize=%d, mimeType=%s, " +
|
||||
"location=%s, error=%s, phase=%s]",
|
||||
fileName, fileSize, mimeType, uploadLocation, validationError, processingPhase
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Crée une instance d'exception pour un fichier trop volumineux.
|
||||
*
|
||||
* @param fileName Nom du fichier
|
||||
* @param actualSize Taille réelle du fichier
|
||||
* @param maxSize Taille maximale autorisée
|
||||
* @return Instance de FileUploadException
|
||||
*/
|
||||
public static FileUploadException fileTooLarge(String fileName, long actualSize, long maxSize) {
|
||||
String message = String.format(
|
||||
"Le fichier '%s' est trop volumineux (%d octets). Maximum autorisé : %d octets",
|
||||
fileName, actualSize, maxSize
|
||||
);
|
||||
|
||||
FileUploadErrorDetails details = FileUploadErrorDetails.builder()
|
||||
.fileName(fileName)
|
||||
.fileSize(actualSize)
|
||||
.validationError("FILE_TOO_LARGE")
|
||||
.processingPhase("VALIDATION")
|
||||
.build();
|
||||
|
||||
return new FileUploadException(message, null, details);
|
||||
}
|
||||
|
||||
/**
|
||||
* Crée une instance d'exception pour un type de fichier non autorisé.
|
||||
*
|
||||
* @param fileName Nom du fichier
|
||||
* @param mimeType Type MIME du fichier
|
||||
* @return Instance de FileUploadException
|
||||
*/
|
||||
public static FileUploadException invalidFileType(String fileName, String mimeType) {
|
||||
String message = String.format(
|
||||
"Le type de fichier '%s' n'est pas autorisé pour '%s'",
|
||||
mimeType, fileName
|
||||
);
|
||||
|
||||
FileUploadErrorDetails details =
|
||||
FileUploadErrorDetails.builder().fileName(fileName).mimeType(mimeType)
|
||||
.validationError("INVALID_FILE_TYPE").processingPhase("VALIDATION")
|
||||
.fileSize(-1).build();
|
||||
|
||||
return new FileUploadException(message, null, details);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user