- All Implemented Interfaces:
Serializable,Comparable<CsvReadFeature>,Constable,tools.jackson.core.FormatFeature,tools.jackson.core.util.JacksonFeature
NOTE: in Jackson 2.x this was named CsvParser.Feature.
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>> -
Enum Constant Summary
Enum ConstantsEnum ConstantDescriptionFeature that allows accepting "hash comments" by default, similar toCsvSchema.withAllowComments(boolean).Feature that allows there to be a trailing single extraneous data column that is empty.Feature that enables coercing an emptyStringto `null`.Feature that enables coercing an empty un-quotedStringto `null`.Feature that allows failing (with aCsvReadException) in cases where number of column values encountered is less than number of columns declared in the active schema ("missing columns").Feature that allows failing (with aCsvReadException) in cases where number of header columns encountered is less than number of columns declared in the active schema (if there is one).Feature that allows ignoring of unmappable "extra" columns; that is, values for columns that appear after columns for which types are defined.Feature that allows "inserting" virtual key / `null` value pairs in case a row contains fewer columns than declared by configured schema.Feature that enables treating only un-quoted values matching the configured "null value" String (seeCsvSchema.getNullValueString()) asnull, but not quoted values: differentiating between a quoted null value String (like"null") which remains as a String, and an unquoted null value (likenull) which becomesnull.Feature that allows skipping input lines that are completely empty or blank (composed only of whitespace), instead of being decoded as lines of just a single column with an empty/blank String value (or, depending on binding, `null`).Feature determines whether spaces around separator characters (commas) in header line entries (header names) are to be automatically trimmed before being reported or not.Feature determines whether spaces around separator characters (commas) are to be automatically trimmed before being reported or not.Feature that determines how stream of records (usually CSV lines, but sometimes multiple lines when line-feeds are included in quoted values) is exposed: either as a sequence of Objects (false), or as an Array of Objects (true). -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic intMethod that calculates bit set (flags) of all features that are enabled by default.booleanbooleanenabledIn(int flags) intgetMask()static CsvReadFeatureReturns the enum constant of this class with the specified name.static CsvReadFeature[]values()Returns an array containing the constants of this enum class, in the order they are declared.
-
Enum Constant Details
-
TRIM_SPACES
Feature determines whether spaces around separator characters (commas) are to be automatically trimmed before being reported or not. Note that this does NOT force trimming of possible white space from within double-quoted values, but only those surrounding unquoted values (white space outside of double-quotes is never included regardless of trimming).Default value is false, as per RFC-4180.
-
TRIM_HEADER_SPACES
Feature determines whether spaces around separator characters (commas) in header line entries (header names) are to be automatically trimmed before being reported or not. Note that this does NOT force trimming of possible white space from within double-quoted values, but only those surrounding unquoted values (white space outside of double-quotes is never included regardless of trimming).Default value is
true. -
WRAP_AS_ARRAY
Feature that determines how stream of records (usually CSV lines, but sometimes multiple lines when line-feeds are included in quoted values) is exposed: either as a sequence of Objects (false), or as an Array of Objects (true). Using stream of Objects is convenient when usingObjectMapper.readValues(...)and array of Objects convenient when binding toLists or arrays of values.Default value is false, meaning that by default a CSV document is exposed as a sequence of root-level Object entries.
-
IGNORE_TRAILING_UNMAPPABLE
Feature that allows ignoring of unmappable "extra" columns; that is, values for columns that appear after columns for which types are defined. When disabled, an exception is thrown for such column values, but if enabled, they are silently ignored.Feature is disabled by default.
-
SKIP_EMPTY_LINES
Feature that allows skipping input lines that are completely empty or blank (composed only of whitespace), instead of being decoded as lines of just a single column with an empty/blank String value (or, depending on binding, `null`).Feature is disabled by default.
-
ALLOW_TRAILING_COMMA
Feature that allows there to be a trailing single extraneous data column that is empty. When this feature is disabled, any extraneous column, regardless of content will cause an exception to be thrown. Disabling this feature is only useful when IGNORE_TRAILING_UNMAPPABLE is also disabled. -
ALLOW_COMMENTS
Feature that allows accepting "hash comments" by default, similar toCsvSchema.withAllowComments(boolean). If enabled, such comments are by default allowed on all columns of all documents. -
FAIL_ON_MISSING_COLUMNS
Feature that allows failing (with aCsvReadException) in cases where number of column values encountered is less than number of columns declared in the active schema ("missing columns").Note that this feature has precedence over
INSERT_NULLS_FOR_MISSING_COLUMNSFeature is disabled by default.
-
FAIL_ON_MISSING_HEADER_COLUMNS
Feature that allows failing (with aCsvReadException) in cases where number of header columns encountered is less than number of columns declared in the active schema (if there is one).Feature is enabled by default.
-
INSERT_NULLS_FOR_MISSING_COLUMNS
Feature that allows "inserting" virtual key / `null` value pairs in case a row contains fewer columns than declared by configured schema. This typically has the effect of forcing an explicit `null` assigment (or corresponding "null value", if so configured) at databinding level. If disabled, no extra work is done and values for "missing" columns are not exposed as part of the token stream.Note that this feature is only considered if
FAIL_ON_MISSING_COLUMNSis disabled.Feature is disabled by default.
-
EMPTY_STRING_AS_NULL
Feature that enables coercing an emptyStringto `null`.Note that if this setting is enabled,
EMPTY_UNQUOTED_STRING_AS_NULLhas no effect. Feature is disabled by default for backwards compatibility. -
EMPTY_UNQUOTED_STRING_AS_NULL
Feature that enables coercing an empty un-quotedStringto `null`. This feature allow differentiating between an empty quotedStringand an empty un-quotedString.Note that this feature is only considered if
EMPTY_STRING_AS_NULLis disabled.Feature is disabled by default for backwards compatibility.
-
ONLY_UNQUOTED_NULL_VALUES_AS_NULL
Feature that enables treating only un-quoted values matching the configured "null value" String (seeCsvSchema.getNullValueString()) asnull, but not quoted values: differentiating between a quoted null value String (like"null") which remains as a String, and an unquoted null value (likenull) which becomesnull.This is similar to
EMPTY_UNQUOTED_STRING_AS_NULLbut applies to the explicitly configured null value rather than empty strings.Note: This feature only has an effect if a null value is configured via
CsvSchema.Builder.setNullValue(String).Feature is disabled by default for backwards compatibility.
- Since:
- 3.1
-
-
Field Details
-
_defaultState
private final boolean _defaultState -
_mask
private final int _mask
-
-
Constructor Details
-
CsvReadFeature
private CsvReadFeature(boolean defaultState)
-
-
Method Details
-
values
Returns an array containing the constants of this enum class, in the order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
-
valueOf
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException- if this enum class has no constant with the specified nameNullPointerException- if the argument is null
-
collectDefaults
public static int collectDefaults()Method that calculates bit set (flags) of all features that are enabled by default. -
enabledByDefault
public boolean enabledByDefault()- Specified by:
enabledByDefaultin interfacetools.jackson.core.util.JacksonFeature
-
enabledIn
public boolean enabledIn(int flags) - Specified by:
enabledInin interfacetools.jackson.core.util.JacksonFeature
-
getMask
public int getMask()- Specified by:
getMaskin interfacetools.jackson.core.util.JacksonFeature
-