2020-05-11 00:48:18 +01:00
// This code was autogenerated with `dbus-codegen-rust --file telepathy-spec/spec/Call_Stream_Endpoint.xml -i org.freedesktop.Telepathy -a AsRefClosure -o src/telepathy/call_stream_endpoint.rs`, see https://github.com/diwic/dbus-rs
2020-05-08 20:38:30 +01:00
use dbus ;
use dbus ::arg ;
use dbus ::tree ;
pub trait Call1StreamEndpoint {
fn set_selected_candidate_pair (
& self ,
local_candidate : (
u32 ,
& str ,
u32 ,
::std ::collections ::HashMap < & str , arg ::Variant < Box < dyn arg ::RefArg > > > ,
) ,
remote_candidate : (
u32 ,
& str ,
u32 ,
::std ::collections ::HashMap < & str , arg ::Variant < Box < dyn arg ::RefArg > > > ,
) ,
) -> Result < ( ) , tree ::MethodErr > ;
fn set_endpoint_state_ ( & self , component : u32 , state : u32 ) -> Result < ( ) , tree ::MethodErr > ;
fn accept_selected_candidate_pair (
& self ,
local_candidate : (
u32 ,
& str ,
u32 ,
::std ::collections ::HashMap < & str , arg ::Variant < Box < dyn arg ::RefArg > > > ,
) ,
remote_candidate : (
u32 ,
& str ,
u32 ,
::std ::collections ::HashMap < & str , arg ::Variant < Box < dyn arg ::RefArg > > > ,
) ,
) -> Result < ( ) , tree ::MethodErr > ;
fn reject_selected_candidate_pair (
& self ,
local_candidate : (
u32 ,
& str ,
u32 ,
::std ::collections ::HashMap < & str , arg ::Variant < Box < dyn arg ::RefArg > > > ,
) ,
remote_candidate : (
u32 ,
& str ,
u32 ,
::std ::collections ::HashMap < & str , arg ::Variant < Box < dyn arg ::RefArg > > > ,
) ,
) -> Result < ( ) , tree ::MethodErr > ;
fn set_controlling_ ( & self , controlling : bool ) -> Result < ( ) , tree ::MethodErr > ;
fn remote_credentials ( & self ) -> Result < ( String , String ) , tree ::MethodErr > ;
fn remote_candidates (
& self ,
) -> Result <
Vec < (
u32 ,
String ,
u32 ,
::std ::collections ::HashMap < String , arg ::Variant < Box < dyn arg ::RefArg + 'static > > > ,
) > ,
tree ::MethodErr ,
> ;
fn selected_candidate_pairs (
& self ,
) -> Result <
Vec < (
(
u32 ,
String ,
u32 ,
::std ::collections ::HashMap < String , arg ::Variant < Box < dyn arg ::RefArg + 'static > > > ,
) ,
(
u32 ,
String ,
u32 ,
::std ::collections ::HashMap < String , arg ::Variant < Box < dyn arg ::RefArg + 'static > > > ,
) ,
) > ,
tree ::MethodErr ,
> ;
fn endpoint_state ( & self ) -> Result < ::std ::collections ::HashMap < u32 , u32 > , tree ::MethodErr > ;
fn transport ( & self ) -> Result < u32 , tree ::MethodErr > ;
fn controlling ( & self ) -> Result < bool , tree ::MethodErr > ;
fn is_icelite ( & self ) -> Result < bool , tree ::MethodErr > ;
}
pub fn call1_stream_endpoint_server < F , T , D > (
factory : & tree ::Factory < tree ::MTFn < D > , D > ,
data : D ::Interface ,
f : F ,
) -> tree ::Interface < tree ::MTFn < D > , D >
where
D : tree ::DataType ,
D ::Method : Default ,
D ::Property : Default ,
D ::Signal : Default ,
2020-05-11 00:48:18 +01:00
T : AsRef < dyn Call1StreamEndpoint > ,
F : 'static + Fn ( & tree ::MethodInfo < tree ::MTFn < D > , D > ) -> T ,
2020-05-08 20:38:30 +01:00
{
let i = factory . interface ( " org.freedesktop.Telepathy.Call1.Stream.Endpoint " , data ) ;
let f = ::std ::sync ::Arc ::new ( f ) ;
let fclone = f . clone ( ) ;
let h = move | minfo : & tree ::MethodInfo < tree ::MTFn < D > , D > | {
let mut i = minfo . msg . iter_init ( ) ;
let local_candidate : (
u32 ,
& str ,
u32 ,
::std ::collections ::HashMap < & str , arg ::Variant < Box < dyn arg ::RefArg > > > ,
) = i . read ( ) ? ;
let remote_candidate : (
u32 ,
& str ,
u32 ,
::std ::collections ::HashMap < & str , arg ::Variant < Box < dyn arg ::RefArg > > > ,
) = i . read ( ) ? ;
2020-05-11 00:48:18 +01:00
let dd = fclone ( minfo ) ;
let d = dd . as_ref ( ) ;
2020-05-08 20:38:30 +01:00
d . set_selected_candidate_pair ( local_candidate , remote_candidate ) ? ;
let rm = minfo . msg . method_return ( ) ;
Ok ( vec! [ rm ] )
} ;
let m = factory . method ( " SetSelectedCandidatePair " , Default ::default ( ) , h ) ;
let m = m . in_arg ( ( " Local_Candidate " , " (usua{sv}) " ) ) ;
let m = m . in_arg ( ( " Remote_Candidate " , " (usua{sv}) " ) ) ;
let i = i . add_m ( m ) ;
let fclone = f . clone ( ) ;
let h = move | minfo : & tree ::MethodInfo < tree ::MTFn < D > , D > | {
let mut i = minfo . msg . iter_init ( ) ;
let component : u32 = i . read ( ) ? ;
let state : u32 = i . read ( ) ? ;
2020-05-11 00:48:18 +01:00
let dd = fclone ( minfo ) ;
let d = dd . as_ref ( ) ;
2020-05-08 20:38:30 +01:00
d . set_endpoint_state_ ( component , state ) ? ;
let rm = minfo . msg . method_return ( ) ;
Ok ( vec! [ rm ] )
} ;
let m = factory . method ( " SetEndpointState " , Default ::default ( ) , h ) ;
let m = m . in_arg ( ( " Component " , " u " ) ) ;
let m = m . in_arg ( ( " State " , " u " ) ) ;
let i = i . add_m ( m ) ;
let fclone = f . clone ( ) ;
let h = move | minfo : & tree ::MethodInfo < tree ::MTFn < D > , D > | {
let mut i = minfo . msg . iter_init ( ) ;
let local_candidate : (
u32 ,
& str ,
u32 ,
::std ::collections ::HashMap < & str , arg ::Variant < Box < dyn arg ::RefArg > > > ,
) = i . read ( ) ? ;
let remote_candidate : (
u32 ,
& str ,
u32 ,
::std ::collections ::HashMap < & str , arg ::Variant < Box < dyn arg ::RefArg > > > ,
) = i . read ( ) ? ;
2020-05-11 00:48:18 +01:00
let dd = fclone ( minfo ) ;
let d = dd . as_ref ( ) ;
2020-05-08 20:38:30 +01:00
d . accept_selected_candidate_pair ( local_candidate , remote_candidate ) ? ;
let rm = minfo . msg . method_return ( ) ;
Ok ( vec! [ rm ] )
} ;
let m = factory . method ( " AcceptSelectedCandidatePair " , Default ::default ( ) , h ) ;
let m = m . in_arg ( ( " Local_Candidate " , " (usua{sv}) " ) ) ;
let m = m . in_arg ( ( " Remote_Candidate " , " (usua{sv}) " ) ) ;
let i = i . add_m ( m ) ;
let fclone = f . clone ( ) ;
let h = move | minfo : & tree ::MethodInfo < tree ::MTFn < D > , D > | {
let mut i = minfo . msg . iter_init ( ) ;
let local_candidate : (
u32 ,
& str ,
u32 ,
::std ::collections ::HashMap < & str , arg ::Variant < Box < dyn arg ::RefArg > > > ,
) = i . read ( ) ? ;
let remote_candidate : (
u32 ,
& str ,
u32 ,
::std ::collections ::HashMap < & str , arg ::Variant < Box < dyn arg ::RefArg > > > ,
) = i . read ( ) ? ;
2020-05-11 00:48:18 +01:00
let dd = fclone ( minfo ) ;
let d = dd . as_ref ( ) ;
2020-05-08 20:38:30 +01:00
d . reject_selected_candidate_pair ( local_candidate , remote_candidate ) ? ;
let rm = minfo . msg . method_return ( ) ;
Ok ( vec! [ rm ] )
} ;
let m = factory . method ( " RejectSelectedCandidatePair " , Default ::default ( ) , h ) ;
let m = m . in_arg ( ( " Local_Candidate " , " (usua{sv}) " ) ) ;
let m = m . in_arg ( ( " Remote_Candidate " , " (usua{sv}) " ) ) ;
let i = i . add_m ( m ) ;
let fclone = f . clone ( ) ;
let h = move | minfo : & tree ::MethodInfo < tree ::MTFn < D > , D > | {
let mut i = minfo . msg . iter_init ( ) ;
let controlling : bool = i . read ( ) ? ;
2020-05-11 00:48:18 +01:00
let dd = fclone ( minfo ) ;
let d = dd . as_ref ( ) ;
2020-05-08 20:38:30 +01:00
d . set_controlling_ ( controlling ) ? ;
let rm = minfo . msg . method_return ( ) ;
Ok ( vec! [ rm ] )
} ;
let m = factory . method ( " SetControlling " , Default ::default ( ) , h ) ;
let m = m . in_arg ( ( " Controlling " , " b " ) ) ;
let i = i . add_m ( m ) ;
let p = factory . property ::< ( & str , & str ) , _ > ( " RemoteCredentials " , Default ::default ( ) ) ;
let p = p . access ( tree ::Access ::Read ) ;
let fclone = f . clone ( ) ;
let p = p . on_get ( move | a , pinfo | {
let minfo = pinfo . to_method_info ( ) ;
2020-05-11 00:48:18 +01:00
let dd = fclone ( & minfo ) ;
let d = dd . as_ref ( ) ;
2020-05-08 20:38:30 +01:00
a . append ( d . remote_credentials ( ) ? ) ;
Ok ( ( ) )
} ) ;
let i = i . add_p ( p ) ;
let p = factory . property ::< Vec < (
u32 ,
& str ,
u32 ,
::std ::collections ::HashMap < & str , arg ::Variant < Box < dyn arg ::RefArg > > > ,
) > , _ > ( " RemoteCandidates " , Default ::default ( ) ) ;
let p = p . access ( tree ::Access ::Read ) ;
let fclone = f . clone ( ) ;
let p = p . on_get ( move | a , pinfo | {
let minfo = pinfo . to_method_info ( ) ;
2020-05-11 00:48:18 +01:00
let dd = fclone ( & minfo ) ;
let d = dd . as_ref ( ) ;
2020-05-08 20:38:30 +01:00
a . append ( d . remote_candidates ( ) ? ) ;
Ok ( ( ) )
} ) ;
let i = i . add_p ( p ) ;
let p = factory . property ::< Vec < (
(
u32 ,
& str ,
u32 ,
::std ::collections ::HashMap < & str , arg ::Variant < Box < dyn arg ::RefArg > > > ,
) ,
(
u32 ,
& str ,
u32 ,
::std ::collections ::HashMap < & str , arg ::Variant < Box < dyn arg ::RefArg > > > ,
) ,
) > , _ > ( " SelectedCandidatePairs " , Default ::default ( ) ) ;
let p = p . access ( tree ::Access ::Read ) ;
let fclone = f . clone ( ) ;
let p = p . on_get ( move | a , pinfo | {
let minfo = pinfo . to_method_info ( ) ;
2020-05-11 00:48:18 +01:00
let dd = fclone ( & minfo ) ;
let d = dd . as_ref ( ) ;
2020-05-08 20:38:30 +01:00
a . append ( d . selected_candidate_pairs ( ) ? ) ;
Ok ( ( ) )
} ) ;
let i = i . add_p ( p ) ;
let p = factory
. property ::< ::std ::collections ::HashMap < u32 , u32 > , _ > ( " EndpointState " , Default ::default ( ) ) ;
let p = p . access ( tree ::Access ::Read ) ;
let fclone = f . clone ( ) ;
let p = p . on_get ( move | a , pinfo | {
let minfo = pinfo . to_method_info ( ) ;
2020-05-11 00:48:18 +01:00
let dd = fclone ( & minfo ) ;
let d = dd . as_ref ( ) ;
2020-05-08 20:38:30 +01:00
a . append ( d . endpoint_state ( ) ? ) ;
Ok ( ( ) )
} ) ;
let i = i . add_p ( p ) ;
let p = factory . property ::< u32 , _ > ( " Transport " , Default ::default ( ) ) ;
let p = p . access ( tree ::Access ::Read ) ;
let fclone = f . clone ( ) ;
let p = p . on_get ( move | a , pinfo | {
let minfo = pinfo . to_method_info ( ) ;
2020-05-11 00:48:18 +01:00
let dd = fclone ( & minfo ) ;
let d = dd . as_ref ( ) ;
2020-05-08 20:38:30 +01:00
a . append ( d . transport ( ) ? ) ;
Ok ( ( ) )
} ) ;
let i = i . add_p ( p ) ;
let p = factory . property ::< bool , _ > ( " Controlling " , Default ::default ( ) ) ;
let p = p . access ( tree ::Access ::Read ) ;
let fclone = f . clone ( ) ;
let p = p . on_get ( move | a , pinfo | {
let minfo = pinfo . to_method_info ( ) ;
2020-05-11 00:48:18 +01:00
let dd = fclone ( & minfo ) ;
let d = dd . as_ref ( ) ;
2020-05-08 20:38:30 +01:00
a . append ( d . controlling ( ) ? ) ;
Ok ( ( ) )
} ) ;
let i = i . add_p ( p ) ;
let p = factory . property ::< bool , _ > ( " IsICELite " , Default ::default ( ) ) ;
let p = p . access ( tree ::Access ::Read ) ;
let fclone = f . clone ( ) ;
let p = p . on_get ( move | a , pinfo | {
let minfo = pinfo . to_method_info ( ) ;
2020-05-11 00:48:18 +01:00
let dd = fclone ( & minfo ) ;
let d = dd . as_ref ( ) ;
2020-05-08 20:38:30 +01:00
a . append ( d . is_icelite ( ) ? ) ;
Ok ( ( ) )
} ) ;
let i = i . add_p ( p ) ;
let s = factory . signal ( " RemoteCredentialsSet " , Default ::default ( ) ) ;
let s = s . arg ( ( " Username " , " s " ) ) ;
let s = s . arg ( ( " Password " , " s " ) ) ;
let i = i . add_s ( s ) ;
let s = factory . signal ( " RemoteCandidatesAdded " , Default ::default ( ) ) ;
let s = s . arg ( ( " Candidates " , " a(usua{sv}) " ) ) ;
let i = i . add_s ( s ) ;
let s = factory . signal ( " CandidatePairSelected " , Default ::default ( ) ) ;
let s = s . arg ( ( " Local_Candidate " , " (usua{sv}) " ) ) ;
let s = s . arg ( ( " Remote_Candidate " , " (usua{sv}) " ) ) ;
let i = i . add_s ( s ) ;
let s = factory . signal ( " EndpointStateChanged " , Default ::default ( ) ) ;
let s = s . arg ( ( " Component " , " u " ) ) ;
let s = s . arg ( ( " State " , " u " ) ) ;
let i = i . add_s ( s ) ;
let s = factory . signal ( " ControllingChanged " , Default ::default ( ) ) ;
let s = s . arg ( ( " Controlling " , " b " ) ) ;
let i = i . add_s ( s ) ;
i
}
#[ derive(Debug) ]
pub struct Call1StreamEndpointRemoteCredentialsSet {
pub username : String ,
pub password : String ,
}
impl arg ::AppendAll for Call1StreamEndpointRemoteCredentialsSet {
fn append ( & self , i : & mut arg ::IterAppend ) {
arg ::RefArg ::append ( & self . username , i ) ;
arg ::RefArg ::append ( & self . password , i ) ;
}
}
impl arg ::ReadAll for Call1StreamEndpointRemoteCredentialsSet {
fn read ( i : & mut arg ::Iter ) -> Result < Self , arg ::TypeMismatchError > {
Ok ( Call1StreamEndpointRemoteCredentialsSet {
username : i . read ( ) ? ,
password : i . read ( ) ? ,
} )
}
}
impl dbus ::message ::SignalArgs for Call1StreamEndpointRemoteCredentialsSet {
const NAME : & 'static str = " RemoteCredentialsSet " ;
const INTERFACE : & 'static str = " org.freedesktop.Telepathy.Call1.Stream.Endpoint " ;
}
#[ derive(Debug) ]
pub struct Call1StreamEndpointRemoteCandidatesAdded {
pub candidates : Vec < (
u32 ,
String ,
u32 ,
::std ::collections ::HashMap < String , arg ::Variant < Box < dyn arg ::RefArg + 'static > > > ,
) > ,
}
impl arg ::AppendAll for Call1StreamEndpointRemoteCandidatesAdded {
fn append ( & self , i : & mut arg ::IterAppend ) {
arg ::RefArg ::append ( & self . candidates , i ) ;
}
}
impl arg ::ReadAll for Call1StreamEndpointRemoteCandidatesAdded {
fn read ( i : & mut arg ::Iter ) -> Result < Self , arg ::TypeMismatchError > {
Ok ( Call1StreamEndpointRemoteCandidatesAdded {
candidates : i . read ( ) ? ,
} )
}
}
impl dbus ::message ::SignalArgs for Call1StreamEndpointRemoteCandidatesAdded {
const NAME : & 'static str = " RemoteCandidatesAdded " ;
const INTERFACE : & 'static str = " org.freedesktop.Telepathy.Call1.Stream.Endpoint " ;
}
#[ derive(Debug) ]
pub struct Call1StreamEndpointCandidatePairSelected {
pub local_candidate : (
u32 ,
String ,
u32 ,
::std ::collections ::HashMap < String , arg ::Variant < Box < dyn arg ::RefArg + 'static > > > ,
) ,
pub remote_candidate : (
u32 ,
String ,
u32 ,
::std ::collections ::HashMap < String , arg ::Variant < Box < dyn arg ::RefArg + 'static > > > ,
) ,
}
impl arg ::AppendAll for Call1StreamEndpointCandidatePairSelected {
fn append ( & self , i : & mut arg ::IterAppend ) {
arg ::RefArg ::append ( & self . local_candidate , i ) ;
arg ::RefArg ::append ( & self . remote_candidate , i ) ;
}
}
impl arg ::ReadAll for Call1StreamEndpointCandidatePairSelected {
fn read ( i : & mut arg ::Iter ) -> Result < Self , arg ::TypeMismatchError > {
Ok ( Call1StreamEndpointCandidatePairSelected {
local_candidate : i . read ( ) ? ,
remote_candidate : i . read ( ) ? ,
} )
}
}
impl dbus ::message ::SignalArgs for Call1StreamEndpointCandidatePairSelected {
const NAME : & 'static str = " CandidatePairSelected " ;
const INTERFACE : & 'static str = " org.freedesktop.Telepathy.Call1.Stream.Endpoint " ;
}
#[ derive(Debug) ]
pub struct Call1StreamEndpointEndpointStateChanged {
pub component : u32 ,
pub state : u32 ,
}
impl arg ::AppendAll for Call1StreamEndpointEndpointStateChanged {
fn append ( & self , i : & mut arg ::IterAppend ) {
arg ::RefArg ::append ( & self . component , i ) ;
arg ::RefArg ::append ( & self . state , i ) ;
}
}
impl arg ::ReadAll for Call1StreamEndpointEndpointStateChanged {
fn read ( i : & mut arg ::Iter ) -> Result < Self , arg ::TypeMismatchError > {
Ok ( Call1StreamEndpointEndpointStateChanged {
component : i . read ( ) ? ,
state : i . read ( ) ? ,
} )
}
}
impl dbus ::message ::SignalArgs for Call1StreamEndpointEndpointStateChanged {
const NAME : & 'static str = " EndpointStateChanged " ;
const INTERFACE : & 'static str = " org.freedesktop.Telepathy.Call1.Stream.Endpoint " ;
}
#[ derive(Debug) ]
pub struct Call1StreamEndpointControllingChanged {
pub controlling : bool ,
}
impl arg ::AppendAll for Call1StreamEndpointControllingChanged {
fn append ( & self , i : & mut arg ::IterAppend ) {
arg ::RefArg ::append ( & self . controlling , i ) ;
}
}
impl arg ::ReadAll for Call1StreamEndpointControllingChanged {
fn read ( i : & mut arg ::Iter ) -> Result < Self , arg ::TypeMismatchError > {
Ok ( Call1StreamEndpointControllingChanged {
controlling : i . read ( ) ? ,
} )
}
}
impl dbus ::message ::SignalArgs for Call1StreamEndpointControllingChanged {
const NAME : & 'static str = " ControllingChanged " ;
const INTERFACE : & 'static str = " org.freedesktop.Telepathy.Call1.Stream.Endpoint " ;
}