CsvException.java
/*
* CSVeed (https://github.com/42BV/CSVeed)
*
* Copyright 2013-2023 CSVeed.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of The Apache Software License,
* Version 2.0 which accompanies this distribution, and is available at
* https://www.apache.org/licenses/LICENSE-2.0.txt
*/
package org.csveed.report;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* The Class CsvException.
*/
public class CsvException extends RuntimeException {
/** The Constant serialVersionUID. */
private static final long serialVersionUID = 1L;
/** The Constant LOG. */
private static final Logger LOG = LoggerFactory.getLogger(CsvException.class);
/** The error. */
private CsvError error;
/**
* Instantiates a new csv exception.
*
* @param error
* the error
*/
public CsvException(CsvError error) {
this.error = error;
for (String line : error.getPrintableLines()) {
LOG.error("{}", line);
}
}
/**
* Gets the error.
*
* @return the error
*/
public CsvError getError() {
return this.error;
}
@Override
public String getMessage() {
return this.getError().getMessage();
}
@Override
public String getLocalizedMessage() {
StringBuilder errorMessage = new StringBuilder();
boolean first = true;
for (String line : getError().getPrintableLines()) {
if (!first) {
errorMessage.append(System.lineSeparator());
}
errorMessage.append(line);
first = false;
}
return errorMessage.toString();
}
}