disconnect functionality

This commit is contained in:
Zlatin Balevsky
2019-11-12 14:19:57 +00:00
parent e9c554d717
commit 289b958784
3 changed files with 5 additions and 1 deletions

View File

@ -110,6 +110,7 @@ class ChatClient implements Closeable {
public void close() {
connectThread?.interrupt()
connection?.close()
eventBus.publish(new ChatConnectionEvent(status : ChatConnectionAttemptStatus.DISCONNECTED, persona : host))
}
void ping() {

View File

@ -1,5 +1,5 @@
package com.muwire.core.chat;
public enum ChatConnectionAttemptStatus {
CONNECTING, SUCCESSFUL, REJECTED, FAILED
CONNECTING, SUCCESSFUL, REJECTED, FAILED, DISCONNECTED
}

View File

@ -6,6 +6,8 @@ import griffon.inject.MVCMember
import griffon.metadata.ArtifactProviderFor
import javax.annotation.Nonnull
import com.muwire.core.chat.UIDisconnectChatEvent
@ArtifactProviderFor(GriffonController)
class ChatServerController {
@MVCMember @Nonnull
@ -13,5 +15,6 @@ class ChatServerController {
@ControllerAction
void disconnect() {
model.core.eventBus.publish(new UIDisconnectChatEvent(host : model.host))
}
}