def error_message(error_code: int) -> str: logger = logging.getLogger(__name__) name = 'vcx_error_c_message' c_error_code = c_uint32(error_code) getattr(_cdll(), name).restype = c_char_p err_msg = getattr(_cdll(), name)(c_error_code) logger.debug("error_message: Function %s[%s] returned error_message: %s", name, error_code, err_msg) return err_msg.decode()
def error_message(error_code: int) -> str: logger = logging.getLogger(__name__) name = 'vcx_error_c_message' c_error_code = c_uint32(error_code) getattr(_cdll(), name).restype = c_char_p err_msg = getattr(_cdll(), name)(c_error_code) logger.debug("error_message: Function %s[%s] returned error_message: %s", name, error_code, err_msg) return err_msg.decode()
def default_logger(): pattern = "info" c_pattern = c_char_p(pattern.encode('utf-8')) name = 'vcx_set_default_logger' err = getattr(_cdll(), name)(c_pattern) if err != ErrorCode.Success: raise VcxError(ErrorCode(err))
def shutdown(delete_wallet: bool): c_delete = c_bool(delete_wallet) name = 'vcx_shutdown' err = getattr(_cdll(), name)(c_delete) if err != ErrorCode.Success: raise VcxError(ErrorCode(err))
def do_call_sync(name: str, *args): logger = logging.getLogger(__name__) logger.debug("do_call_sync: >>> name: %s, args: %s", name, args) err = getattr(_cdll(), name)(*args) logger.debug("do_call_sync: <<< %s", err) return err
def do_call_sync(name: str, *args): logger = logging.getLogger(__name__) logger.debug("do_call_sync: >>> name: %s, args: %s", name, args) err = getattr(_cdll(), name)(*args) logger.debug("do_call_sync: <<< %s", err) return err
def update_institution_info(institution_name: str, logo_url: str) -> None: logger = logging.getLogger(__name__) name = 'vcx_update_institution_info' c_name = c_char_p(institution_name.encode('utf-8')) c_logo_url = c_char_p(logo_url.encode('utf-8')) getattr(_cdll(), name)(c_name, c_logo_url) logger.debug("vcx_init_with_config completed")
def get_error_details() -> Optional[dict]: logger = logging.getLogger(__name__) logger.debug("get_error_details: >>>") error_c = c_char_p() getattr(_cdll(), 'vcx_get_current_error')(byref(error_c)) error_details = json.loads(error_c.value.decode()) if error_c.value else None logger.debug("get_error_details: <<< error_details: %s", error_details) return error_details
def get_version() -> str: logger = logging.getLogger(__name__) name = 'vcx_version' c_version = getattr(_cdll(), name)() version = cast(c_version , c_char_p).value.decode() logger.debug("error_message: Function %s returned version: %s", name, version) return version
def release(name, handle): logger = logging.getLogger(__name__) err = getattr(_cdll(), name)(handle) logger.debug("release: Function %s returned err: %i", name, err) if err != ErrorCode.Success: logger.warning("release: Function %s returned error %i", name, err) raise VcxError(ErrorCode(err))
def get_error_details() -> Optional[dict]: logger = logging.getLogger(__name__) logger.debug("get_error_details: >>>") error_c = c_char_p() getattr(_cdll(), 'vcx_get_current_error')(byref(error_c)) error_details = json.loads(error_c.value.decode()) if error_c.value else None logger.debug("get_error_details: <<< error_details: %s", error_details) return error_details
def error_message(error_code: int) -> str: logger = logging.getLogger(__name__) name = 'vcx_error_c_message' c_error_code = c_uint32(error_code) c_err_msg = getattr(_cdll(), name)(c_error_code) err_msg = cast(c_err_msg, c_char_p).value.decode() logger.debug("error_message: Function %s returned error_message: %s", name, err_msg) return err_msg
def do_call(name: str, *args): logger = logging.getLogger(__name__) logger.debug("do_call: >>> name: %s, args: %s", name, args) event_loop = asyncio.get_event_loop() future = event_loop.create_future() command_handle = next(_futures_counter) _futures[command_handle] = (event_loop, future) err = getattr(_cdll(), name)(command_handle, *args) logger.debug("do_call: Function %s returned err: %i", name, err) if err != ErrorCode.Success: logger.warning("_do_call: Function %s returned error %i", name, err) future.set_exception(VcxError(ErrorCode(err))) logger.debug("do_call: <<< %s", future) return future
def do_call(name: str, *args): logger = logging.getLogger(__name__) logger.debug("do_call: >>> name: %s, args: %s", name, args) event_loop = asyncio.get_event_loop() future = event_loop.create_future() command_handle = next(_futures_counter) _futures[command_handle] = (event_loop, future) err = getattr(_cdll(), name)(command_handle, *args) logger.debug("do_call: Function %s returned err: %i", name, err) if err != ErrorCode.Success: logger.warning("_do_call: Function %s returned error %i", name, err) error_details = get_error_details() future.set_exception(VcxError(ErrorCode(err), error_details)) logger.debug("do_call: <<< %s", future) return future
def set_logger(user_set_logger_fn): logger = Logger() log_cb_converter = CFUNCTYPE(None, c_uint32, c_char_p, c_char_p, c_char_p, c_char_p, c_uint32) f2 = log_cb_converter(user_set_logger_fn) logger.log = f2 c_flush_converter = CFUNCTYPE(None, c_void_p) c_flush_fn = c_flush_converter(flush_cb) logger.flush = c_flush_fn _logger_obj_ptr = ctypes.pointer(logger) void_pointer_context = ctypes.cast(_logger_obj_ptr, ctypes.c_void_p) set_logger_converter = CFUNCTYPE(None, c_void_p, c_uint32, c_char_p, c_char_p, c_char_p, c_char_p, c_uint32) c_set_logger_fn = set_logger_converter(set_logger_fn) name = 'vcx_set_logger' err = getattr(_cdll(), name)(void_pointer_context, None, c_set_logger_fn, c_flush_fn) if err != ErrorCode.Success: raise VcxError(ErrorCode(err))
def mint_tokens(): name = 'vcx_mint_tokens' getattr(_cdll(), name)(None, None)
def get_logger(context, enabled_cb, log_cb, flush_cb): name = 'vcx_get_logger' err = getattr(_cdll(), name)(context, enabled_cb, log_cb, flush_cb) if err != ErrorCode.Success: raise VcxError(ErrorCode(err))