use dbus_tree::{Factory, MTSync, Method};
use crate::dbus_api::{
api::manager_2_4::methods::{create_pool, engine_state_report},
types::TData,
};
pub fn engine_state_report_method(
f: &Factory<MTSync<TData>, TData>,
) -> Method<MTSync<TData>, TData> {
f.method("EngineStateReport", (), engine_state_report)
.out_arg(("result", "s"))
.out_arg(("return_code", "q"))
.out_arg(("return_string", "s"))
}
pub fn create_pool_method(f: &Factory<MTSync<TData>, TData>) -> Method<MTSync<TData>, TData> {
f.method("CreatePool", (), create_pool)
.in_arg(("name", "s"))
.in_arg(("redundancy", "(bq)"))
.in_arg(("devices", "as"))
.in_arg(("key_desc", "(bs)"))
.in_arg(("clevis_info", "(b(ss))"))
.out_arg(("result", "(b(oao))"))
.out_arg(("return_code", "q"))
.out_arg(("return_string", "s"))
}