rendered paste body#############################
Guessed Interface description (works fine for StateChange):
#############################
<node>
<interface name="org.freedesktop.NetworkManager">
<signal name="DeviceCarrierOn">
<arg type="o"/>
</signal>
<signal name="StateChange">
<arg type="u"/>
</signal>
</interface>
</node>
#############################
Java generated from the above
#############################
package org.freedesktop;
import org.freedesktop.dbus.DBusException;
import org.freedesktop.dbus.DBusInterface;
import org.freedesktop.dbus.DBusSignal;
import org.freedesktop.dbus.UInt32;
public interface NetworkManager extends DBusInterface
{
public static class DeviceCarrierOn extends DBusSignal
{
public final DBusInterface a;
public DeviceCarrierOn(String path, DBusInterface a) throws DBusException
{
super(path, a);
this.a = a;
}
}
public static class StateChange extends DBusSignal
{
public final UInt32 a;
public StateChange(String path, UInt32 a) throws DBusException
{
super(path, a);
this.a = a;
}
}
}
##################
My Generic Handler
##################
public class NetManSigHandler implements DBusSigHandler {
public void handle(DBusSignal signal) {
System.out.println( signal.toString() );
}
}
##################
registered in Main
##################
... // after getting system bus
conn.addSigHandler( NetworkManager.StateChange.class, new NetManSigHandler());
conn.addSigHandler( NetworkManager.DeviceCarrierOn.class, new NetManSigHandler());
#####################
Output on StateChange
#####################
=> SIG: :1.30/path[org.freedesktop.NetworkManager.StateChange](u) {2}
org.freedesktop.NetworkManager$StateChange(:1.30,org.freedesktop.NetworkManager,StateChange,2,0)(44,)
##########################
Output on DeviceCarrierOff
##########################
=> SIG: :1.31/path[org.freedesktop.NetworkManager.DeviceCarrierOff](o) {2}
<= ERROR: (=> :1.31) org.freedesktop.dbus.DBusExecutionException {15,2}
<= CALL: :1.31/test/4[org.freedesktop.DBus.Introspectable.Introspect]() {16}
=> ERROR: (org.freedesktop.DBus => :1.29) org.freedesktop.DBus.Error.ServiceUnknown {15,15}
=> ERROR: (org.freedesktop.DBus => :1.29) org.freedesktop.DBus.Error.ServiceUnknown {16,16}