Add AbstractXMPPConnection.initState()

and init/reset the sychronization points there.

This method is called right at the beginning of connect() and at the
end of shutdown().
This commit is contained in:
Florian Schmaus 2019-03-09 17:13:54 +01:00
parent 7518bf9a25
commit c4289b2c18
2 changed files with 13 additions and 3 deletions

View File

@ -381,6 +381,12 @@ public abstract class AbstractXMPPConnection implements XMPPConnection {
@Override
public abstract boolean isUsingCompression();
protected void initState() {
saslFeatureReceived.init();
lastFeaturesReceived.init();
tlsHandled.init();
}
/**
* Establishes a connection to the XMPP server. It basically
* creates and maintains a connection to the server.
@ -399,10 +405,8 @@ public abstract class AbstractXMPPConnection implements XMPPConnection {
throwAlreadyConnectedExceptionIfAppropriate();
// Reset the connection state
initState();
saslAuthentication.init();
saslFeatureReceived.init();
lastFeaturesReceived.init();
tlsHandled.init();
streamId = null;
try {

View File

@ -534,6 +534,12 @@ public class XMPPTCPConnection extends AbstractXMPPConnection {
reader = null;
writer = null;
initState();
}
@Override
protected void initState() {
super.initState();
maybeCompressFeaturesReceived.init();
compressSyncPoint.init();
smResumedSyncPoint.init();