releaseName method
Releases the D-Bus object name previously acquired using requestName().
Implementation
Future<DBusReleaseNameReply> releaseName(String name) async {
var result = await callMethod(
destination: 'org.freedesktop.DBus',
path: DBusObjectPath('/org/freedesktop/DBus'),
interface: 'org.freedesktop.DBus',
name: 'ReleaseName',
values: [DBusString(name)],
replySignature: DBusSignature('u'));
var returnCode = result.returnValues[0].asUint32();
switch (returnCode) {
case 1:
_ownedNames.remove(DBusBusName(name));
return DBusReleaseNameReply.released;
case 2:
return DBusReleaseNameReply.nonExistant;
case 3:
return DBusReleaseNameReply.notOwner;
default:
throw 'org.freedesktop.DBus.ReleaseName returned unknown return code: $returnCode';
}
}