From ae94d3e6d0d46248ac92ee24510eee3a91213605 Mon Sep 17 00:00:00 2001 From: Steve Nyemba Date: Sun, 26 Nov 2017 21:03:40 -0600 Subject: [PATCH] new feature with most of the data compiled (single call) --- src/api/index.py | 49 +++++++++++++++++++++++++++++++++---------- src/utils/register.py | 5 ++--- 2 files changed, 40 insertions(+), 14 deletions(-) diff --git a/src/api/index.py b/src/api/index.py index 783c381..2679db1 100755 --- a/src/api/index.py +++ b/src/api/index.py @@ -95,12 +95,7 @@ def register() : plan = body['plan'] handler = Register(write=class_write,read=class_read,store=p,default=default_plan,uid=uid) r = handler.register(plan) - if not r : - info = handler.get_info() - return "" if info is None else json.dumps(info) - else: - print r - return json.dumps(r) + return json.dumps(r) def __register(): """ @@ -154,7 +149,7 @@ def __register(): #@TODO : Initiate a retry # - args = dict(p) + args = json.loads(json.dumps(p)) couchdb = factory.instance(type=class_read,args=args) args['uid'] = r #-- returned uid plan = couchdb.view('plans/active',key=r) @@ -164,7 +159,7 @@ def __register(): args['uid'] = body['uid'] couchdb = factory.instance(type=class_read,args=args) document = couchdb.read() - print args,document + r = list(set(document['emails']) - set(body['uid'])) r = [item for item in r if len(item) == 36] if len(r) > 0 : @@ -193,13 +188,14 @@ def get_nodes(): """ r = [] try: + app_key = request.headers['key'] gReader = factory.instance(type=class_read,args=p) - r = gReader.view('summary/nodes',key=p['uid']) + r = gReader.view('summary/nodes',key=app_key) session['default.node'] = r[0] except Exception,e: print (e) return json.dumps(r) - + @app.route('/1/get/apps') def get_apps(): """ @@ -217,7 +213,38 @@ def get_apps(): print (e) return json.dumps(r) - +@app.route('/1/get/logs') +def get_logs() : + r = {} + #session['key'] = 'c259e8b1-e2fb-40df-bf03-f521f8ee352d' + key = session['key'] if 'key' in session else None + if key is None and 'key' in request.headers: + key = request.headers['key'] + if key is None : + return json.dumps(r) + else: + try: + + gReader = factory.instance(type=class_read,args=p) + plan = gReader.view('plans/active',key=key) + + if plan : + dbname = plan['name'] + args = str(json.dumps(p)) + args = json.loads(args) + args['dbname'] = dbname + scope = ['app_status','app_resources','folder_size','app_status_details'] + for id in scope : + gReader = factory.instance(type=class_read,args=args) + view = ('summary/'+id).strip() + r[id] = gReader.view(view,key=key) + + # r[id] = r[node_id] + + except Exception,e: + print (e) + return json.dumps(r) + @app.route('/1/get/summary/') def get_summary(id): """ diff --git a/src/utils/register.py b/src/utils/register.py index 68ec6c8..78eaa65 100755 --- a/src/utils/register.py +++ b/src/utils/register.py @@ -29,7 +29,6 @@ class Register : def register(self,pid): if pid is None : pid = self.default_plan - if self.is_registered(pid) == False: plan_info = self.__signup(pid) return self.__update(pid,plan_info) @@ -38,7 +37,7 @@ class Register : # If the user is already registered for this plan, there is nothing much to do # @TODO: Consider plan migration functionality {upgrade,downgrade} # - return None + return self.get_info() def __signup(self,pid): auid = str(uuid.uuid4()) @@ -71,7 +70,7 @@ class Register : key = self.get_key() return {"key":key,"name":plan['name'],"info":[plan['metadata']]} except Exception as e: - print (str(e)) + print "get_info ** ",(str(e)) return None def get_key(self) : store = self.factory.instance(type=self.class_read,args=self.store_args)