Class CsvConstraintViolationException

All Implemented Interfaces:
Serializable

public class CsvConstraintViolationException extends CsvFieldAssignmentException
This exception is thrown when logical connections between data fields would be violated by the imported data.

This can be for constraints like making certain a number is in a certain range, or it can even be thrown by code using opencsv when constraints outside of opencsv would be violated. An example of the latter is importing into a database when one of the field in the CSV is supposed to contain the primary key for a foreign table, but the foreign key cannot be satisfied.

This exception is not currently used by opencsv itself, since opencsv has no concept of what data consistency means in the context of the application using it. It is meant more for custom converters.

Since:
3.8
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • sourceObject

      private final transient Object sourceObject
  • Constructor Details

    • CsvConstraintViolationException

      public CsvConstraintViolationException()
      Default constructor, in case no further information is necessary or available.
    • CsvConstraintViolationException

      public CsvConstraintViolationException(Object sourceObject)
      Constructor for setting the source object that triggered the constraint violation.
      Parameters:
      sourceObject - The offending source object
    • CsvConstraintViolationException

      public CsvConstraintViolationException(String message)
      Constructor with a simple text.
      Parameters:
      message - Human-readable error text
    • CsvConstraintViolationException

      public CsvConstraintViolationException(Object sourceObject, String message)
      Constructor for setting the source object and an error message.
      Parameters:
      sourceObject - The offending source object
      message - Human-readable error text
  • Method Details

    • getSourceObject

      public Object getSourceObject()
      Gets the object that would have caused a constraint violation. sourceObject is marked transient, because Object is not Serializable. If for any reason this exception is serialized and deserialized, this method will subsequently return null.
      Returns:
      The source object that triggered the constraint violation