Skip to content

Commit

Permalink
Update FirebaseJson, add FirebaseJson to FirebaseData and StreamData
Browse files Browse the repository at this point in the history
  • Loading branch information
mobizt committed Aug 19, 2019
1 parent 3e895ef commit 469daf9
Show file tree
Hide file tree
Showing 19 changed files with 450 additions and 38 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Firebase Realtime Database Arduino Library for ESP8266


Google's Firebase Realtime Database Arduino Library for ESP8266 v 2.4.0
Google's Firebase Realtime Database Arduino Library for ESP8266 v 2.4.1


This library supports ESP8266 MCU from Espressif. The following are platforms which library are also available.
Expand Down
30 changes: 27 additions & 3 deletions examples/Basic/Basic.ino
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@
//Define FirebaseESP8266 data object
FirebaseData firebaseData;

void printJsonObjectContent(FirebaseData &data);

void setup()
{

Expand Down Expand Up @@ -84,7 +86,7 @@ void setup()
else if (firebaseData.dataType() == "string")
Serial.println(firebaseData.stringData());
else if (firebaseData.dataType() == "json")
Serial.println(firebaseData.jsonData());
printJsonObjectContent(firebaseData);
Serial.println("------------------------------------");
Serial.println();
}
Expand Down Expand Up @@ -121,7 +123,7 @@ void setup()
else if (firebaseData.dataType() == "string")
Serial.println(firebaseData.stringData());
else if (firebaseData.dataType() == "json")
Serial.println(firebaseData.jsonData());
printJsonObjectContent(firebaseData);
Serial.println("------------------------------------");
Serial.println();
}
Expand Down Expand Up @@ -214,7 +216,7 @@ void setup()
else if (firebaseData.dataType() == "string")
Serial.println(firebaseData.stringData());
else if (firebaseData.dataType() == "json")
Serial.println(firebaseData.jsonData());
printJsonObjectContent(firebaseData);
Serial.println("------------------------------------");
Serial.println();
}
Expand All @@ -231,3 +233,25 @@ void setup()
void loop()
{
}

void printJsonObjectContent(FirebaseData &data){
size_t tokenCount = data.jsonObject().parse(false).getJsonObjectIteratorCount();
String key;
String value;
FirebaseJsonObject jsonParseResult;
Serial.println();
for (size_t i = 0; i < tokenCount; i++)
{
data.jsonObject().jsonObjectiterator(i,key,value);
jsonParseResult = data.jsonObject().parseResult();
Serial.print("KEY: ");
Serial.print(key);
Serial.print(", ");
Serial.print("VALUE: ");
Serial.print(value);
Serial.print(", ");
Serial.print("TYPE: ");
Serial.println(jsonParseResult.type);

}
}
30 changes: 27 additions & 3 deletions examples/Basic_with_rootCA/Basic_with_rootCA.ino
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@ const char root_ca[] PROGMEM = "-----BEGIN CERTIFICATE-----\n"
//Define FirebaseESP8266 data object
FirebaseData firebaseData;

void printJsonObjectContent(FirebaseData &data);

void setup()
{

Expand Down Expand Up @@ -120,7 +122,7 @@ void setup()
else if (firebaseData.dataType() == "string")
Serial.println(firebaseData.stringData());
else if (firebaseData.dataType() == "json")
Serial.println(firebaseData.jsonData());
printJsonObjectContent(firebaseData);
Serial.println("------------------------------------");
Serial.println();
}
Expand Down Expand Up @@ -157,7 +159,7 @@ void setup()
else if (firebaseData.dataType() == "string")
Serial.println(firebaseData.stringData());
else if (firebaseData.dataType() == "json")
Serial.println(firebaseData.jsonData());
printJsonObjectContent(firebaseData);
Serial.println("------------------------------------");
Serial.println();
}
Expand Down Expand Up @@ -248,7 +250,7 @@ void setup()
else if (firebaseData.dataType() == "string")
Serial.println(firebaseData.stringData());
else if (firebaseData.dataType() == "json")
Serial.println(firebaseData.jsonData());
printJsonObjectContent(firebaseData);
Serial.println("------------------------------------");
Serial.println();
}
Expand All @@ -265,3 +267,25 @@ void setup()
void loop()
{
}

void printJsonObjectContent(FirebaseData &data){
size_t tokenCount = data.jsonObject().parse(false).getJsonObjectIteratorCount();
String key;
String value;
FirebaseJsonObject jsonParseResult;
Serial.println();
for (size_t i = 0; i < tokenCount; i++)
{
data.jsonObject().jsonObjectiterator(i,key,value);
jsonParseResult = data.jsonObject().parseResult();
Serial.print("KEY: ");
Serial.print(key);
Serial.print(", ");
Serial.print("VALUE: ");
Serial.print(value);
Serial.print(", ");
Serial.print("TYPE: ");
Serial.println(jsonParseResult.type);

}
}
26 changes: 25 additions & 1 deletion examples/Blob/Blob.ino
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,8 @@
//Define Firebase Data object
FirebaseData firebaseData;

void printJsonObjectContent(FirebaseData &data);

String path = "/ESP8266_Test";

void setup()
Expand Down Expand Up @@ -164,7 +166,7 @@ void setup()
else if (firebaseData.dataType() == "string")
Serial.println(firebaseData.stringData());
else if (firebaseData.dataType() == "json")
Serial.println(firebaseData.jsonData());
printJsonObjectContent(firebaseData);
else if (firebaseData.dataType() == "blob")
{

Expand Down Expand Up @@ -204,3 +206,25 @@ void setup()
void loop()
{
}

void printJsonObjectContent(FirebaseData &data){
size_t tokenCount = data.jsonObject().parse(false).getJsonObjectIteratorCount();
String key;
String value;
FirebaseJsonObject jsonParseResult;
Serial.println();
for (size_t i = 0; i < tokenCount; i++)
{
data.jsonObject().jsonObjectiterator(i,key,value);
jsonParseResult = data.jsonObject().parseResult();
Serial.print("KEY: ");
Serial.print(key);
Serial.print(", ");
Serial.print("VALUE: ");
Serial.print(value);
Serial.print(", ");
Serial.print("TYPE: ");
Serial.println(jsonParseResult.type);

}
}
29 changes: 27 additions & 2 deletions examples/Blynk/Blynk.ino
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@
FirebaseData firebaseData1;
FirebaseData firebaseData2;

void printJsonObjectContent(FirebaseData &data);

String path = "/Blynk_Test/Int";

//D4 or GPIO2 on Wemos D1 mini
Expand Down Expand Up @@ -138,7 +140,7 @@ void loop()
else if (firebaseData1.dataType() == "string")
Serial.println(firebaseData1.stringData());
else if (firebaseData1.dataType() == "json")
Serial.println(firebaseData1.jsonData());
printJsonObjectContent(firebaseData1);
Serial.println("------------------------------------");
Serial.println();
}
Expand Down Expand Up @@ -167,7 +169,7 @@ BLYNK_WRITE(V1)
else if (firebaseData2.dataType() == "string")
Serial.println(firebaseData2.stringData());
else if (firebaseData2.dataType() == "json")
Serial.println(firebaseData2.jsonData());
printJsonObjectContent(firebaseData2);
Serial.println("------------------------------------");
Serial.println();
}
Expand All @@ -178,4 +180,27 @@ BLYNK_WRITE(V1)
Serial.println("------------------------------------");
Serial.println();
}
}


void printJsonObjectContent(FirebaseData &data){
size_t tokenCount = data.jsonObject().parse(false).getJsonObjectIteratorCount();
String key;
String value;
FirebaseJsonObject jsonParseResult;
Serial.println();
for (size_t i = 0; i < tokenCount; i++)
{
data.jsonObject().jsonObjectiterator(i,key,value);
jsonParseResult = data.jsonObject().parseResult();
Serial.print("KEY: ");
Serial.print(key);
Serial.print(", ");
Serial.print("VALUE: ");
Serial.print(value);
Serial.print(", ");
Serial.print("TYPE: ");
Serial.println(jsonParseResult.type);

}
}
26 changes: 25 additions & 1 deletion examples/Data_filter/Data_filter.ino
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@
//Define Firebase Data object
FirebaseData firebaseData;

void printJsonObjectContent(FirebaseData &data);

void setup()
{

Expand Down Expand Up @@ -113,7 +115,7 @@ void setup()

Serial.println("PASSED");
Serial.println("JSON DATA: ");
Serial.println(firebaseData.jsonData());
printJsonObjectContent(firebaseData);
Serial.println("------------------------------------");
Serial.println();
}
Expand All @@ -132,3 +134,25 @@ void setup()
void loop()
{
}

void printJsonObjectContent(FirebaseData &data){
size_t tokenCount = data.jsonObject().parse(false).getJsonObjectIteratorCount();
String key;
String value;
FirebaseJsonObject jsonParseResult;
Serial.println();
for (size_t i = 0; i < tokenCount; i++)
{
data.jsonObject().jsonObjectiterator(i,key,value);
jsonParseResult = data.jsonObject().parseResult();
Serial.print("KEY: ");
Serial.print(key);
Serial.print(", ");
Serial.print("VALUE: ");
Serial.print(value);
Serial.print(", ");
Serial.print("TYPE: ");
Serial.println(jsonParseResult.type);

}
}
27 changes: 26 additions & 1 deletion examples/Different_objects_stream/Different_objects_stream.ino
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@
FirebaseData firebaseData1;
FirebaseData firebaseData2;

void printJsonObjectContent(FirebaseData &data);

unsigned long sendDataPrevMillis1;

uint16_t count1;
Expand Down Expand Up @@ -110,7 +112,7 @@ void loop()
else if (firebaseData2.dataType() == "string")
Serial.println(firebaseData2.stringData());
else if (firebaseData2.dataType() == "json")
Serial.println(firebaseData2.jsonData());
printJsonObjectContent(firebaseData2);
else if (firebaseData2.dataType() == "blob")
{
std::vector<uint8_t> blob = firebaseData2.blobData();
Expand Down Expand Up @@ -166,4 +168,27 @@ void loop()
Serial.println(ESP.getFreeHeap());
Serial.println();
}
}


void printJsonObjectContent(FirebaseData &data){
size_t tokenCount = data.jsonObject().parse(false).getJsonObjectIteratorCount();
String key;
String value;
FirebaseJsonObject jsonParseResult;
Serial.println();
for (size_t i = 0; i < tokenCount; i++)
{
data.jsonObject().jsonObjectiterator(i,key,value);
jsonParseResult = data.jsonObject().parseResult();
Serial.print("KEY: ");
Serial.print(key);
Serial.print(", ");
Serial.print("VALUE: ");
Serial.print(value);
Serial.print(", ");
Serial.print("TYPE: ");
Serial.println(jsonParseResult.type);

}
}
32 changes: 28 additions & 4 deletions examples/ETag/ETag.ino
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,8 @@
//Define Firebase Data object
FirebaseData firebaseData;

void printJsonObjectContent(FirebaseData &data);

void setup()
{

Expand Down Expand Up @@ -74,7 +76,7 @@ void setup()
else if (firebaseData.dataType() == "string")
Serial.println(firebaseData.stringData());
else if (firebaseData.dataType() == "json")
Serial.println(firebaseData.jsonData());
printJsonObjectContent(firebaseData);
Serial.println("------------------------------------");
Serial.println();
}
Expand Down Expand Up @@ -108,7 +110,7 @@ void setup()
else if (firebaseData.dataType() == "string")
Serial.println(firebaseData.stringData());
else if (firebaseData.dataType() == "json")
Serial.println(firebaseData.jsonData());
printJsonObjectContent(firebaseData);
Serial.println("------------------------------------");
Serial.println();
}
Expand Down Expand Up @@ -142,7 +144,7 @@ void setup()
else if (firebaseData.dataType() == "string")
Serial.println(firebaseData.stringData());
else if (firebaseData.dataType() == "json")
Serial.println(firebaseData.jsonData());
printJsonObjectContent(firebaseData);
Serial.println("------------------------------------");
Serial.println();
}
Expand Down Expand Up @@ -171,7 +173,7 @@ void setup()
else if (firebaseData.dataType() == "string")
Serial.println(firebaseData.stringData());
else if (firebaseData.dataType() == "json")
Serial.println(firebaseData.jsonData());
printJsonObjectContent(firebaseData);
}

Serial.println("------------------------------------");
Expand Down Expand Up @@ -201,3 +203,25 @@ void setup()
void loop()
{
}

void printJsonObjectContent(FirebaseData &data){
size_t tokenCount = data.jsonObject().parse(false).getJsonObjectIteratorCount();
String key;
String value;
FirebaseJsonObject jsonParseResult;
Serial.println();
for (size_t i = 0; i < tokenCount; i++)
{
data.jsonObject().jsonObjectiterator(i,key,value);
jsonParseResult = data.jsonObject().parseResult();
Serial.print("KEY: ");
Serial.print(key);
Serial.print(", ");
Serial.print("VALUE: ");
Serial.print(value);
Serial.print(", ");
Serial.print("TYPE: ");
Serial.println(jsonParseResult.type);

}
}
Loading

0 comments on commit 469daf9

Please sign in to comment.