HiveNetCore.generic module

通用基础模块

class HiveNetCore.generic.CResult(code='00000', msg=None, error='', trace_str='', i18n_obj=None, i18n_msg_paras=())[源代码]

基类:NullObj

通用错误类定义, 便于规范所有的错误信息返回判断标准, 可直接在该类的实例对象上直接添加其他返回值

示例

def fun():

result = CResult(‘00000’,u’success’)

result.job = ‘NewJob’

result.k1 = 10

return result

__init__(code='00000', msg=None, error='', trace_str='', i18n_obj=None, i18n_msg_paras=())[源代码]

构造函数

参数
  • code (string) – default=’00000’, 错误码, ‘00000’代表成功, 参照HiveNet的错误码规范

  • msg (string) –

    default=None, 错误信息描述, 如果i18n_obj不为None时, 该参数传入的是国际化的消息ID

    注意: 如果初始化时不传入msg( 即msg=None时) , 自动通过code查找具体的错误信息, 且在i18n_obj为None时使用全局国际化对象处理国际化信息

  • error (string) – default=None, 发生异常时的异常类型type的字符串

  • trace_str (string) – default=’’, 错误追踪堆栈日志, 异常时的traceback.format_exc()

  • i18n_obj (SimpleI18N) – default=None, 国际化类的实例对象, 如不传入会尝试自动加载全局的国际化控件

  • i18n_msg_paras (tuple) – default=(), 与msg配套使用, 当使用国际化时, 可以传入变量, 用于替换msg中的$1占位符

change_code(code='00000', msg=None, i18n_msg_paras=None)[源代码]

改变错误码及错误信息

参数
  • code (string) – default=’00000’, 错误码

  • msg (string) –

    default=None, 错误信息描述, 如果i18n_obj不为None时, 该参数传入的是国际化的消息ID

    注意: 如果初始化时不传入msg( 即msg=None时) , 自动通过code查找具体的错误信息, 且在i18n_obj为None时使用全局国际化对象处理国际化信息

  • i18n_msg_paras (tuple) –

    default=(), 与msg配套使用, 当使用国际化时, 可以传入变量, 用于替换msg中的$1占位符

    注意: 如果初始化时不传入i18n_msg_paras( 即i18n_msg_paras=None时) , 代表不改变原来传入的占位符变量

is_success()[源代码]

判断当前错误对象是否成功

reset_msg()[源代码]

重新设置错误对象的msg显示值( 例如修改了国际化控件默认语言后处理)

reset_msg_by_code()[源代码]

根据错误码重置错误信息( 忽略原来的错误信息, 按HiveNet规范处理)

standard_copy_to(dest_obj)[源代码]

复制结果对象的标准返回值到新对象中

简单数据类型( int、string) 只要共享地址即可, 因为对变量重新复制会指向新的地址, 不会影响原来的变量值;复杂数据类型( dict等) 要通过deepcopy方式拷贝, 避免同一内存信息改变互相影响

参数

dest_obj (object) – 要复制到的CResult对象

class HiveNetCore.generic.NullObj[源代码]

基类:object

空对象定义类, 用于动态增加属性的使用场景

示例

msg_obj = NullObj()

msg_obj.text = u’动态添加属性’

static get_nullobj_from_dict(obj_dict)[源代码]

通过字典对象生成NullObj实例

参数

obj_dict (dict) – 字典对象

static get_object_attr_dict(obj, ignored_key=[])[源代码]

获取对象的属性清单字典( 循环递归获取)

参数
  • obj (object) – 要处理的对象

  • ignored_key (list) – default=[], 忽略的属性名清单

HiveNetCore.generic.null_fun(*args, **kwargs)[源代码]

空函数