#include<stdio.h>
#include<stdlib.h>

#include "JSON.h"

/*
{
    "version":"1.0.0",
    "name":"testjson",
    "data":[
    {
        "id":"1",
        "first_name":"Steven",
        "last_name":"Thompson",
        "email":"sthompson0@spotify.com",
        "gender":"Male",
        "ip_address":"129.167.217.82"
    },
    {
        "id":"2",
        "first_name":"Doris",
        "last_name":"Daniels",
        "email":"ddaniels1@usgs.gov",
        "gender":"Female",
        "ip_address":"34.152.122.66"
    }
    ]

}
*/

JSON_ELEMENT	data_child_ip={
	"ip_address",
	JSON_STR,
	NULL,
	NULL
};
JSON_ELEMENT	data_child_gender={
	"gender",
	JSON_STR,
	NULL,
	&data_child_ip
};
JSON_ELEMENT	data_child_email={
	"email",
	JSON_STR,
	NULL,
	&data_child_gender
};
JSON_ELEMENT	data_child_lname={
	"last_name",
	JSON_STR,
	NULL,
	&data_child_email
};
JSON_ELEMENT	data_child_fname={
	"first_name",
	JSON_STR,
	NULL,
	&data_child_lname
};
JSON_ELEMENT	data_child_id={
	"id",
	JSON_STR,
	NULL,
	&data_child_fname
};
JSON_ELEMENT	data_child={
	NULL,
	JSON_OBJ,
	&data_child_id,
	NULL
};
JSON_ELEMENT	data={
	"data",
	JSON_ARRAY,
	&data_child,
	NULL
};
JSON_ELEMENT	name={
	"name",
	JSON_STR,
	NULL,
	&data
};
JSON_ELEMENT	ver={
	"version",
	JSON_STR,
	NULL,
	&name
};
JSON_ELEMENT  entery ={
	NULL,
	JSON_OBJ,
	&ver,
	NULL
};



JSON_ELEMENT  json_list[]= {
	/* 0 */ 	{NULL,		JSON_OBJ,		&json_list[1],	NULL},
	/* 1 */ 	{"version",		JSON_STR,		NULL,			&json_list[2]},
	/* 2 */ 	{"name",		JSON_STR,		NULL,			&json_list[3]},
	/* 3 */ 	{"data",		JSON_ARRAY,	&json_list[4],	NULL},
	/* 4 */ 	{NULL,		JSON_OBJ,		&json_list[5],	NULL},
	/* 5 */ 	{"id",			JSON_STR,		NULL,			&json_list[6]},
	/* 6 */ 	{"first_name",	JSON_STR,		NULL,			&json_list[7]},
	/* 7 */ 	{"last_name",	JSON_STR,		NULL,			&json_list[8]},
	/* 8 */ 	{"email",		JSON_STR,		NULL,			&json_list[9]},
	/* 9 */ 	{"gender",		JSON_STR,		NULL,			&json_list[10]},
	/* 10 */ 	{"ip_address",	JSON_STR,		NULL,			NULL}
};


int main(void)
{
	int  i=0;
	char * pBuff;
	JSON_ELEMENT *  json;
/*
	data_child_ip.child="34.152.122.66";
	data_child_gender.child="Male";
	data_child_email.child="ddaniels1@usgs.gov";
	data_child_lname.child="Thompson";
	data_child_fname.child="Steven";
	data_child_id.child="1";
	
	name.child="testjson";
	ver.child="1.0.0";
	pBuff=create_json(&entery);
	*/
	
	
	json_list[10].child="34.152.122.66";
	json_list[9].child="Male";
	json_list[8].child="ddaniels1@usgs.gov";
	json_list[7].child="Thompson";
	json_list[6].child="Steven";
	json_list[5].child="1";
	
	json_list[2].child="testjson";
	json_list[1].child="1.0.0";

	pBuff=create_json(json_list);
	
	
	printf("[%s]",pBuff);
	
	json=get_json(pBuff);
	free_json(json);
	
	free(pBuff);
	
	
	return i;
}
