Skip to content

Add functionality to only return values for a property or a JSONPath. Be able to deserialize those values as a specified schema. #22

@botwhytho

Description

@botwhytho

Consider integrating extension methods defined in BotwhythoGtExtensions package.

They enable parsing only a JSONPath while 'throwing out' unwanted data, all without having to create 'dummy' wrapper classes (potentially multiple layers of these) with mapping definitions when one only wants a leaf value.This is rather onerous if working with many ever changing third party data sources where one can't control the shape of the response.

The package adds the following extension methods:

  • NeoJSONReader>>#onlyParseProperty:: Only return the value of a single top level property of a JSON object.
  • NeoJSONReader>>#onlyParseProperty:as: Same as previous, but specifying a schema for the value.
  • NeoJSONReader>>#onlyJSONPath:: Return the whole path of objects, basically nested map classes with only one key/value pair until the 'leaf' object is reached.
  • NeoJSONReader>>#onlyJSONPath:as:: Same as previous, but specifying a schema for the value.
  • NeoJSONReader>>#onlyJSONPathLeafValue:: Return only the leaf object of interest without the intermediary path.
  • NeoJSONReader>>#onlyJSONPathLeafValue:as:: Same as previous, but specifying a schema for the value.
  • NeoJSONReader>>#normalizeIntoCollection:: Helper method to normalize parameters

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions