将值转换为正确包装的dbus-python对象
项目描述
功能
此库包含一个名为make_class的函数,该函数接受一个D-Bus接口的XML规范。
>>> Klass = make_class("Klass", spec)
此调用生成一个名为Klass的Python类,该类有两个静态类成员:“Methods”和“Properties”。“Methods”类具有与接口中定义的每个方法对应的静态方法。每个方法以代理对象作为其第一个参数,后面跟任意数量的关键字参数,对应于方法的参数。 “Properties”类具有与接口中定义的每个属性对应的静态类。每个属性类可能具有静态的Get()或Set()方法,具体取决于其属性。
例如,假设接口定义了一个只读的Version属性,以下调用应返回一个值。
>>> Klass.Properties.Version.Get()
然而,由于Version是一个只读属性,以下调用应导致AttributeError失败。
>>> Klass.Properties.Version.Set("42")
同样,如果接口定义了一个名为Create的方法,它有一个名为name的字符串类型的参数,则以下调用应成功。
>>> Klass.Methods.Create(proxy, name="name")
Create方法在代理对象上调用方法,将force转换为dbus-python字符串类型。
另一方面,如果方法调用时参数类型不正确,将引发DPClientError异常,
>>> Klass.Methods.Create(proxy, name=false)
或关键字不正确,
>>> Klass.Methods.Create(proxy, force=false)
或缺少必要的所有关键字,
>>> Klass.Methods.Create(proxy)
错误
此库导出异常类型DPClientError及其所有子类型。如果在类生成期间或类的方法执行期间传播了任何其他类型的错误,则构成一个错误。
以下显示错误层次结构。破折号之后的条目表示异常包含的除消息之外的其他字段。只有错误类层次结构的叶子节点是直接构建的。
DPClientError
DPClientGenerationError 此异常在生成方法时发生错误时引发。此类异常可能由缺少必要属性或条目的自省数据引起。
DPClientRuntimeError - 接口名称 此异常在生成的方法执行时发生错误时引发。
DPClientInvalidArgError 此异常在要传递给D-Bus方法的参数不正确时引发。
DPClientKeywordError - 方法名称,期望和实际关键字 此异常在缺少或意外参数时引发。
DPClientMarshallingError - 原始参数 此异常在无法将参数转换为所需的dbus-python类型时引发。
DPClientInvocationError - 调用上下文 此异常在调用dbus-python方法并发生错误时引发。此异常的调用上下文用于区分方法调用、获取属性调用和设置属性调用。上下文是DPClientInvocationContext类型的对象。
以下显示DPClientInvocationContext层次结构。破折号之后的条目表示上下文中的字段。
DPClientInvocationContext
DPClientMethodCallContext - 方法名称,参数
DPClientGetPropertyContext - 属性名称
DPClientSetPropertyContext - 属性名称,值
依赖项
dbus-python
into-dbus-python
需求
此库与Python 2不兼容。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源代码分发
构建分发
dbus-python-client-gen-0.8.3.tar.gz的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | 741e11c296b3d55059e34a75d1b64b6999379b346db01e217a256f7e884952c1 |
|
MD5 | 8d6f897e29bc9c884ec62f6ff69f002d |
|
BLAKE2b-256 | 579a3976e1ba68b1bf82dc6b47b712d085d948c4dc7f844d797302676e4de305 |
哈希值 for dbus_python_client_gen-0.8.3-py3-none-any.whl
算法 | 散列摘要 | |
---|---|---|
SHA256 | 1a87b212b62052bc936c5994457578c580f50d95910460881ec803fadb50d68f |
|
MD5 | 80f83a0f20d8d0eee17203fb08450363 |
|
BLAKE2b-256 | d9be08a3b0f0f23cf97b06de086de0314f57d6f9026ad38b291ab3349f47f859 |