mirror of
https://github.com/AsamK/signal-cli
synced 2025-08-29 18:40:39 +00:00
Improve error messages when daemon is already running
This commit is contained in:
parent
90c787f8e2
commit
ccce539843
3 changed files with 17 additions and 19 deletions
|
@ -29,8 +29,8 @@ public class Commands {
|
|||
addCommand(new RegisterCommand());
|
||||
addCommand(new RemoveContactCommand());
|
||||
addCommand(new RemoveDeviceCommand());
|
||||
addCommand(new RemoteDeleteCommand());
|
||||
addCommand(new RemovePinCommand());
|
||||
addCommand(new RemoteDeleteCommand());
|
||||
addCommand(new SendCommand());
|
||||
addCommand(new SendContactsCommand());
|
||||
addCommand(new SendReactionCommand());
|
||||
|
|
|
@ -340,41 +340,39 @@ public class DaemonCommand implements MultiLocalCommand, LocalCommand {
|
|||
} else {
|
||||
busType = DBusConnection.DBusBusType.SESSION;
|
||||
}
|
||||
DBusConnection conn;
|
||||
try {
|
||||
var conn = DBusConnection.getConnection(busType);
|
||||
conn = DBusConnection.getConnection(busType);
|
||||
dbusRunner.run(conn, DbusConfig.getObjectPath());
|
||||
|
||||
conn.requestBusName(DbusConfig.getBusname());
|
||||
|
||||
logger.info("DBus daemon running on {} bus: {}", busType, DbusConfig.getBusname());
|
||||
} catch (DBusException e) {
|
||||
logger.error("Dbus command failed", e);
|
||||
throw new UnexpectedErrorException("Dbus command failed", e);
|
||||
throw new UnexpectedErrorException("Dbus command failed: " + e.getMessage(), e);
|
||||
}
|
||||
|
||||
try {
|
||||
conn.requestBusName(DbusConfig.getBusname());
|
||||
} catch (DBusException e) {
|
||||
throw new UnexpectedErrorException("Dbus command failed, maybe signal-cli dbus daemon is already running: "
|
||||
+ e.getMessage(), e);
|
||||
}
|
||||
|
||||
logger.info("DBus daemon running on {} bus: {}", busType, DbusConfig.getBusname());
|
||||
}
|
||||
|
||||
private Thread exportMultiAccountManager(
|
||||
final DBusConnection conn, final Manager m, final boolean noReceiveOnStart
|
||||
) {
|
||||
try {
|
||||
final var objectPath = DbusConfig.getObjectPath(m.getSelfNumber());
|
||||
return exportDbusObject(conn, objectPath, m, noReceiveOnStart);
|
||||
} catch (DBusException e) {
|
||||
logger.error("Failed to export object", e);
|
||||
return null;
|
||||
}
|
||||
final var objectPath = DbusConfig.getObjectPath(m.getSelfNumber());
|
||||
return exportDbusObject(conn, objectPath, m, noReceiveOnStart);
|
||||
}
|
||||
|
||||
private Thread exportDbusObject(
|
||||
final DBusConnection conn, final String objectPath, final Manager m, final boolean noReceiveOnStart
|
||||
) throws DBusException {
|
||||
) {
|
||||
final var signal = new DbusSignalImpl(m, conn, objectPath, noReceiveOnStart);
|
||||
final var initThread = new Thread(signal::initObjects);
|
||||
initThread.setName("dbus-init");
|
||||
initThread.start();
|
||||
|
||||
logger.debug("Exported dbus object: " + objectPath);
|
||||
|
||||
return initThread;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue