Open Source Repository

Home /csv/supercsv-1.52 | Repository Home


org/supercsv/exception/ClassCastInputCSVException.java
package org.supercsv.exception;

import java.io.Serializable;

import org.supercsv.cellprocessor.ift.CellProcessor;
import org.supercsv.util.CSVContext;

/**
 * This exception is raised by processors when receiving a value with a type different than the one expected. *
 
 @since 1.50
 @author Dominique De Vito
 */
public class ClassCastInputCSVException extends SuperCSVException implements Serializable {
private static final long serialVersionUID = 1L;

public ClassCastInputCSVException(String msg, CSVContext context, Throwable t) {
  super(msg, context, t);
}

public ClassCastInputCSVException(String msg, CSVContext context) {
  super(msg, context);
}

public ClassCastInputCSVException(String msg, CSVContext context, CellProcessor processor) {
  super(msg, context, processor);
}

public ClassCastInputCSVException(String msg) {
  super(msg);
}

public ClassCastInputCSVException(Object receivedValue, Class expectedClass, CSVContext context, CellProcessor processor) {
  super(getDefaultMessage(receivedValue, expectedClass), context, processor);
}

private static String getDefaultMessage(Object receivedValue, Class expectedClass) {
  String printedReceivedClass = (receivedValue == null"? (null was provided)" : receivedValue.getClass()
    .toString();
  String printedExpectedClass = expectedClass.toString();
  return "unexpected input value '" + receivedValue + "' of class " + printedReceivedClass
    " while expecting a value of class " + printedExpectedClass;
}

}