annotate dbus-d-javatests/dsrc/DBusTesting.d @ 6:963d271f7c25

disabled event stuff, to have working example
author Frank Benoit <benoit@tionex.de>
date Sun, 28 Oct 2007 19:35:38 +0100
parents 7c2c75740370
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
1
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
2 module DBusTesting;
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
3
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
4 import tango.sys.Environment;
4
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
5 import tango.io.Stdout;
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
6 import tango.core.Exception;
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
7
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
8 import org.freedesktop.dbus.DBus;
3
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
9
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
10 import DBusTestingGen;
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
11
4
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
12 bool exceptionsActive = false;
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
13 char[][] called;
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
14 void checkCall( char[] name ){
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
15 called ~= name.dup;
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
16 if( exceptionsActive ){
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
17 throw new TracedException( "Test Exception thrown" );
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
18 }
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
19 }
3
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
20
5
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
21 //pragma( msg, createDImplementation( "DImplBase", ["DBusInterface.dbustest.DImpl" ] ) );
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
22 mixin( createDImplementation( "DImplBase", ["DBusInterface.dbustest.DImpl" ] ));
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
23
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
24 class Dimpl : DImplBase {
4
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
25 public void testV_V(){
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
26 checkCall( "testV_V" );
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
27 }
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
28 public int testI_I( in int arg1 ){
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
29 checkCall( "testI_I" );
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
30 return arg1 + 1234;
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
31 }
5
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
32 public void testParamAllSimpleTyes(
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
33 in bool i_bool,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
34 out bool o_bool,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
35 in byte i_byte,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
36 out byte o_byte,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
37 in short i_short,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
38 out short o_short,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
39 in ushort i_ushort,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
40 out ushort o_ushort,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
41 in int i_int,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
42 out int o_int,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
43 in uint i_uint,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
44 out uint o_uint,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
45 in long i_long,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
46 out long o_long,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
47 in ulong i_ulong,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
48 out ulong o_ulong,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
49 in double i_double,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
50 out double o_double,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
51 in char[] i_string,
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
52 out char[] o_string )
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
53 {
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
54 checkCall( "testParamAllSimpleTyes" );
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
55 o_bool = !i_bool;
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
56 o_byte = i_byte + 1;
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
57 o_short = i_short + 1;
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
58 o_ushort = i_ushort + 1;
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
59 o_int = i_int + 1;
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
60 o_uint = i_uint + 1;
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
61 o_long = i_long + 1;
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
62 o_ulong = i_ulong + 1;
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
63 o_double = i_double;
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
64 o_string = i_string.reverse;
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
65 }
6
963d271f7c25 disabled event stuff, to have working example
Frank Benoit <benoit@tionex.de>
parents: 5
diff changeset
66 /+
5
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
67 public void triggerSignal( in int count ){
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
68 checkCall( "triggerSignal" );
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
69 for( int i = 0; i < count; i++ ){
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
70 testSigI.opCall( i );
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
71 }
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
72 }
6
963d271f7c25 disabled event stuff, to have working example
Frank Benoit <benoit@tionex.de>
parents: 5
diff changeset
73 +/
4
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
74 }
3
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
75
5
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
76 //mixin( createJavaImplementation( "MyClass", ["DBusInterface.dbustest.DImpl" ] ));
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
77
3
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
78
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
79
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
80 int main(char[][] args) {
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
81
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
82 char[] address = Environment.get( "DBUS_ADDRESS" );
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
83 if( ! address ){
4
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
84 Stdout.formatln( "Environment variable DBUS_ADDRESS not set" );
3
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
85 return 1;
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
86 }
4
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
87 Stdout.formatln( "D-App started");
5
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
88 DirectConnection dc = new DirectConnection( address );
4
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
89 Stdout.formatln("D-App connected");
5
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
90 auto o = new Dimpl();
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
91 o.registerDBusObject( dc.conn );
7c2c75740370 code generation for signals
Frank Benoit <benoit@tionex.de>
parents: 4
diff changeset
92 Stdout.formatln("Export obj : {}", o.getDBusInstanceName() );
3
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
93 dc.mainLoop();
4
427c0332a111 work on DBusTesting
Frank Benoit <benoit@tionex.de>
parents: 3
diff changeset
94 Stdout.formatln("D-App disconnected");
3
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
95 return 0;
c8f7d77e4d4a added DBusTesting.d
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
96 }