ditto-lib / live.ditto / DittoMutableDocumentPath

DittoMutableDocumentPath

class DittoMutableDocumentPath

Provides an interface to specify a path to a key in a document that you can then call various update functions on. You obtain a DittoMutableDocumentPath by subscripting a DittoMutableDocument and you can then further subscript a DittoMutableDocumentPath to further specify the key of the document that you want to update.

Properties

attachmentToken

Returns the value at the previously specified key in the document as a DittoAttachmentToken. If the key was invalid the return value will be null.

val attachmentToken: DittoAttachmentToken?

boolean

Returns the value at the previously specified key in the document as a Boolean if possible, otherwise the return value will be null.

val boolean: Boolean?

booleanValue

Returns the value at the previously specified key in the document as a Boolean. If the key was invalid the return value will be false.

val booleanValue: Boolean

docID

val docID: String

double

Returns the value at the previously specified key in the document as a Double if possible, otherwise the return value will be null.

val double: Double?

doubleValue

Returns the value at the previously specified key in the document as a Double. If the key was invalid the return value will be 0.0.

val doubleValue: Double

float

Returns the value at the previously specified key in the document as a Float if possible, otherwise the return value will be null.

val float: Float?

floatValue

Returns the value at the previously specified key in the document as a Float. If the key was invalid the return value will be 0f.

val floatValue: Float

int

Returns the value at the previously specified key in the document as an Int if possible, otherwise the return value will be null.

val int: Int?

intValue

Returns the value at the previously specified key in the document as an Int. If the key was invalid the return value will be 0.

val intValue: Int

list

Returns the value at the previously specified key in the document as a List<Any?> if possible, otherwise the return value will be null.

val list: List<Any?>?

listValue

Returns the value at the previously specified key in the document as a List<Any?>. If the key was invalid the return value will be an empty list.

val listValue: List<Any?>

map

Returns the value at the previously specified key in the document as a Map<String, Any?> if possible, otherwise the return value will be null.

val map: Map<String, Any?>?

mapValue

Returns the value at the previously specified key in the document as a Map<String, Any?>. If the key was invalid the return value will be an empty dictionary.

val mapValue: Map<String, Any?>

path

val path: String

string

Returns the value at the previously specified key in the document as a String if possible, otherwise the return value will be null.

val string: String?

stringValue

Returns the value at the previously specified key in the document as a String. If the key was invalid the return value will be an empty string.

val stringValue: String

Functions

get

Used to specify a path to a key in the document that you can subscript further to access a nested key in the document and eventually perform an update operation on.

operator fun get(key: String): DittoMutableDocumentPath

Used to specify an index in the array at the preceding key-path specified through the subscripting defined previously. You can subscript the return value further to access a further nested key in the document and eventually perform an update operation.

operator fun get(index: Int): DittoMutableDocumentPath

increment

Increment a counter at the document's key defined by the preceding subscripting. This will only succeed if the value at the subscripting-defined key is a counter.

fun increment(amount: Number): Unit

insert

Inserts a value into an array at the index defined by the preceding subscripting. This will only succeed if the value at the subscripting-defined key is an index into an array.

fun insert(value: Any): Unit

pop

Pop a value off the end of an array at the document's key defined by the preceding subscripting. This will only succeed if the value at the subscripting-defined key is an array.

fun pop(): Any?

push

Push a value on to the end of an array at the document's key defined by the preceding subscripting. This will only succeed if the value at the subscripting-defined key is an array.

fun push(value: Any): Unit

remove

Remove a value at the document's key defined by the preceding subscripting.

fun remove(): Unit

replaceWithCounter

Replace a value at the document's key defined by the preceding subscripting with a counter.

fun replaceWithCounter(isDefault: Boolean = false): Unit

set

Set a value at the document's key defined by the preceding subscripting.

fun set(value: Any, isDefault: Boolean = false): Unit