Mercurial > projects > dbus-d
view dbus-d-javatests/dsrc/DBusTestsInterfaces.d @ 0:a5576806d36d
recreate repository without any libs for lightweight repository
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Sat, 20 Oct 2007 18:07:18 +0200 |
parents | |
children |
line wrap: on
line source
/** * Generated with TioLink * TioLink was written by Frank Benoit <benoit@tionex.de> * http://www.dsource.org/projects/tiolink * * File type: D programming language source code */ module DBusTestsInterfaces; public import org.freedesktop.dbus.Struct; public import org.freedesktop.dbus.Variant; import tango.core.Signal; import org.freedesktop.dbus.DBus; import org.freedesktop.dbus.c.Connection : DBusConnection; import org.freedesktop.dbus.c.Message : DBusMessage; import org.freedesktop.dbus.c.Shared : DBusHandlerResult; // DBus interfaces public interface DBusInterface { // org public interface org { // org.freedesktop public interface freedesktop { // org.freedesktop.DBus public interface DBus { // org.freedesktop.DBus.Peer public interface Peer { public void Ping(); public char[] GetMachineId(); } // org.freedesktop.DBus.Introspectable public interface Introspectable { public char[] Introspect(); } // org.freedesktop.DBus.Properties public interface Properties { public DBusVariant Get( in char[] intf_name, in char[] prop_name ); public void Set( in char[] intf_name, in char[] prop_name, in DBusVariant prop ); public DBusVariant[ char[] ] GetAll( in char[] intf_name ); } } } } // dbustests public interface dbustests { // dbustests.Tests public interface Tests { public void identityVoid(); public bool identityBool( in bool input ); public byte identityByte( in byte input ); public short identityShort( in short input ); public ushort identityUShort( in ushort input ); public int identityInt( in int input ); public uint identityUInt( in uint input ); public long identityLong( in long input ); public ulong identityULong( in ulong input ); public double identityDouble( in double input ); public char[] identityString( in char[] input ); public DBusVariant identityVariant( in DBusVariant input ); public bool[] identityArrayBool( in bool[] input ); public byte[] identityArrayByte( in byte[] input ); public short[] identityArrayShort( in short[] input ); public ushort[] identityArrayUShort( in ushort[] input ); public int[] identityArrayInt( in int[] input ); public uint[] identityArrayUInt( in uint[] input ); public long[] identityArrayLong( in long[] input ); public ulong[] identityArrayULong( in ulong[] input ); public double[] identityArrayDouble( in double[] input ); public char[][] identityArrayString( in char[][] input ); public DBusVariant[] identityArrayVariant( in DBusVariant[] input ); public long Sum( in int[] input ); public uint Sum( in byte[] input ); public char[][][ char[] ] InvertMapping( in char[][ char[] ] input ); public void DeStruct( in Struct!( char[], uint, short ) input, out char[] res_1, out uint res_2, out short res_3 ); public DBusVariant[] Primitize( in DBusVariant input ); public bool Invert( in bool input ); public tango.core.Signal.Signal!()* signalVoid(); public tango.core.Signal.Signal!( int )* signalInt(); public tango.core.Signal.Signal!( Struct!( char[], uint, short ) )* signalStruct(); public tango.core.Signal.Signal!( Struct!( char[], uint, short )[] )* signalArray(); public tango.core.Signal.Signal!( DBusVariant )* signalVariant(); } } } // Peer implementations public interface DBusPeers { // org public class org : DBusPeerObject, DBusInterface.org { // org.freedesktop public class freedesktop : DBusPeerObject, DBusInterface.org.freedesktop { // org.freedesktop.DBus public class DBus : DBusPeerObject, DBusInterface.org.freedesktop.DBus { // org.freedesktop.DBus.Peer public class Peer : DBusPeerObject, DBusInterface.org.freedesktop.DBus.Peer { public void Ping(){ } public char[] GetMachineId(){ } } // org.freedesktop.DBus.Introspectable public class Introspectable : DBusPeerObject, DBusInterface.org.freedesktop.DBus.Introspectable { public char[] Introspect(){ } } // org.freedesktop.DBus.Properties public class Properties : DBusPeerObject, DBusInterface.org.freedesktop.DBus.Properties { public DBusVariant Get( in char[] intf_name, in char[] prop_name ){ } public void Set( in char[] intf_name, in char[] prop_name, in DBusVariant prop ){ } public DBusVariant[ char[] ] GetAll( in char[] intf_name ){ } } } } } // dbustests public class dbustests : DBusPeerObject, DBusInterface.dbustests { // dbustests.Tests public class Tests : DBusPeerObject, DBusInterface.dbustests.Tests { public void identityVoid(){ } public bool identityBool( in bool input ){ } public byte identityByte( in byte input ){ } public short identityShort( in short input ){ } public ushort identityUShort( in ushort input ){ } public int identityInt( in int input ){ } public uint identityUInt( in uint input ){ } public long identityLong( in long input ){ } public ulong identityULong( in ulong input ){ } public double identityDouble( in double input ){ } public char[] identityString( in char[] input ){ } public DBusVariant identityVariant( in DBusVariant input ){ } public bool[] identityArrayBool( in bool[] input ){ } public byte[] identityArrayByte( in byte[] input ){ } public short[] identityArrayShort( in short[] input ){ } public ushort[] identityArrayUShort( in ushort[] input ){ } public int[] identityArrayInt( in int[] input ){ } public uint[] identityArrayUInt( in uint[] input ){ } public long[] identityArrayLong( in long[] input ){ } public ulong[] identityArrayULong( in ulong[] input ){ } public double[] identityArrayDouble( in double[] input ){ } public char[][] identityArrayString( in char[][] input ){ } public DBusVariant[] identityArrayVariant( in DBusVariant[] input ){ } public long Sum( in int[] input ){ } public uint Sum( in byte[] input ){ } public char[][][ char[] ] InvertMapping( in char[][ char[] ] input ){ } public void DeStruct( in Struct!( char[], uint, short ) input, out char[] res_1, out uint res_2, out short res_3 ){ } public DBusVariant[] Primitize( in DBusVariant input ){ } public bool Invert( in bool input ){ } } } } // DBusObject public class DBusObject : DBusObjectImpl, DBusInterface.org.freedesktop.DBus.Introspectable { this(){ super(); } public char[] Introspect(){ return super.Introspect(); } } // DBusPeerObject public class DBusPeerObject { } private void init_introspectionData(){ registerIntrospectionData( DBusInterface.org.freedesktop.DBus.Peer.classinfo, `<interface name="org.freedesktop.DBus.Peer">\n` ` <method name="Ping">\n` ` </method>\n` ` <method name="GetMachineId">\n` ` <annotation name="org.dsource.tiolink.Returns" value="machine_uuid" />\n` ` <arg name="machine_uuid" type="s" direction="out" />\n` ` </method>\n` `</interface>\n`); registerIntrospectionData( DBusInterface.org.freedesktop.DBus.Introspectable.classinfo, `<interface name="org.freedesktop.DBus.Introspectable">\n` ` <method name="Introspect">\n` ` <annotation name="org.dsource.tiolink.Returns" value="xml_data" />\n` ` <arg name="xml_data" type="s" direction="out" />\n` ` </method>\n` `</interface>\n`); registerIntrospectionData( DBusInterface.org.freedesktop.DBus.Properties.classinfo, `<interface name="org.freedesktop.DBus.Properties">\n` ` <method name="Get">\n` ` <annotation name="org.dsource.tiolink.Returns" value="prop" />\n` ` <arg name="intf_name" type="s" direction="in" />\n` ` <arg name="prop_name" type="s" direction="in" />\n` ` <arg name="prop" type="v" direction="out" />\n` ` </method>\n` ` <method name="Set">\n` ` <arg name="intf_name" type="s" direction="in" />\n` ` <arg name="prop_name" type="s" direction="in" />\n` ` <arg name="prop" type="v" direction="in" />\n` ` </method>\n` ` <method name="GetAll">\n` ` <annotation name="org.dsource.tiolink.Returns" value="allprops" />\n` ` <arg name="intf_name" type="s" direction="in" />\n` ` <arg name="allprops" type="a{sv}" direction="out" />\n` ` </method>\n` `</interface>\n`); registerIntrospectionData( DBusInterface.dbustests.Tests.classinfo, `<interface name="dbustests.Tests">\n` ` <method name="identityVoid">\n` ` </method>\n` ` <method name="identityBool">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="b" direction="out" />\n` ` <arg name="input" type="b" direction="in" />\n` ` </method>\n` ` <method name="identityByte">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="y" direction="out" />\n` ` <arg name="input" type="y" direction="in" />\n` ` </method>\n` ` <method name="identityShort">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="n" direction="out" />\n` ` <arg name="input" type="n" direction="in" />\n` ` </method>\n` ` <method name="identityUShort">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="q" direction="out" />\n` ` <arg name="input" type="q" direction="in" />\n` ` </method>\n` ` <method name="identityInt">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="i" direction="out" />\n` ` <arg name="input" type="i" direction="in" />\n` ` </method>\n` ` <method name="identityUInt">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="u" direction="out" />\n` ` <arg name="input" type="u" direction="in" />\n` ` </method>\n` ` <method name="identityLong">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="x" direction="out" />\n` ` <arg name="input" type="x" direction="in" />\n` ` </method>\n` ` <method name="identityULong">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="t" direction="out" />\n` ` <arg name="input" type="t" direction="in" />\n` ` </method>\n` ` <method name="identityDouble">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="d" direction="out" />\n` ` <arg name="input" type="d" direction="in" />\n` ` </method>\n` ` <method name="identityString">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="s" direction="out" />\n` ` <arg name="input" type="s" direction="in" />\n` ` </method>\n` ` <method name="identityVariant">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="v" direction="out" />\n` ` <arg name="input" type="v" direction="in" />\n` ` </method>\n` ` <method name="identityArrayBool">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="ab" direction="out" />\n` ` <arg name="input" type="ab" direction="in" />\n` ` </method>\n` ` <method name="identityArrayByte">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="ay" direction="out" />\n` ` <arg name="input" type="ay" direction="in" />\n` ` </method>\n` ` <method name="identityArrayShort">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="an" direction="out" />\n` ` <arg name="input" type="an" direction="in" />\n` ` </method>\n` ` <method name="identityArrayUShort">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="aq" direction="out" />\n` ` <arg name="input" type="aq" direction="in" />\n` ` </method>\n` ` <method name="identityArrayInt">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="ai" direction="out" />\n` ` <arg name="input" type="ai" direction="in" />\n` ` </method>\n` ` <method name="identityArrayUInt">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="au" direction="out" />\n` ` <arg name="input" type="au" direction="in" />\n` ` </method>\n` ` <method name="identityArrayLong">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="ax" direction="out" />\n` ` <arg name="input" type="ax" direction="in" />\n` ` </method>\n` ` <method name="identityArrayULong">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="at" direction="out" />\n` ` <arg name="input" type="at" direction="in" />\n` ` </method>\n` ` <method name="identityArrayDouble">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="ad" direction="out" />\n` ` <arg name="input" type="ad" direction="in" />\n` ` </method>\n` ` <method name="identityArrayString">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="as" direction="out" />\n` ` <arg name="input" type="as" direction="in" />\n` ` </method>\n` ` <method name="identityArrayVariant">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="av" direction="out" />\n` ` <arg name="input" type="av" direction="in" />\n` ` </method>\n` ` <method name="Sum">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="x" direction="out" />\n` ` <arg name="input" type="ai" direction="in" />\n` ` </method>\n` ` <method name="Sum">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="u" direction="out" />\n` ` <arg name="input" type="ay" direction="in" />\n` ` </method>\n` ` <method name="InvertMapping">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="a{sas}" direction="out" />\n` ` <arg name="input" type="a{ss}" direction="in" />\n` ` </method>\n` ` <method name="DeStruct">\n` ` <arg name="input" type="(sun)" direction="in" />\n` ` <arg name="res_1" type="s" direction="out" />\n` ` <arg name="res_2" type="u" direction="out" />\n` ` <arg name="res_3" type="n" direction="out" />\n` ` </method>\n` ` <method name="Primitize">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="input" type="v" direction="in" />\n` ` <arg name="res" type="av" direction="out" />\n` ` </method>\n` ` <method name="Invert">\n` ` <annotation name="org.dsource.tiolink.Returns" value="res" />\n` ` <arg name="res" type="b" direction="out" />\n` ` <arg name="input" type="b" direction="in" />\n` ` </method>\n` `</interface>\n`); } private DBusHandlerResult intfHandler__org_freedesktop_DBus_Peer( DBusConnection* conn, DBusMessage* message, void* user_data ){ DBusInterface.org.freedesktop.DBus.Peer o = cast(DBusInterface.org.freedesktop.DBus.Peer)cast(Object)user_data; if( o is null || !checkIntf( "org.freedesktop.DBus.Peer", message) ) return DBusHandlerResult.DBUS_HANDLER_RESULT_NOT_YET_HANDLED; try{ char[METHOD_SIG_MAXLENGTH] buf; switch( methodSignature( message, buf ) ){ case "Ping|": { o.Ping(); sendReply( conn, message ); } break; case "GetMachineId|": { Struct!( char[] ) po; po.t[0] = o.GetMachineId(); sendReplyData!( char[] )( conn, message, po ); } break; default: return DBusHandlerResult.DBUS_HANDLER_RESULT_NOT_YET_HANDLED; } } catch( Exception e ){ sendException( conn, message, e ); } return DBusHandlerResult.DBUS_HANDLER_RESULT_HANDLED; } private DBusHandlerResult intfHandler__org_freedesktop_DBus_Introspectable( DBusConnection* conn, DBusMessage* message, void* user_data ){ DBusInterface.org.freedesktop.DBus.Introspectable o = cast(DBusInterface.org.freedesktop.DBus.Introspectable)cast(Object)user_data; if( o is null || !checkIntf( "org.freedesktop.DBus.Introspectable", message) ) return DBusHandlerResult.DBUS_HANDLER_RESULT_NOT_YET_HANDLED; try{ char[METHOD_SIG_MAXLENGTH] buf; switch( methodSignature( message, buf ) ){ case "Introspect|": { Struct!( char[] ) po; po.t[0] = o.Introspect(); sendReplyData!( char[] )( conn, message, po ); } break; default: return DBusHandlerResult.DBUS_HANDLER_RESULT_NOT_YET_HANDLED; } } catch( Exception e ){ sendException( conn, message, e ); } return DBusHandlerResult.DBUS_HANDLER_RESULT_HANDLED; } private DBusHandlerResult intfHandler__org_freedesktop_DBus_Properties( DBusConnection* conn, DBusMessage* message, void* user_data ){ DBusInterface.org.freedesktop.DBus.Properties o = cast(DBusInterface.org.freedesktop.DBus.Properties)cast(Object)user_data; if( o is null || !checkIntf( "org.freedesktop.DBus.Properties", message) ) return DBusHandlerResult.DBUS_HANDLER_RESULT_NOT_YET_HANDLED; try{ char[METHOD_SIG_MAXLENGTH] buf; switch( methodSignature( message, buf ) ){ case "Get|ss": { Struct!( char[], char[] ) pi = getCallValues!( char[], char[] )( message ); Struct!( DBusVariant ) po; po.t[0] = o.Get( pi.t[0], pi.t[1] ); sendReplyData!( DBusVariant )( conn, message, po ); } break; case "Set|ssv": { Struct!( char[], char[], DBusVariant ) pi = getCallValues!( char[], char[], DBusVariant )( message ); o.Set( pi.t[0], pi.t[1], pi.t[2] ); sendReply( conn, message ); } break; case "GetAll|s": { Struct!( char[] ) pi = getCallValues!( char[] )( message ); Struct!( DBusVariant[ char[] ] ) po; po.t[0] = o.GetAll( pi.t[0] ); sendReplyData!( DBusVariant[ char[] ] )( conn, message, po ); } break; default: return DBusHandlerResult.DBUS_HANDLER_RESULT_NOT_YET_HANDLED; } } catch( Exception e ){ sendException( conn, message, e ); } return DBusHandlerResult.DBUS_HANDLER_RESULT_HANDLED; } private DBusHandlerResult intfHandler__dbustests_Tests( DBusConnection* conn, DBusMessage* message, void* user_data ){ DBusInterface.dbustests.Tests o = cast(DBusInterface.dbustests.Tests)cast(Object)user_data; if( o is null || !checkIntf( "dbustests.Tests", message) ) return DBusHandlerResult.DBUS_HANDLER_RESULT_NOT_YET_HANDLED; try{ char[METHOD_SIG_MAXLENGTH] buf; switch( methodSignature( message, buf ) ){ case "identityVoid|": { o.identityVoid(); sendReply( conn, message ); } break; case "identityBool|b": { Struct!( bool ) pi = getCallValues!( bool )( message ); Struct!( bool ) po; po.t[0] = o.identityBool( pi.t[0] ); sendReplyData!( bool )( conn, message, po ); } break; case "identityByte|y": { Struct!( byte ) pi = getCallValues!( byte )( message ); Struct!( byte ) po; po.t[0] = o.identityByte( pi.t[0] ); sendReplyData!( byte )( conn, message, po ); } break; case "identityShort|n": { Struct!( short ) pi = getCallValues!( short )( message ); Struct!( short ) po; po.t[0] = o.identityShort( pi.t[0] ); sendReplyData!( short )( conn, message, po ); } break; case "identityUShort|q": { Struct!( ushort ) pi = getCallValues!( ushort )( message ); Struct!( ushort ) po; po.t[0] = o.identityUShort( pi.t[0] ); sendReplyData!( ushort )( conn, message, po ); } break; case "identityInt|i": { Struct!( int ) pi = getCallValues!( int )( message ); Struct!( int ) po; po.t[0] = o.identityInt( pi.t[0] ); sendReplyData!( int )( conn, message, po ); } break; case "identityUInt|u": { Struct!( uint ) pi = getCallValues!( uint )( message ); Struct!( uint ) po; po.t[0] = o.identityUInt( pi.t[0] ); sendReplyData!( uint )( conn, message, po ); } break; case "identityLong|x": { Struct!( long ) pi = getCallValues!( long )( message ); Struct!( long ) po; po.t[0] = o.identityLong( pi.t[0] ); sendReplyData!( long )( conn, message, po ); } break; case "identityULong|t": { Struct!( ulong ) pi = getCallValues!( ulong )( message ); Struct!( ulong ) po; po.t[0] = o.identityULong( pi.t[0] ); sendReplyData!( ulong )( conn, message, po ); } break; case "identityDouble|d": { Struct!( double ) pi = getCallValues!( double )( message ); Struct!( double ) po; po.t[0] = o.identityDouble( pi.t[0] ); sendReplyData!( double )( conn, message, po ); } break; case "identityString|s": { Struct!( char[] ) pi = getCallValues!( char[] )( message ); Struct!( char[] ) po; po.t[0] = o.identityString( pi.t[0] ); sendReplyData!( char[] )( conn, message, po ); } break; case "identityVariant|v": { Struct!( DBusVariant ) pi = getCallValues!( DBusVariant )( message ); Struct!( DBusVariant ) po; po.t[0] = o.identityVariant( pi.t[0] ); sendReplyData!( DBusVariant )( conn, message, po ); } break; case "identityArrayBool|ab": { Struct!( bool[] ) pi = getCallValues!( bool[] )( message ); Struct!( bool[] ) po; po.t[0] = o.identityArrayBool( pi.t[0] ); sendReplyData!( bool[] )( conn, message, po ); } break; case "identityArrayByte|ay": { Struct!( byte[] ) pi = getCallValues!( byte[] )( message ); Struct!( byte[] ) po; po.t[0] = o.identityArrayByte( pi.t[0] ); sendReplyData!( byte[] )( conn, message, po ); } break; case "identityArrayShort|an": { Struct!( short[] ) pi = getCallValues!( short[] )( message ); Struct!( short[] ) po; po.t[0] = o.identityArrayShort( pi.t[0] ); sendReplyData!( short[] )( conn, message, po ); } break; case "identityArrayUShort|aq": { Struct!( ushort[] ) pi = getCallValues!( ushort[] )( message ); Struct!( ushort[] ) po; po.t[0] = o.identityArrayUShort( pi.t[0] ); sendReplyData!( ushort[] )( conn, message, po ); } break; case "identityArrayInt|ai": { Struct!( int[] ) pi = getCallValues!( int[] )( message ); Struct!( int[] ) po; po.t[0] = o.identityArrayInt( pi.t[0] ); sendReplyData!( int[] )( conn, message, po ); } break; case "identityArrayUInt|au": { Struct!( uint[] ) pi = getCallValues!( uint[] )( message ); Struct!( uint[] ) po; po.t[0] = o.identityArrayUInt( pi.t[0] ); sendReplyData!( uint[] )( conn, message, po ); } break; case "identityArrayLong|ax": { Struct!( long[] ) pi = getCallValues!( long[] )( message ); Struct!( long[] ) po; po.t[0] = o.identityArrayLong( pi.t[0] ); sendReplyData!( long[] )( conn, message, po ); } break; case "identityArrayULong|at": { Struct!( ulong[] ) pi = getCallValues!( ulong[] )( message ); Struct!( ulong[] ) po; po.t[0] = o.identityArrayULong( pi.t[0] ); sendReplyData!( ulong[] )( conn, message, po ); } break; case "identityArrayDouble|ad": { Struct!( double[] ) pi = getCallValues!( double[] )( message ); Struct!( double[] ) po; po.t[0] = o.identityArrayDouble( pi.t[0] ); sendReplyData!( double[] )( conn, message, po ); } break; case "identityArrayString|as": { Struct!( char[][] ) pi = getCallValues!( char[][] )( message ); Struct!( char[][] ) po; po.t[0] = o.identityArrayString( pi.t[0] ); sendReplyData!( char[][] )( conn, message, po ); } break; case "identityArrayVariant|av": { Struct!( DBusVariant[] ) pi = getCallValues!( DBusVariant[] )( message ); Struct!( DBusVariant[] ) po; po.t[0] = o.identityArrayVariant( pi.t[0] ); sendReplyData!( DBusVariant[] )( conn, message, po ); } break; case "Sum|ai": { Struct!( int[] ) pi = getCallValues!( int[] )( message ); Struct!( long ) po; po.t[0] = o.Sum( pi.t[0] ); sendReplyData!( long )( conn, message, po ); } break; case "Sum|ay": { Struct!( byte[] ) pi = getCallValues!( byte[] )( message ); Struct!( uint ) po; po.t[0] = o.Sum( pi.t[0] ); sendReplyData!( uint )( conn, message, po ); } break; case "InvertMapping|a{ss}": { Struct!( char[][ char[] ] ) pi = getCallValues!( char[][ char[] ] )( message ); Struct!( char[][][ char[] ] ) po; po.t[0] = o.InvertMapping( pi.t[0] ); sendReplyData!( char[][][ char[] ] )( conn, message, po ); } break; case "DeStruct|(sun)": { Struct!( Struct!( char[], uint, short ) ) pi = getCallValues!( Struct!( char[], uint, short ) )( message ); Struct!( char[], uint, short ) po; o.DeStruct( pi.t[0], po.t[0], po.t[1], po.t[2] ); sendReplyData!( char[], uint, short )( conn, message, po ); } break; case "Primitize|v": { Struct!( DBusVariant ) pi = getCallValues!( DBusVariant )( message ); Struct!( DBusVariant[] ) po; po.t[0] = o.Primitize( pi.t[0] ); sendReplyData!( DBusVariant[] )( conn, message, po ); } break; case "Invert|b": { Struct!( bool ) pi = getCallValues!( bool )( message ); Struct!( bool ) po; po.t[0] = o.Invert( pi.t[0] ); sendReplyData!( bool )( conn, message, po ); } break; case "signalVoid>": { o.signalVoid().opCall(); } break; case "signalInt>i": { Struct!( int ) pi = getCallValues!( int )( message ); o.signalInt().opCall( pi.t[0] ); } break; case "signalStruct>(sun)": { Struct!( Struct!( char[], uint, short ) ) pi = getCallValues!( Struct!( char[], uint, short ) )( message ); o.signalStruct().opCall( pi.t[0] ); } break; case "signalArray>a(sun)": { Struct!( Struct!( char[], uint, short )[] ) pi = getCallValues!( Struct!( char[], uint, short )[] )( message ); o.signalArray().opCall( pi.t[0] ); } break; case "signalVariant>v": { Struct!( DBusVariant ) pi = getCallValues!( DBusVariant )( message ); o.signalVariant().opCall( pi.t[0] ); } break; default: return DBusHandlerResult.DBUS_HANDLER_RESULT_NOT_YET_HANDLED; } } catch( Exception e ){ sendException( conn, message, e ); } return DBusHandlerResult.DBUS_HANDLER_RESULT_HANDLED; } private void init_handlers(){ registerHandler( DBusInterface.org.freedesktop.DBus.Peer.classinfo, & intfHandler__org_freedesktop_DBus_Peer ); registerHandler( DBusInterface.org.freedesktop.DBus.Introspectable.classinfo, & intfHandler__org_freedesktop_DBus_Introspectable ); registerHandler( DBusInterface.org.freedesktop.DBus.Properties.classinfo, & intfHandler__org_freedesktop_DBus_Properties ); registerHandler( DBusInterface.dbustests.Tests.classinfo, & intfHandler__dbustests_Tests ); } static this(){ init_introspectionData(); init_handlers(); }