@@ -11,42 +11,33 @@ var obj = service.createObject('/test/dbus/TestService');
11
11
var iface1 = obj . createInterface ( 'test.dbus.TestService.Interface1' ) ;
12
12
13
13
iface1 . addMethod ( 'NoArgs' , { out : DBus . Define ( String ) } , function ( callback ) {
14
- callback ( 'result!' ) ;
14
+ callback ( null , 'result!' ) ;
15
15
} ) ;
16
16
17
17
iface1 . addMethod ( 'Add' , { in : [ DBus . Define ( Number ) , DBus . Define ( Number ) ] , out : DBus . Define ( Number ) } , function ( n1 , n2 , callback ) {
18
- callback ( n1 + n2 ) ;
18
+ callback ( null , n1 + n2 ) ;
19
19
} ) ;
20
20
21
- iface1 . addMethod ( 'LongProcess' , { out : DBus . Define ( Number ) } , function ( callback ) {
22
- setTimeout ( function ( ) {
23
- callback ( 0 ) ;
24
- } , 5000 ) . unref ( ) ;
25
- } ) ;
26
-
27
- iface1 . addMethod ( 'ThrowsError' , { out : DBus . Define ( Number ) } , function ( callback ) {
28
- setTimeout ( function ( ) {
29
- callback ( new Error ( 'This is an error thrown from the service' ) ) ;
30
- } , 100 ) ;
21
+ iface1 . addMethod ( 'Object' , { in : [ DBus . Define ( Object ) ] , out : DBus . Define ( Object ) } , function ( obj , callback ) {
22
+ callback ( null , obj ) ;
31
23
} ) ;
32
24
33
- iface1 . addMethod ( 'ThrowsCustomError ' , { out : DBus . Define ( Number ) } , function ( callback ) {
25
+ iface1 . addMethod ( 'LongProcess ' , { out : DBus . Define ( Number ) } , function ( callback ) {
34
26
setTimeout ( function ( ) {
35
- var error = new DBus . Error ( 'test.dbus.TestService.Error' , 'This is an error thrown from the service' ) ;
36
- callback ( error ) ;
37
- } , 100 ) ;
27
+ callback ( null , 0 ) ;
28
+ } , 5000 ) . unref ( ) ;
38
29
} ) ;
39
30
40
31
var author = 'Fred Chien' ;
41
32
iface1 . addProperty ( 'Author' , {
42
33
type : DBus . Define ( String ) ,
43
34
getter : function ( callback ) {
44
- callback ( author ) ;
35
+ callback ( null , author ) ;
45
36
} ,
46
- setter : function ( value , complete ) {
37
+ setter : function ( value , callback ) {
47
38
author = value ;
48
39
49
- complete ( ) ;
40
+ callback ( ) ;
50
41
}
51
42
} ) ;
52
43
@@ -55,15 +46,7 @@ var url = 'http://stem.mandice.org';
55
46
iface1 . addProperty ( 'URL' , {
56
47
type : DBus . Define ( String ) ,
57
48
getter : function ( callback ) {
58
- callback ( url ) ;
59
- }
60
- } ) ;
61
-
62
- // Read-only property
63
- iface1 . addProperty ( 'ErrorProperty' , {
64
- type : DBus . Define ( String ) ,
65
- getter : function ( callback ) {
66
- callback ( new Error ( 'This is an error thrown from the service' ) ) ;
49
+ callback ( null , url ) ;
67
50
}
68
51
} ) ;
69
52
@@ -84,11 +67,35 @@ var interval = setInterval(function() {
84
67
} , 1000 ) ;
85
68
interval . unref ( ) ;
86
69
70
+ var errors = obj . createInterface ( 'test.dbus.TestService.ErrorInterface' ) ;
71
+
72
+ errors . addMethod ( 'ThrowsError' , { out : DBus . Define ( Number ) } , function ( callback ) {
73
+ setTimeout ( function ( ) {
74
+ callback ( new Error ( 'This is an error thrown from the service' ) ) ;
75
+ } , 100 ) ;
76
+ } ) ;
77
+
78
+ errors . addMethod ( 'ThrowsCustomError' , { out : DBus . Define ( Number ) } , function ( callback ) {
79
+ setTimeout ( function ( ) {
80
+ var error = new DBus . Error ( 'test.dbus.TestService.Error' , 'This is an error thrown from the service' ) ;
81
+ callback ( error ) ;
82
+ } , 100 ) ;
83
+ } ) ;
84
+
85
+ errors . addProperty ( 'ErrorProperty' , {
86
+ type : DBus . Define ( String ) ,
87
+ getter : function ( callback ) {
88
+ callback ( new Error ( 'This is an error thrown from the service' ) ) ;
89
+ }
90
+ } ) ;
91
+
92
+ errors . update ( ) ;
93
+
87
94
// Create second interface
88
95
var iface2 = obj . createInterface ( 'test.dbus.TestService.Interface2' ) ;
89
96
90
97
iface2 . addMethod ( 'Hello' , { out : DBus . Define ( String ) } , function ( callback ) {
91
- callback ( 'Hello There!' ) ;
98
+ callback ( null , 'Hello There!' ) ;
92
99
} ) ;
93
100
94
101
iface2 . update ( ) ;
0 commit comments