25 #ifndef AOSSL_NEO4J_INCLUDE_NEO4J_INTERFACE_H_ 26 #define AOSSL_NEO4J_INCLUDE_NEO4J_INTERFACE_H_ 28 #include <neo4j-client.h> 30 #include <unordered_map> 33 #include "aossl/core/include/slot_pool.h" 42 const char * int_msg_cstr;
43 neo4j_result_stream_t *results = NULL;
47 int_msg =
"Error in Neo4j Request: " + msg;
48 int_msg_cstr = int_msg.c_str();
52 int_msg =
"Error in Neo4j Request: " + msg;
53 int_msg_cstr = int_msg.c_str();
58 ~
Neo4jException()
throw() {
if (results) {neo4j_close_results(results);}}
60 const char * what()
const throw() {
76 virtual bool get_bool_element(
unsigned int ind) = 0;
79 virtual int get_int_element(
unsigned int ind) = 0;
82 virtual double get_float_element(
unsigned int ind) = 0;
85 virtual std::string get_string_element(
unsigned int ind, \
86 int char_buffer_size) = 0;
89 virtual std::string get_string_element(
unsigned int ind) = 0;
92 virtual std::string to_string() = 0;
95 virtual unsigned int size() = 0;
107 virtual unsigned int size() = 0;
110 virtual bool element_exists(std::string key) = 0;
113 virtual std::string get_string_element(std::string key, \
114 int char_buffer_size) = 0;
117 virtual std::string get_string_element(std::string key) = 0;
120 virtual bool get_bool_element(std::string key) = 0;
123 virtual int get_int_element(std::string key) = 0;
126 virtual double get_float_element(std::string key) = 0;
132 virtual std::string to_string() = 0;
147 virtual bool is_node() = 0;
153 virtual bool is_edge() = 0;
159 virtual bool is_path() = 0;
162 virtual std::string to_string() = 0;
180 virtual std::string type() = 0;
186 virtual bool forward() = 0;
192 virtual unsigned int size() = 0;
212 virtual bool exists() = 0;
225 virtual void clear() = 0;
231 virtual bool empty() = 0;
234 virtual unsigned int length() = 0;
252 virtual int get_type() = 0;
255 virtual bool get_boolean_value() = 0;
258 virtual bool get_boolean_value(
int index) = 0;
261 virtual std::string get_string_value() = 0;
264 virtual std::string get_string_value(
int index) = 0;
267 virtual const char * get_cstring_value() = 0;
270 virtual int get_integer_value() = 0;
273 virtual int get_integer_value(
int index) = 0;
276 virtual double get_double_value() = 0;
279 virtual double get_double_value(
int index) = 0;
282 virtual bool is_array() = 0;
285 virtual unsigned int size() = 0;
288 virtual void add_value(
float new_val) = 0;
291 virtual void add_value(
int new_val) = 0;
294 virtual void add_value(
bool new_val) = 0;
297 virtual void add_value(std::string new_val) = 0;
300 virtual void add_value(
const char * new_val) = 0;
303 virtual neo4j_value_t get_neo4j_list() = 0;
323 std::unordered_map<std::string, Neo4jQueryParameterInterface*>\
328 std::unordered_map<std::string, Neo4jQueryParameterInterface*> \
332 #endif // AOSSL_NEO4J_INCLUDE_NEO4J_INTERFACE_H_ A Neo4j Object.
Definition: neo4j_interface.h:139
Neo4j Query Interface.
Definition: neo4j_interface.h:311
Neo4j Query Parameter Interface.
Definition: neo4j_interface.h:247
A Neo4j Map.
Definition: neo4j_interface.h:102
Tree of Query Results.
Definition: neo4j_interface.h:205
Definition: neo4j_interface.h:39
A Neo4j List.
Definition: neo4j_interface.h:71
Results Iterator for viewing query results.
Definition: neo4j_interface.h:220