Class JPropPathSplitter
java.lang.Object
com.fasterxml.jackson.dataformat.javaprop.util.JPropPathSplitter
- Direct Known Subclasses:
JPropPathSplitter.CharPathOnlySplitter
,JPropPathSplitter.FullSplitter
,JPropPathSplitter.IndexOnlySplitter
,JPropPathSplitter.NonSplitting
,JPropPathSplitter.StringPathOnlySplitter
Helper class used for splitting a flattened property key into
nested/structured path that can be used to traverse and/or define
hierarchic structure.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
Simple variant where we only have path separator, and optional "segment is index iff value is integer number"static class
Instance that supports both path separator and index markers (and possibly also "simple" indexes)static class
Special variant that does not use path separator, but does allow index indicator, at the end of path.static class
"No-op" implementation that does no splitting and simply adds entries as is.static class
Simple variant where we only have path separator, and optional "segment is index iff value is integer number" -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected JPropNode
_addSegment
(JPropNode parent, String segment) protected int
protected JPropNode
_lastSegment
(JPropNode parent, String path, int start, int end) static JPropPathSplitter
create
(JavaPropsSchema schema) private static JPropPathSplitter
pathOnlySplitter
(JavaPropsSchema schema) abstract JPropNode
splitAndAdd
(JPropNode parent, String key, String value) Main access method for splitting key into one or more segments and using segmentation to add the String value as a node in its proper location.
-
Field Details
-
_useSimpleIndex
protected final boolean _useSimpleIndex
-
-
Constructor Details
-
JPropPathSplitter
protected JPropPathSplitter(boolean useSimpleIndex)
-
-
Method Details
-
create
-
pathOnlySplitter
-
splitAndAdd
Main access method for splitting key into one or more segments and using segmentation to add the String value as a node in its proper location.- Returns:
- Newly added node
-
_addSegment
-
_lastSegment
-
_asInt
-