3 个版本
0.1.3 | 2019年9月28日 |
---|---|
0.1.2 | 2019年9月5日 |
0.1.1 | 2019年5月5日 |
#1019 在 Unix API 中
105KB
2.5K SLoC
connman-rs
一个使用 dbus-tokio
和 futures
抽象 D-Bus 层的 ConnMan API 库。
该 API 仍在开发中,可能会发生变化。
用法
使用以下命令将 connman-rs 添加到您的 Cargo.toml
中:
[dependencies]
connman = "0.1"
示例
以下示例演示了如何创建一个 Manager
并列出可用的服务。
extern crate connman;
extern crate dbus;
extern crate dbus_tokio;
extern crate tokio;
use connman::Manager;
use dbus::{BusType, Connection};
use dbus_tokio::AConnection;
use tokio::reactor::Handle;
use tokio::runtime::current_thread::Runtime;
use std::rc::Rc;
fn main() {
let mut runtime = Runtime::new().unwrap();
let conn = Rc::new(Connection::get_private(BusType::System).unwrap());
let aconn = Rc::new(AConnection::new(conn.clone(), Handle::default(), &mut runtime).unwrap());
let manager = Manager::new(aconn);
let f = manager.get_services()
.and_then(|services| {
for svc in services {
// Dump service info
println!("Found service: {:?}", svc)
}
Ok(())
});
runtime.block_on(f).unwrap();
}
许可证
许可协议为以下之一:
- Apache License,版本 2.0,(LICENSE-APACHE 或 http://www.apache.org/licenses/LICENSE-2.0)
- MIT 许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
由您选择。
贡献
除非您明确声明,否则任何旨在包含在作品中的有意贡献,根据 Apache-2.0 许可证定义,将根据上述方式双重许可,不附加任何额外条款或条件。
依赖关系
~9MB
~174K SLoC