7 use Net::DBus::Reactor;
9 use Carp qw(confess cluck);
11 #$SIG{__WARN__} = sub { cluck $_[0] };
12 #$SIG{__DIE__} = sub { confess $_[0] };
14 my $bus = Net::DBus->session();
16 my $service = $bus->get_service("org.designfu.TestService");
17 my $object = $service->get_object("/org/designfu/TestService/object",
18 "org.designfu.TestService");
26 sub hello_signal_handler1 {
28 print ${$sig1ref} . " Received hello signal with greeting '$greeting'\n";
31 sub hello_signal_handler2 {
33 print ${$sig2ref} . " Received hello signal with greeting '$greeting'\n";
35 $object->disconnect_from_signal("HelloSignal", ${$sig2ref});
39 $sig1 = $object->connect_to_signal("HelloSignal", \&hello_signal_handler1);
40 $sig2 = $object->connect_to_signal("HelloSignal", \&hello_signal_handler2);
42 my $reactor = Net::DBus::Reactor->main();
45 $reactor->add_timeout(5000, sub {
46 $object->emitHelloSignal();