aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMuriithi Frederick Muriuki2018-02-05 20:01:45 +0300
committerPjotr Prins2018-03-26 09:29:29 +0000
commita494260a8f9cf0e3ecf0c428bb70d4066623f1dd (patch)
tree2b389bf76e80832df93a8b00c4cd6604afa73556
parentdfc415edf77279078503f7b09ac8c14a442d5db3 (diff)
downloadgenenetwork2-a494260a8f9cf0e3ecf0c428bb70d4066623f1dd.tar.gz
Refactor common items to more generic methods.
* Refactor code that can be used in more than one place to a more generic method/function that's called by other methods
-rw-r--r--wqflask/utility/elasticsearch_tools.py24
1 files changed, 13 insertions, 11 deletions
diff --git a/wqflask/utility/elasticsearch_tools.py b/wqflask/utility/elasticsearch_tools.py
index 8b8ad9cc..ea636b2e 100644
--- a/wqflask/utility/elasticsearch_tools.py
+++ b/wqflask/utility/elasticsearch_tools.py
@@ -11,25 +11,27 @@ except:
es = None
def get_user_by_unique_column(column_name, column_value):
- user_details = None
+ return get_item_by_unique_column(column_name, column_value, index="users", doc_type="local")
+
+def save_user(user, user_id):
+ es_save_data("users", "local", user, user_id)
+
+def get_item_by_unique_column(column_name, column_value, index, doc_type):
+ item_details = None
try:
response = es.search(
- index = "users"
- , doc_type = "local"
+ index = index
+ , doc_type = doc_type
, body = {
"query": { "match": { column_name: column_value } }
})
if len(response["hits"]["hits"]) > 0:
- user_details = response["hits"]["hits"][0]["_source"]
+ item_details = response["hits"]["hits"][0]["_source"]
except TransportError as te:
pass
- return user_details
+ return item_details
-def save_user(user, user_id, index="users", doc_type="local"):
+def es_save_data(index, doc_type, data_item, data_id,):
from time import sleep
- es = Elasticsearch([{
- "host": ELASTICSEARCH_HOST
- , "port": ELASTICSEARCH_PORT
- }])
- es.create(index, doc_type, body=user, id=user_id)
+ es.create(index, doc_type, body=data_item, id=data_id)
sleep(1) # Delay 1 second to allow indexing