如何使用python动态导出方法到dbus,没有静态装饰器?

时间:2012-12-10 22:45:28

标签: python linux dbus

我在几个地方搜索了这个问题的答案,但我找不到一致的解决方案,而且有些太老了,不清楚。

我有一个classe,其中dbus的接口路径是在运行时生成的,因此我需要使用正确的接口导出方法,例如:

我的服务的一个实例使用接口br.example.MyInterface.Number1启动dbus,第二个服务实例使用br.example.MyInterface.Number2启动dbus,因此每个方法的装饰器将是:

br.example.MyInterface.Number1;和 br.example.MyInterface.Number2

无法使用@dbus.service.method('com.example.MyInterface.Number1')这样的静态装饰器,因为它们是不同的。

如何使用python在运行时将方法导出到dbus?

1 个答案:

答案 0 :(得分:0)

@dbus.service.method('com.example.MyInterface.Number%d' % (instancenum,))