Tcl
Tcl
Firebase JSON Put and Patch
See more JSON Examples
Demonstrates how to apply Firebase put and patch events to a JSON database.Chilkat Tcl Downloads
load ./chilkat.dll
set json1 "{\"a\": 1, \"b\": 2}"
set json [new_CkJsonObject]
# Use Firebase delimiters for JSON paths.
CkJsonObject_put_DelimiterChar $json "/"
CkJsonObject_Load $json $json1
CkJsonObject_FirebasePut $json "/c" "{\"foo\": true, \"bar\": false}"
# Output should be: {"a":1,"b":2,"c":{"foo":true,"bar":false}}
puts "1) [CkJsonObject_emit $json]"
CkJsonObject_FirebasePut $json "/c" "\"hello world\""
# Output should be: {"a":1,"b":2,"c":"hello world"}
puts "2) [CkJsonObject_emit $json]"
CkJsonObject_FirebasePut $json "/c" "{\"foo\": \"abc\", \"bar\": 123}"
# Output should be: {"a":1,"b":2,"c":{"foo":"abc","bar":123}}
puts "3) [CkJsonObject_emit $json]"
# Back to the original..
CkJsonObject_FirebasePut $json "/" "{\"a\": 1, \"b\": 2}"
puts "4) [CkJsonObject_emit $json]"
CkJsonObject_FirebasePut $json "/c" "{\"foo\": true, \"bar\": false}"
CkJsonObject_FirebasePatch $json "/c" "{\"foo\": 3, \"baz\": 4}"
# Output should be: {"a":1,"b":2,"c":{"foo":3,"bar":false,"baz":4}}
puts "5) [CkJsonObject_emit $json]"
CkJsonObject_FirebasePatch $json "/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}}}
puts "6) [CkJsonObject_emit $json]"
delete_CkJsonObject $json