1
0
Fork 0
mirror of https://codeberg.org/Mercury-IM/Smack synced 2024-11-21 13:52:06 +01:00

Merge remote-tracking branch 'vanitas/connectionListenerConnecting' into mercuryPatches

This commit is contained in:
Paul Schaub 2020-07-18 13:58:00 +02:00
commit 1267729430
2 changed files with 20 additions and 1 deletions

View file

@ -514,6 +514,9 @@ public abstract class AbstractXMPPConnection implements XMPPConnection {
// Check if not already connected
throwAlreadyConnectedExceptionIfAppropriate();
// Notify connection listeners that we are trying to connect
callConnectionConnectingListener();
// Reset the connection state
initState();
closingStreamReceived = false;
@ -1680,6 +1683,12 @@ public abstract class AbstractXMPPConnection implements XMPPConnection {
}
}
protected void callConnectionConnectingListener() {
for (ConnectionListener listener : connectionListeners) {
listener.connecting(this);
}
}
protected void callConnectionConnectedListener() {
for (ConnectionListener listener : connectionListeners) {
listener.connected(this);

View file

@ -1,6 +1,6 @@
/**
*
* Copyright 2003-2007 Jive Software.
* Copyright 2003-2007 Jive Software, 2020 Paul Schaub
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -28,6 +28,16 @@ package org.jivesoftware.smack;
*/
public interface ConnectionListener {
/**
* Notification that the connection is in the process of connecting.
* This method is called when {@link AbstractXMPPConnection#connect()} is executed.
*
* @param connection connection
* @since 4.4
*/
default void connecting(XMPPConnection connection) {
}
/**
* Notification that the connection has been successfully connected to the remote endpoint (e.g. the XMPP server).
* <p>