Package com.fasterxml.jackson.core
Class StreamReadConstraints.Builder
java.lang.Object
com.fasterxml.jackson.core.StreamReadConstraints.Builder
- Enclosing class:
- StreamReadConstraints
-
Method Summary
Modifier and TypeMethodDescriptionbuild()
maxDocumentLength
(long maxDocLen) Sets the maximum allowed document length (for positive values over 0) or indicate that any length is acceptable (0
or negative number).maxNameLength
(int maxNameLen) Sets the maximum name length (in chars or bytes, depending on input context).maxNestingDepth
(int maxNestingDepth) Sets the maximum nesting depth.maxNumberLength
(int maxNumLen) Sets the maximum number length (in chars or bytes, depending on input context).maxStringLength
(int maxStringLen) Sets the maximum string length (in chars or bytes, depending on input context).
-
Method Details
-
maxNestingDepth
Sets the maximum nesting depth. The depth is a count of objects and arrays that have not been closed, `{` and `[` respectively.- Parameters:
maxNestingDepth
- the maximum depth- Returns:
- this builder
- Throws:
IllegalArgumentException
- if the maxNestingDepth is set to a negative value
-
maxDocumentLength
Sets the maximum allowed document length (for positive values over 0) or indicate that any length is acceptable (0
or negative number). The length is in input units of the input source, that is, inbyte
s orchar
s.- Parameters:
maxDocLen
- the maximum allowed document if positive number above 0; otherwise (0
or negative number) means "unlimited".- Returns:
- this builder
- Since:
- 2.16
-
maxNumberLength
Sets the maximum number length (in chars or bytes, depending on input context). The default is 1000.- Parameters:
maxNumLen
- the maximum number length (in chars or bytes, depending on input context)- Returns:
- this builder
- Throws:
IllegalArgumentException
- if the maxNumLen is set to a negative value
-
maxStringLength
Sets the maximum string length (in chars or bytes, depending on input context). The default is 20,000,000. This limit is not exact, the limit is applied when we increase internal buffer sizes and an exception will happen at sizes greater than this limit. Some text values that are a little bigger than the limit may be treated as valid but no text values with sizes less than or equal to this limit will be treated as invalid.Setting this value to lower than the
maxNumberLength(int)
is not recommended.NOTE: Jackson 2.15.0 initially used a lower setting (5_000_000).
- Parameters:
maxStringLen
- the maximum string length (in chars or bytes, depending on input context)- Returns:
- this builder
- Throws:
IllegalArgumentException
- if the maxStringLen is set to a negative value
-
maxNameLength
Sets the maximum name length (in chars or bytes, depending on input context). The default is 50,000. This limit is not exact, the limit is applied when we increase internal buffer sizes and an exception will happen at sizes greater than this limit. Some text values that are a little bigger than the limit may be treated as valid but no text values with sizes less than or equal to this limit will be treated as invalid.- Parameters:
maxNameLen
- the maximum string length (in chars or bytes, depending on input context)- Returns:
- this builder
- Throws:
IllegalArgumentException
- if the maxStringLen is set to a negative value- Since:
- 2.16.0
-
build
-