github.com/dbernstein1/tyk@v2.9.0-beta9-dl-apic+incompatible/coprocess/python/gateway.py (about) 1 """ 2 This module provides interface compatibility and flexibility for the C glue code in tyk/gateway_wrapper.c 3 """ 4 from sys import exc_info 5 6 import gateway_wrapper as gw 7 8 9 class TykGateway: 10 11 @classmethod 12 def store_data(cls, key, value, ttl): 13 gw.store_data(key, value, ttl) 14 15 @classmethod 16 def get_data(cls, key): 17 return gw.get_data(key) 18 19 @classmethod 20 def trigger_event(cls, event_name, payload): 21 gw.trigger_event(event_name, payload) 22 23 @classmethod 24 def log(cls, msg, level): 25 gw.log(msg, level) 26 27 @classmethod 28 def log_error(cls, *args): 29 excp = exc_info() 30 nargs = len(args) 31 # For simpler errors: 32 if nargs == 1: 33 cls.log(args[0], "error") 34 return 35 if nargs == 0: 36 cls.log("{0} {1}".format(excp[0], excp[1]), "error") 37 else: 38 cls.log("{0} {1} {2}".format(args[0], excp[0], excp[1]), "error")