Mercurial > projects > dbus-d
annotate dbus-d-javatests/README.txt @ 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 |
rev | line source |
---|---|
2
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
1 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
2 With dbus-d, an interface is defined with a XML file that follows the DBus introspection data. |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
3 The tool CreateInterfaces is used to read this file and generate a D module with all |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
4 the interfaces from the XML file and with the needed supporting code. |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
5 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
6 1. Build the "createinterface" tool. |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
7 in the dbus-d directory: |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
8 |
6
963d271f7c25
disabled event stuff, to have working example
Frank Benoit <benoit@tionex.de>
parents:
5
diff
changeset
|
9 $ cd dbus-d/dsrc |
963d271f7c25
disabled event stuff, to have working example
Frank Benoit <benoit@tionex.de>
parents:
5
diff
changeset
|
10 $ dsss build org/freedesktop/dbus/tool/CreateInterface.d |
963d271f7c25
disabled event stuff, to have working example
Frank Benoit <benoit@tionex.de>
parents:
5
diff
changeset
|
11 |
963d271f7c25
disabled event stuff, to have working example
Frank Benoit <benoit@tionex.de>
parents:
5
diff
changeset
|
12 On success, this creates the CreateInterface tool in ../.. |
2
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
13 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
14 2. Goto the directory of your applications source code ,call the CreateInterface tool |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
15 and pipe the output to a file matching your module name. |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
16 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
17 $ cd ../dbus-d-javatests/dsrc |
6
963d271f7c25
disabled event stuff, to have working example
Frank Benoit <benoit@tionex.de>
parents:
5
diff
changeset
|
18 $ ../../CreateInterface ../dbustest.xml DBusTestingGen > DBusTestingGen.d |
2
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
19 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
20 3. Implement interfaces in D. If the introspection.xml has an interface called "a.b.C" |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
21 you need to implement the interface "DBusInterface.a.b.C" which is part of the generated |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
22 module. |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
23 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
24 To make an object accessible, you need to either export it or return it from another |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
25 another method call. |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
26 |
5 | 27 4. Create the Java code |
28 Call the CreateInterface tool from dbus-java. | |
2
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
29 |
5 | 30 in Eclipse run CreateInterface. Set the working directory to "dbus-d-javatests/jsrc" |
31 or in the run dialog ${workspace_loc:dbus-javatests/jsrc} | |
32 give the arguments "--create-files ../dbustest.xml" | |
2
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
33 |
5 | 34 the program shall run without any output. After completion the file should be created. |
35 The repitory already contains those files, so no change may be noteable. | |
36 | |
37 5. Implement the Java code. See dbustest.DBusTester | |
2
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
38 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
39 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
40 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
41 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
42 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
43 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
44 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
45 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
46 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
47 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
48 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
49 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
50 |
0
a5576806d36d
recreate repository without any libs for lightweight repository
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
51 To compile and run this example, it is required to have the following jars |
a5576806d36d
recreate repository without any libs for lightweight repository
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
52 in the classpath: |
a5576806d36d
recreate repository without any libs for lightweight repository
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
53 |
a5576806d36d
recreate repository without any libs for lightweight repository
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
54 org.eclipse.core.commands_3.3.0.I20070605-0010.jar |
a5576806d36d
recreate repository without any libs for lightweight repository
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
55 org.eclipse.equinox.common_3.3.0.v20070426.jar |
a5576806d36d
recreate repository without any libs for lightweight repository
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
56 org.eclipse.jface_3.3.0.I20070606-0010.jar |
a5576806d36d
recreate repository without any libs for lightweight repository
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
57 org.eclipse.osgi_3.3.0.v20070530.jar |
a5576806d36d
recreate repository without any libs for lightweight repository
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
58 org.eclipse.swt.win32.win32.x86_3.3.0.v3346.jar |
a5576806d36d
recreate repository without any libs for lightweight repository
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
59 org.eclipse.swt_3.3.0.v3346.jar |
a5576806d36d
recreate repository without any libs for lightweight repository
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
60 |
2
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
61 These can be found in the eclipse/plugin directory |
0
a5576806d36d
recreate repository without any libs for lightweight repository
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
62 Probably other versions will work also :) |
a5576806d36d
recreate repository without any libs for lightweight repository
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
63 |
a5576806d36d
recreate repository without any libs for lightweight repository
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
64 |
2
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
65 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
66 |
5fb77a7e7d64
building CreateInterface and add bustest.xml
Frank Benoit <benoit@tionex.de>
parents:
0
diff
changeset
|
67 |