Builder

class Builder @JvmOverloads constructor(copy: DataObject = EMPTY_OBJECT) : DataItemExtractor

Constructors

Link copied to clipboard
constructor(copy: DataObject = EMPTY_OBJECT)

Functions

Link copied to clipboard

Creates an immutable DataObject using the values added to the builder.

Link copied to clipboard

Builds the necessary path according to the given path in order to store the given item.

Link copied to clipboard

Clears all entries in the Builder.

Link copied to clipboard
open override fun extract(jsonPath: JsonPath<JsonPath.Component.Key>): DataItem?

Extracts a nested DataItem according to the given jsonPath.

open fun <T> extract(jsonPath: JsonPath<JsonPath.Component.Key>, converter: DataItemConverter<T>): T?

Extracts a nested DataItem according to the given jsonPath, and attempts to convert it to the type T using the given converter

Link copied to clipboard

Extracts a nested Boolean according to the given jsonPath.

Link copied to clipboard

Extracts a nested DataList according to the given jsonPath.

Link copied to clipboard

Extracts a nested DataObject according to the given jsonPath.

Link copied to clipboard

Extracts a nested Double according to the given jsonPath.

Link copied to clipboard

Extracts a nested Int according to the given jsonPath.

Link copied to clipboard

Extracts a nested Long according to the given jsonPath.

Link copied to clipboard

Extracts a nested String according to the given jsonPath.

Link copied to clipboard
open fun <T> get(key: String, converter: DataItemConverter<T>): T?

Gets the DataItem stored at the given key if there is one, and uses the given converter to translate it into an instance of type T

open operator override fun get(key: String): DataItem?

Gets the DataItem at the given key, if there is one.

Link copied to clipboard
open fun getBoolean(key: String): Boolean?

Gets the Boolean stored at the given key if there is one

Link copied to clipboard
open fun getDataList(key: String): DataList?

Gets the DataList stored at the given key if there is one

Link copied to clipboard

Gets the DataObject stored at the given key if there is one

Link copied to clipboard
open fun getDouble(key: String): Double?

Gets the Double stored at the given key if there is one

Link copied to clipboard
open fun getInt(key: String): Int?

Gets the Int stored at the given key if there is one

Link copied to clipboard
open fun getLong(key: String): Long?

Gets the Long stored at the given key if there is one

Link copied to clipboard
open fun getString(key: String): String?

Gets the String stored at the given key if there is one

Link copied to clipboard
fun put(key: String, value: Double): DataObject.Builder
fun put(key: String, value: Int): DataObject.Builder
fun put(key: String, value: Long): DataObject.Builder
fun put(key: String, value: String): DataObject.Builder

Adds the provided value into this DataObject.Builder, overwriting the existing item at that key if it already exists.

Adds a DataItemConvertible object to the DataObject. The

Link copied to clipboard

Adds all entries from the provided dataObject into this DataObject.Builder, overwriting any keys that already exist.

Link copied to clipboard

Unsafe shortcut to put any object into the DataObject. The any will attempt to be converted to a supported type. If no supported type is available, then an UnsupportedDataItemException will be thrown.

Link copied to clipboard

Attempts to put any object into the DataObject. The any will attempt to be converted to a supported type. If no supported type is available, then DataItem.NULL will be instead.

Link copied to clipboard

Adds a DataItem.NULL object to the DataObject.

Link copied to clipboard

Removes the entry currently stored at the current key. If the key does not exist, then this is a no-operation.