import org.asamk.signal.output.PlainTextWriterImpl;
import org.asamk.signal.util.IOUtils;
import org.freedesktop.dbus.connections.impl.DBusConnection;
+import org.freedesktop.dbus.connections.impl.DBusConnectionBuilder;
import org.freedesktop.dbus.errors.ServiceUnknown;
import org.freedesktop.dbus.errors.UnknownMethod;
import org.freedesktop.dbus.exceptions.DBusException;
? TrustNewIdentity.ON_FIRST_USE
: trustNewIdentityCli == TrustNewIdentityCli.ALWAYS ? TrustNewIdentity.ALWAYS : TrustNewIdentity.NEVER;
- final SignalAccountFiles signalAccountFiles = new SignalAccountFiles(configPath,
- serviceEnvironment,
- BaseConfig.USER_AGENT,
- trustNewIdentity);
+ final SignalAccountFiles signalAccountFiles;
+ try {
+ signalAccountFiles = new SignalAccountFiles(configPath,
+ serviceEnvironment,
+ BaseConfig.USER_AGENT,
+ trustNewIdentity);
+ } catch (IOException e) {
+ throw new IOErrorException("Failed to read local accounts list", e);
+ }
if (command instanceof ProvisioningCommand provisioningCommand) {
if (account != null) {
} else {
busType = DBusConnection.DBusBusType.SESSION;
}
- try (var dBusConn = DBusConnection.getConnection(busType)) {
+ try (var dBusConn = DBusConnectionBuilder.forType(busType).build()) {
if (command instanceof ProvisioningCommand c) {
if (account != null) {
throw new UserErrorException("You cannot specify a account (phone number) when linking");