mirror of
https://github.com/aljazceru/signal-cli.git
synced 2026-01-27 01:24:20 +01:00
Implement unregister command for jsonrpc and dbus daemon
This commit is contained in:
@@ -68,6 +68,7 @@ public class DbusManagerImpl implements Manager {
|
||||
|
||||
private final Set<ReceiveMessageHandler> weakHandlers = new HashSet<>();
|
||||
private final Set<ReceiveMessageHandler> messageHandlers = new HashSet<>();
|
||||
private final List<Runnable> closedListeners = new ArrayList<>();
|
||||
private DBusSigHandler<Signal.MessageReceivedV2> dbusMsgHandler;
|
||||
private DBusSigHandler<Signal.ReceiptReceivedV2> dbusRcptHandler;
|
||||
private DBusSigHandler<Signal.SyncMessageReceivedV2> dbusSyncHandler;
|
||||
@@ -583,6 +584,13 @@ public class DbusManagerImpl implements Manager {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addClosedListener(final Runnable listener) {
|
||||
synchronized (closedListeners) {
|
||||
closedListeners.add(listener);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void close() throws IOException {
|
||||
synchronized (this) {
|
||||
@@ -595,6 +603,10 @@ public class DbusManagerImpl implements Manager {
|
||||
weakHandlers.clear();
|
||||
messageHandlers.clear();
|
||||
}
|
||||
synchronized (closedListeners) {
|
||||
closedListeners.forEach(Runnable::run);
|
||||
closedListeners.clear();
|
||||
}
|
||||
}
|
||||
|
||||
private SendMessageResults handleMessage(
|
||||
|
||||
Reference in New Issue
Block a user