// Path: src/main/java/com/edwise/completespring/exceptions/helpers/ErrorInfo.java
// @Accessors(chain = true)
// @EqualsAndHashCode(doNotUseGetters = true)
// @ToString(doNotUseGetters = true)
// public class ErrorInfo implements Serializable {
// 
//     private static final long serialVersionUID = 673514291953827696L;
// 
//     @Getter
//     @Setter
//     private String url;
// 
//     @Getter
//     private List<ErrorItem> errors = new ArrayList<>();
// 
//     public ErrorInfo addError(String field, String message) {
//         errors.add(new ErrorItem().setField(field).setMessage(message));
//         return this;
//     }
// 
//     public static ErrorInfo generateErrorInfoFromBindingResult(BindingResult errors) {
//         ErrorInfo errorInfo = new ErrorInfo();
//         errors.getFieldErrors()
//                 .forEach(fieldError -> errorInfo.addError(fieldError.getField(), fieldError.getDefaultMessage()));
// 
//         return errorInfo;
//     }
// }


import com.edwise.completespring.exceptions.helpers.ErrorInfo;
import lombok.Getter;
import org.springframework.validation.BindingResult;
package com.edwise.completespring.exceptions;


public class InvalidRequestException extends RuntimeException {

    @Getter
// Path: src/main/java/com/edwise/completespring/exceptions/helpers/ErrorInfo.java
// @Accessors(chain = true)
// @EqualsAndHashCode(doNotUseGetters = true)
// @ToString(doNotUseGetters = true)
// public class ErrorInfo implements Serializable {
// 
//     private static final long serialVersionUID = 673514291953827696L;
// 
//     @Getter
//     @Setter
//     private String url;
// 
//     @Getter
//     private List<ErrorItem> errors = new ArrayList<>();
// 
//     public ErrorInfo addError(String field, String message) {
//         errors.add(new ErrorItem().setField(field).setMessage(message));
//         return this;
//     }
// 
//     public static ErrorInfo generateErrorInfoFromBindingResult(BindingResult errors) {
//         ErrorInfo errorInfo = new ErrorInfo();
//         errors.getFieldErrors()
//                 .forEach(fieldError -> errorInfo.addError(fieldError.getField(), fieldError.getDefaultMessage()));
// 
//         return errorInfo;
//     }
// }


// Path: src/main/java/com/edwise/completespring/exceptions/InvalidRequestException.java
import com.edwise.completespring.exceptions.helpers.ErrorInfo;
import lombok.Getter;
import org.springframework.validation.BindingResult;

package com.edwise.completespring.exceptions;


public class InvalidRequestException extends RuntimeException {

    @Getter
    private final ErrorInfo errors;