def process(self): method = self.token.request.method self.query = self.token.request.args.get('query',"{}") self.query = json.loads(self.query) self.query=dict([("%s.%s" % (self.DATA_EL,k),v) for k,v in self.query.iteritems()]) self.order = self.token.request.args.get('order',"[]") self.order = json.loads(self.order) self.order=[("%s.%s" % (self.DATA_EL,k),v) for k,v in self.order] self.start = self.token.request.args.get('start',0) self.start = int(self.start) self.limit = self.token.request.args.get('limit',1000) self.limit = int(self.limit) if self.limit == 0: self.limit = None self.fields = self.token.request.args.get('fields') if self.fields != None: self.fields = json.loads(self.fields) self.fields =[ "%s.%s" % (self.DATA_EL,k) for k in self.fields] self.fields.append(self.META_EL) self.count = self.token.request.args.get('count',0) self.count = int(self.count) L.debug("DBOperation:: method=%r" % method) L.debug("DBOperation:: path=%r slug=%r data=%r" % (self.token.path, self.token.slug, self.token.data)) if method in ['GET', 'PUT', 'POST', 'DELETE']: getattr(self,method.lower())() L.debug("DBOperation:: result=%s" % snip(repr(self.token.response)))
def process(self): method = self.token.request.method self.query = self.token.request.args.get("query", "{}") self.query = json.loads(self.query) self.query = dict([("%s.%s" % (self.DATA_EL, k), v) for k, v in self.query.iteritems()]) self.order = self.token.request.args.get("order", "[]") self.order = json.loads(self.order) self.order = [("%s.%s" % (self.DATA_EL, k), v) for k, v in self.order] self.start = self.token.request.args.get("start", 0) self.start = int(self.start) self.limit = self.token.request.args.get("limit", 1000) self.limit = int(self.limit) if self.limit == 0: self.limit = None self.fields = self.token.request.args.get("fields") if self.fields != None: self.fields = json.loads(self.fields) self.fields = ["%s.%s" % (self.DATA_EL, k) for k in self.fields] self.fields.append(self.META_EL) self.count = self.token.request.args.get("count", 0) self.count = int(self.count) L.debug("DBOperation:: method=%r" % method) L.debug("DBOperation:: path=%r slug=%r data=%r" % (self.token.path, self.token.slug, self.token.data)) if method in ["GET", "PUT", "POST", "DELETE"]: getattr(self, method.lower())() L.debug("DBOperation:: result=%s" % snip(repr(self.token.response)))
def noslug(path): L.info("dbserver::noslug::%s:%s, %s" % (request.method, path, request.url)) response, content_type, headers = process(path, None) L.info("%s %s %s" % (snip(response), content_type, headers)) return Response(response=response, content_type=content_type, headers=headers)
def process(self): data = json.dumps(self.token.response) if self.token.request.method == "GET": if data != 'null': L.info("CacheSetter: storing in %s <== %s" % (self.token.cache_key, snip(str(data)))) store_in_cache(self.token.cache_key, data)
def process(self): data = json.dumps(self.token.response) if data != 'null': L.info("CacheSetter: storing in %s <== %s" % (self.token.cache_key, snip(str(data)))) store_in_cache( self.token.cache_key.encode('utf8').encode('hex'), data.encode('utf8').encode('hex'))
def process(self): self.token.cache_key = json.dumps(self.token.path) + '|' + json.dumps(self.token.slug) + '|' + '|'.join([ self.token.request.args.get(arg,'') for arg in self.ARGS_FOR_KEY ]) if self.token.request.args.get('hitcache',"1") == "0": L.info("Skipping cache as requested for %s/%s" % (self.token.path,self.token.slug)) return data = hit_cache(self.token.cache_key.encode('utf8').encode('hex')) L.info("Data for key %s == %s" % (self.token.cache_key,snip(repr(data)))) if data != None: self.token.response = json.loads(data.decode('hex').decode('utf8')) self.should_stop = True self.skip_to = "DataFormatter"
def process(self): for emitter in EMITTERS: E = Emitter.get_emitter(emitter) e = E(self.token) if e.condition(): L.debug("DataFormatter:: using emitter %s" % emitter) e.format() break else: emitter = "HtmlFormatter" E = Emitter.get_emitter(emitter) e = E(self.token) L.debug("DataFormatter:: using default emitter %s" % emitter) e.format() L.debug("DataFormatter:: token.response=%s (%s)" % (snip(repr(self.token.response)),self.token.content_type))
def process(self): for emitter in EMITTERS: E = Emitter.get_emitter(emitter) e = E(self.token) if e.condition(): L.debug("DataFormatter:: using emitter %s" % emitter) e.format() break else: emitter = "HtmlFormatter" E = Emitter.get_emitter(emitter) e = E(self.token) L.debug("DataFormatter:: using default emitter %s" % emitter) e.format() L.debug("DataFormatter:: token.response=%s (%s)" % (snip(repr(self.token.response)), self.token.content_type))
def process(self): self.token.cache_key = json.dumps(self.token.path) + '|' + json.dumps( self.token.slug) + '|' + '|'.join([ self.token.request.args.get(arg, '') for arg in self.ARGS_FOR_KEY ]) if self.token.request.args.get('hitcache', "1") == "0": L.info("Skipping cache as requested for %s/%s" % (self.token.path, self.token.slug)) return data = hit_cache(self.token.cache_key.encode('utf8').encode('hex')) L.info("Data for key %s == %s" % (self.token.cache_key, snip(repr(data)))) if data != None: self.token.response = json.loads(data.decode('hex').decode('utf8')) self.should_stop = True self.skip_to = "DataFormatter"
def process(self): self.token.cache_key = ( json.dumps(self.token.path) + "|" + json.dumps(self.token.slug) + "|" + "|".join([self.token.request.args.get(arg, "") for arg in self.ARGS_FOR_KEY]) ) if self.token.request.args.get("hitcache", "1") == "0": L.info("Skipping cache as requested for %s/%s" % (self.token.path, self.token.slug)) return if self.token.request.method == "GET": data = hit_cache(self.token.cache_key) L.info("Data for key %s == %s" % (self.token.cache_key, snip(repr(data)))) if data != None: self.token.response = json.loads(data) self.should_stop = True self.skip_to = "DataFormatter" else: clear_cache(self.token.cache_key) clear_cache_for_path(self.token.path)
def process(self): self.token.cache_key = json.dumps(self.token.path) + '|' + json.dumps( self.token.slug) + '|' + '|'.join([ self.token.request.args.get(arg, '') for arg in self.ARGS_FOR_KEY ]) if self.token.request.args.get('hitcache', "1") == "0": L.info("Skipping cache as requested for %s/%s" % (self.token.path, self.token.slug)) return if self.token.request.method == "GET": data = hit_cache(self.token.cache_key) L.info("Data for key %s == %s" % (self.token.cache_key, snip(repr(data)))) if data != None: self.token.response = json.loads(data) self.should_stop = True self.skip_to = "DataFormatter" else: clear_cache(self.token.cache_key) clear_cache_for_path(self.token.path)
def noslug(path): L.info("dbserver::noslug::%s:%s, %s" % (request.method,path,request.url)) response, content_type, headers = process(path,None) L.info("%s %s %s" % (snip(response), content_type, headers)) return Response(response=response, content_type=content_type, headers=headers)
def process(self): data = json.dumps(self.token.response) if self.token.request.method == "GET": if data != 'null': L.info("CacheSetter: storing in %s <== %s" % (self.token.cache_key,snip(str(data)))) store_in_cache(self.token.cache_key,data)
def process(self): data = json.dumps(self.token.response) if data != 'null': L.info("CacheSetter: storing in %s <== %s" % (self.token.cache_key,snip(str(data)))) store_in_cache(self.token.cache_key.encode('utf8').encode('hex'),data.encode('utf8').encode('hex'))