Sample code for 30+ languages & platforms
Visual FoxPro

Firebase JSON Put and Patch

See more JSON Examples

Demonstrates how to apply Firebase put and patch events to a JSON database.

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL lcJson1
LOCAL loJson

lcJson1 = '{"a": 1, "b": 2}'

loJson = CreateObject('Chilkat.JsonObject')

* Use Firebase delimiters for JSON paths.
loJson.DelimiterChar = "/"

loJson.Load(lcJson1)
loJson.FirebasePut("/c",'{"foo": true, "bar": false}')
* Output should be: {"a":1,"b":2,"c":{"foo":true,"bar":false}}
? "1) " + loJson.Emit()

loJson.FirebasePut("/c",'"hello world"')
* Output should be: {"a":1,"b":2,"c":"hello world"}
? "2) " + loJson.Emit()

loJson.FirebasePut("/c",'{"foo": "abc", "bar": 123}')
* Output should be: {"a":1,"b":2,"c":{"foo":"abc","bar":123}}
? "3) " + loJson.Emit()

* Back to the original..
loJson.FirebasePut("/",'{"a": 1, "b": 2}')
? "4) " + loJson.Emit()

loJson.FirebasePut("/c",'{"foo": true, "bar": false}')
loJson.FirebasePatch("/c",'{"foo": 3, "baz": 4}')
* Output should be: {"a":1,"b":2,"c":{"foo":3,"bar":false,"baz":4}}
? "5) " + loJson.Emit()

loJson.FirebasePatch("/c",'{"foo": "abc123", "baz": {"foo": true, "bar": false}, "bax": {"foo": 200, "bar": 400} }')
* Output should be: {"a":1,"b":2,"c":{"foo":"abc123","bar":false,"baz":{"foo":true,"bar":false},"bax":{"foo":200,"bar":400}}}
? "6) " + loJson.Emit()

RELEASE loJson