import lombok.AllArgsConstructor; import lombok.Getter; @Getter @AllArgsConstructor public class ApiResponse { private final boolean success; private final T result; private final String message; public static ApiResponse success(U result) { return new ApiResponse<>(true, result, ""); } public static ApiResponse success(U result, String message) { return new ApiResponse<>(true, result, message); } public static ApiResponse fail(String message) { return new ApiResponse<>(false, null, message); } public static ApiResponse fail(U result, String message) { return new ApiResponse<>(false, result, message); } }