diff options
| author | LV-426 <lv-426@taproot.org.il> | 2015-05-17 18:09:04 +0300 |
|---|---|---|
| committer | LV-426 <lv-426@taproot.org.il> | 2015-05-17 18:09:04 +0300 |
| commit | 547d55621499a26055d59ce2f84516693fffb7aa (patch) | |
| tree | fc1173ee4d0ac6e10c9d4bac6770fefe56b4bf36 /src/server/neo4j_cypher.py | |
| parent | ba36c0820bc023fe548ec817cb434bc387a1baa2 (diff) | |
DBO_raw_query_set - [!] use discouraged, work around queries the parser can't handle
Diffstat (limited to 'src/server/neo4j_cypher.py')
| -rw-r--r-- | src/server/neo4j_cypher.py | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/src/server/neo4j_cypher.py b/src/server/neo4j_cypher.py index 6d1cfa57..31a73450 100644 --- a/src/server/neo4j_cypher.py +++ b/src/server/neo4j_cypher.py @@ -3,12 +3,14 @@ Neo4j DB object """ from enum import Enum -from neo4j_cypher_parser import Cypher_Parser, e_clause__where, e_keyword,\ - e_value import logging + +from neo4j_cypher_parser import Cypher_Parser, e_clause__where, e_keyword, \ + e_value import neo4j_cypher_parser import neo4j_schema + log = logging.getLogger('rhizi') class Query_Struct_Type(Enum): @@ -44,6 +46,9 @@ class Query_Struct_Type(Enum): class DB_Query(object): + """ + DB query object + """ def __init__(self, q_arr, param_set={}): """ @@ -114,6 +119,22 @@ class DB_Query(object): def str__cypher_query(self): return self.pt_root.str__cypher_query() +class DB_Raw_Query(object): + """ + Raw DB query object which does not undergo parsing + """ + + def __init__(self, q_arr, param_set={}): + self.q_arr = q_arr + self.param_set = param_set + + def __iter__(self): + for keyword, clause_set in self.pt_root.index__kw_to_clause_set().items(): + yield keyword, clause_set + + def str__cypher_query(self): + return ' '.join(self.q_arr) + class DB_row(object): def __init__(self, data): self.data = data |
