Skip to content
This repository has been archived by the owner on Jan 5, 2023. It is now read-only.

Json Sync procedure in detail #80

Closed
nikhilgupta280695 opened this issue Nov 4, 2014 · 4 comments
Closed

Json Sync procedure in detail #80

nikhilgupta280695 opened this issue Nov 4, 2014 · 4 comments

Comments

@nikhilgupta280695
Copy link

what do you mean by saying that the
"Note that each of the entries in the data_files array is actually
a pointer to another JSON file, which in turn contains information
about each type of entity."

Could sumone give any other example for JSON SYNCING !!

@ardock
Copy link
Contributor

ardock commented Nov 4, 2014

They uploaded json files to a cloud storage bucket.
"console.developers.google.com/storage/ 'your uptater project name' .appspot.com/"

One json contains the name of the other json files:
{"format":"iosched-json-v1","data_files":["past_io_videolibrary_v5.json","experts_v12.json","hashtags_v8.json","blocks_v12.json","map_v11.json","keynote_v13.json","partners_v2.json","session_data_v2.696.json"]}

This file is checked by the app and gets the name of the other json files.

Other files contain the info that the apps needs (speakers, rooms and so on) in json format.

{
"map": [
{
"config": {
"enableMyLocation": "false"
},
"markers": {
"0": [
{
"id": "room8",
"lat": 37.78280631538293,
"lng": -122.40401487797499,
"title": "Room 8",
"type": "session"
},
{
"id": "press",
"lat": 37.78304877330107,
"lng": -122.40369502454996,
"title": "Press",
"type": "label"
},
{
"id": "keynote",
"lat": 37.78311289865024,
"lng": -122.40422375500204,
"title": "Keynote",
"type": "label"
}
...

So you can update the info without modify the app.
Add new markers etc.
Each file has a version number that the apps checks. You can add new json files too.

io1 2014-11-04 15 43 49

@nikhilgupta280695
Copy link
Author

Isn't it a single json file like the Bootstrap.json file in raw...
Or is the bootstrap file split up into subcategories and made different json files as seen in the pic.

@jrodbx
Copy link

jrodbx commented Nov 4, 2014

The bootstrap is used to initialize the app.

The manifest is a known URL & json format that informs IOSched of updates.
One possible implementation of this could be:

{
"format": "iosched-json-v1",
"data_files": [
"bootstrap_data_v5.json"
]
}

where you version off your original bootstrap as you update it. This
probably isn't optimal in the likely case that your updates are small in
general. For that reason, you can fragment the original bootstrap into
small files. The client will know how to process the individual files as
incremental updates to the model.

@nikhilgupta280695
Copy link
Author

Yeah.. it works..
Thanks for the help..

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants