Add a helper method to parse maps of objects #53096
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We have several requests and responses that pass around maps of objects,
both multi-valued with keys acting as labels for indexes or fields (for example
in
GetIndex
orGetMappings
), or single-valued with the label pointing to a field(for example in queries run against a single field such as
term
orintervals
).All of these current have hand-rolled parsing code, because there's not an easy
way to tell
ObjectParser
how to handle them.This commit adds a helper method to
XContentParserUtils
that, given an objectparser and a json map, will parse each value using the map key as a context and
return a map of keys to objects. You can also specify whether or not the map
should have more than one value.