Go to the documentation of this file.
15 #ifndef ENGINES_GRAPH_DB_DATABASE_OPERATIONS_H_
16 #define ENGINES_GRAPH_DB_DATABASE_OPERATIONS_H_
19 #include <unordered_map>
27 #include <rapidjson/document.h>
50 rapidjson::Document&& input_json);
52 rapidjson::Document&& input_json);
54 rapidjson::Document&& input_json);
56 rapidjson::Document&& input_json);
59 std::unordered_map<std::string, std::string>&& params);
62 std::unordered_map<std::string, std::string>&& params);
64 rapidjson::Document&& input_json);
66 rapidjson::Document&& input_json);
77 std::vector<std::string>& input_property_names,
bool is_get =
false);
80 const std::string& src_label,
81 const std::string& dst_label,
82 const std::string& edge_label,
83 std::string& property_name,
96 std::vector<EdgeData>&& edge_data,
99 std::vector<EdgeData>&& edge_data,
102 std::vector<EdgeData>&& edge_data,
113 const std::string& property_name,
116 std::vector<VertexData>&& vertex_data,
117 const std::vector<std::string>& property_names,
GraphDBSession& session);
122 #endif // ENGINES_GRAPH_DB_DATABASE_OPERATIONS_H_
static VertexData inputVertex(const rapidjson::Value &vertex_json, const Schema &schema, GraphDBSession &session)
Definition: graph_db_operations.cc:226
static Status checkEdgeExistsWithInsert(const std::vector< EdgeData > &edge_data, GraphDBSession &session)
Definition: graph_db_operations.cc:354
Any pk_value
Definition: graph_db_operations.h:32
static Result< std::string > UpdateEdge(GraphDBSession &session, rapidjson::Document &&input_json)
Definition: graph_db_operations.cc:123
Definition: graph_db_operations.h:39
label_t edge_label_id
Definition: graph_db_operations.h:40
label_t label_id
Definition: graph_db_operations.h:33
~VertexData()
Definition: graph_db_operations.h:36
static Result< std::string > DeleteEdge(GraphDBSession &session, rapidjson::Document &&input_json)
Definition: graph_db_operations.cc:219
Definition: adj_list.h:23
Definition: graph_db_operations.h:47
static Result< std::string > GetVertex(GraphDBSession &session, std::unordered_map< std::string, std::string > &¶ms)
Definition: graph_db_operations.cc:145
static Status insertVertex(std::vector< VertexData > &&vertex_data, std::vector< EdgeData > &&edge_data, GraphDBSession &session)
Definition: graph_db_operations.cc:489
static Status singleInsertVertex(std::vector< VertexData > &&vertex_data, std::vector< EdgeData > &&edge_data, GraphDBSession &session)
Definition: graph_db_operations.cc:432
VertexData()
Definition: graph_db_operations.h:35
static Result< std::string > UpdateVertex(GraphDBSession &session, rapidjson::Document &&input_json)
Definition: graph_db_operations.cc:101
static Status updateVertex(std::vector< VertexData > &&vertex_data, GraphDBSession &session)
Definition: graph_db_operations.cc:542
static Status checkEdgeSchema(const Schema &schema, EdgeData &edge, const std::string &src_label, const std::string &dst_label, const std::string &edge_label, std::string &property_name, bool is_get=false)
Definition: graph_db_operations.cc:313
static Result< std::string > DeleteVertex(GraphDBSession &session, rapidjson::Document &&input_json)
Definition: graph_db_operations.cc:213
static Result< std::string > CreateEdge(GraphDBSession &session, rapidjson::Document &&input_json)
Definition: graph_db_operations.cc:71
Any src_pk_value
Definition: graph_db_operations.h:41
static Result< std::string > GetEdge(GraphDBSession &session, std::unordered_map< std::string, std::string > &¶ms)
Definition: graph_db_operations.cc:171
static Status checkVertexSchema(const Schema &schema, VertexData &vertex, const std::string &label, std::vector< std::string > &input_property_names, bool is_get=false)
Definition: graph_db_operations.cc:281
Definition: graph_db_session.h:36
static Status insertEdge(std::vector< EdgeData > &&edge_data, GraphDBSession &session)
Definition: graph_db_operations.cc:528
static EdgeData inputEdge(const rapidjson::Value &edge_json, const Schema &schema, GraphDBSession &session)
Definition: graph_db_operations.cc:253
std::vector< Any > properties
Definition: graph_db_operations.h:34
Definition: graph_db_operations.h:31
static Status checkVertexExists(const std::vector< VertexData > &vertex_data, GraphDBSession &session)
Definition: graph_db_operations.cc:414
static Result< rapidjson::Value > getVertex(std::vector< VertexData > &&vertex_data, const std::vector< std::string > &property_names, GraphDBSession &session)
Definition: graph_db_operations.cc:606
EdgeData()
Definition: graph_db_operations.h:43
label_t src_label_id
Definition: graph_db_operations.h:40
label_t dst_label_id
Definition: graph_db_operations.h:40
static Status updateEdge(std::vector< EdgeData > &&edge_data, GraphDBSession &session)
Definition: graph_db_operations.cc:569
~EdgeData()
Definition: graph_db_operations.h:44
Any dst_pk_value
Definition: graph_db_operations.h:41
Any property_value
Definition: graph_db_operations.h:42
static Status multiInsert(std::vector< VertexData > &&vertex_data, std::vector< EdgeData > &&edge_data, GraphDBSession &session)
Definition: graph_db_operations.cc:461
uint8_t label_t
Definition: types.h:32
static Status singleInsertEdge(std::vector< EdgeData > &&edge_data, GraphDBSession &session)
Definition: graph_db_operations.cc:508
static Status checkEdgeExists(const std::vector< EdgeData > &edge_data, GraphDBSession &session)
Definition: graph_db_operations.cc:384
static Result< rapidjson::Value > getEdge(std::vector< EdgeData > &&edge_data, const std::string &property_name, GraphDBSession &session)
Definition: graph_db_operations.cc:633
static Result< std::string > CreateVertex(GraphDBSession &session, rapidjson::Document &&input_json)
Definition: graph_db_operations.cc:29