MCPcopy Create free account
hub / github.com/apache/impala / TMultiEdgeToJSON

Method TMultiEdgeToJSON

be/src/util/lineage-util.h:60–83  ·  view source on GitHub ↗

Serializes a TMultiEdge object to JSON

Source from the content-addressed store, hash-verified

58
59 /// Serializes a TMultiEdge object to JSON
60 static void TMultiEdgeToJSON(const TMultiEdge &obj,
61 rapidjson::Writer<rapidjson::StringBuffer>* writer) {
62 writer->StartObject();
63 // Write source vertices
64 writer->String("sources");
65 writer->StartArray();
66 for(int i=0; i < obj.sources.size(); ++i) {
67 writer->Int64(obj.sources[i].id);
68 }
69 writer->EndArray();
70 // Write target vertices
71 writer->String("targets");
72 writer->StartArray();
73 for(int i=0; i < obj.targets.size(); ++i) {
74 writer->Int64(obj.targets[i].id);
75 }
76 writer->EndArray();
77 // Write edgetype
78 writer->String("edgeType");
79 string edge_type =
80 (obj.edgetype == TEdgeType::PROJECTION) ? "PROJECTION" : "PREDICATE";
81 writer->String(edge_type);
82 writer->EndObject();
83 }
84
85 public:
86 /// Serializes a TLineageGraph object to JSON

Callers

nothing calls this directly

Calls 7

StartObjectMethod · 0.45
StringMethod · 0.45
StartArrayMethod · 0.45
sizeMethod · 0.45
Int64Method · 0.45
EndArrayMethod · 0.45
EndObjectMethod · 0.45

Tested by

no test coverage detected