mirror of
https://codeberg.org/Mercury-IM/Smack
synced 2024-11-22 06:12:05 +01:00
Add and use AbstractConnectionClosedListener
This commit is contained in:
parent
b23c3226d2
commit
82eb9b18dd
7 changed files with 56 additions and 47 deletions
|
@ -0,0 +1,35 @@
|
|||
/**
|
||||
*
|
||||
* Copyright 2015 Florian Schmaus
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
package org.jivesoftware.smack;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public abstract class AbstractConnectionClosedListener extends AbstractConnectionListener {
|
||||
|
||||
@Override
|
||||
public final void connectionClosed() {
|
||||
connectionTerminated();
|
||||
}
|
||||
|
||||
@Override
|
||||
public final void connectionClosedOnError(Exception e) {
|
||||
connectionTerminated();
|
||||
}
|
||||
|
||||
public abstract void connectionTerminated();
|
||||
}
|
|
@ -135,8 +135,9 @@ public class Roster {
|
|||
connection.addSyncPacketListener(presencePacketListener, PRESENCE_PACKET_FILTER);
|
||||
|
||||
// Listen for connection events
|
||||
connection.addConnectionListener(new AbstractConnectionListener() {
|
||||
|
||||
connection.addConnectionListener(new AbstractConnectionClosedListener() {
|
||||
|
||||
@Override
|
||||
public void authenticated(XMPPConnection connection) {
|
||||
// Anonymous users can't have a roster, but it is possible that a Roster instance is
|
||||
// retrieved if getRoster() is called *before* connect(). So we have to check here
|
||||
|
@ -154,12 +155,8 @@ public class Roster {
|
|||
}
|
||||
}
|
||||
|
||||
public void connectionClosed() {
|
||||
// Changes the presence available contacts to unavailable
|
||||
setOfflinePresencesAndResetLoaded();
|
||||
}
|
||||
|
||||
public void connectionClosedOnError(Exception e) {
|
||||
@Override
|
||||
public void connectionTerminated() {
|
||||
// Changes the presence available contacts to unavailable
|
||||
setOfflinePresencesAndResetLoaded();
|
||||
}
|
||||
|
|
|
@ -24,7 +24,7 @@ import java.util.Map;
|
|||
import java.util.Random;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
|
||||
import org.jivesoftware.smack.AbstractConnectionListener;
|
||||
import org.jivesoftware.smack.AbstractConnectionClosedListener;
|
||||
import org.jivesoftware.smack.SmackException;
|
||||
import org.jivesoftware.smack.SmackException.NoResponseException;
|
||||
import org.jivesoftware.smack.SmackException.NotConnectedException;
|
||||
|
@ -107,15 +107,10 @@ public class InBandBytestreamManager implements BytestreamManager {
|
|||
InBandBytestreamManager.getByteStreamManager(connection);
|
||||
|
||||
// register shutdown listener
|
||||
connection.addConnectionListener(new AbstractConnectionListener() {
|
||||
connection.addConnectionListener(new AbstractConnectionClosedListener() {
|
||||
|
||||
@Override
|
||||
public void connectionClosed() {
|
||||
InBandBytestreamManager.getByteStreamManager(connection).disableService();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void connectionClosedOnError(Exception e) {
|
||||
public void connectionTerminated() {
|
||||
InBandBytestreamManager.getByteStreamManager(connection).disableService();
|
||||
}
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@ import java.util.Random;
|
|||
import java.util.concurrent.ConcurrentHashMap;
|
||||
import java.util.concurrent.TimeoutException;
|
||||
|
||||
import org.jivesoftware.smack.AbstractConnectionListener;
|
||||
import org.jivesoftware.smack.AbstractConnectionClosedListener;
|
||||
import org.jivesoftware.smack.SmackException;
|
||||
import org.jivesoftware.smack.SmackException.NoResponseException;
|
||||
import org.jivesoftware.smack.SmackException.FeatureNotSupportedException;
|
||||
|
@ -100,15 +100,10 @@ public final class Socks5BytestreamManager implements BytestreamManager {
|
|||
Socks5BytestreamManager.getBytestreamManager(connection);
|
||||
|
||||
// register shutdown listener
|
||||
connection.addConnectionListener(new AbstractConnectionListener() {
|
||||
connection.addConnectionListener(new AbstractConnectionClosedListener() {
|
||||
|
||||
@Override
|
||||
public void connectionClosed() {
|
||||
Socks5BytestreamManager.getBytestreamManager(connection).disableService();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void connectionClosedOnError(Exception e) {
|
||||
public void connectionTerminated() {
|
||||
Socks5BytestreamManager.getBytestreamManager(connection).disableService();
|
||||
}
|
||||
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
*/
|
||||
package org.jivesoftware.smackx.caps;
|
||||
|
||||
import org.jivesoftware.smack.AbstractConnectionListener;
|
||||
import org.jivesoftware.smack.AbstractConnectionClosedListener;
|
||||
import org.jivesoftware.smack.SmackException.NoResponseException;
|
||||
import org.jivesoftware.smack.SmackException.NotConnectedException;
|
||||
import org.jivesoftware.smack.XMPPConnection;
|
||||
|
@ -274,7 +274,7 @@ public class EntityCapsManager extends Manager {
|
|||
this.sdm = ServiceDiscoveryManager.getInstanceFor(connection);
|
||||
instances.put(connection, this);
|
||||
|
||||
connection.addConnectionListener(new AbstractConnectionListener() {
|
||||
connection.addConnectionListener(new AbstractConnectionClosedListener() {
|
||||
@Override
|
||||
public void connected(XMPPConnection connection) {
|
||||
// It's not clear when a server would report the caps stream
|
||||
|
@ -290,11 +290,7 @@ public class EntityCapsManager extends Manager {
|
|||
processCapsStreamFeatureIfAvailable(connection);
|
||||
}
|
||||
@Override
|
||||
public void connectionClosed() {
|
||||
presenceSend = false;
|
||||
}
|
||||
@Override
|
||||
public void connectionClosedOnError(Exception e) {
|
||||
public void connectionTerminated() {
|
||||
presenceSend = false;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/**
|
||||
*
|
||||
* Copyright 2012-2014 Florian Schmaus
|
||||
* Copyright 2012-2015 Florian Schmaus
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
|
@ -28,7 +28,7 @@ import java.util.concurrent.TimeUnit;
|
|||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import org.jivesoftware.smack.AbstractConnectionListener;
|
||||
import org.jivesoftware.smack.AbstractConnectionClosedListener;
|
||||
import org.jivesoftware.smack.SmackException;
|
||||
import org.jivesoftware.smack.SmackException.NoResponseException;
|
||||
import org.jivesoftware.smack.SmackException.NotConnectedException;
|
||||
|
@ -135,17 +135,13 @@ public class PingManager extends Manager {
|
|||
connection().sendPacket(ping.getPong());
|
||||
}
|
||||
}, PING_PACKET_FILTER);
|
||||
connection.addConnectionListener(new AbstractConnectionListener() {
|
||||
connection.addConnectionListener(new AbstractConnectionClosedListener() {
|
||||
@Override
|
||||
public void authenticated(XMPPConnection connection) {
|
||||
maybeSchedulePingServerTask();
|
||||
}
|
||||
@Override
|
||||
public void connectionClosed() {
|
||||
maybeStopPingServerTask();
|
||||
}
|
||||
@Override
|
||||
public void connectionClosedOnError(Exception arg0) {
|
||||
public void connectionTerminated() {
|
||||
maybeStopPingServerTask();
|
||||
}
|
||||
});
|
||||
|
|
|
@ -23,7 +23,7 @@ import java.util.Map;
|
|||
import java.util.Random;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import org.jivesoftware.smack.AbstractConnectionListener;
|
||||
import org.jivesoftware.smack.AbstractConnectionClosedListener;
|
||||
import org.jivesoftware.smack.ConnectionListener;
|
||||
import org.jivesoftware.smack.PacketListener;
|
||||
import org.jivesoftware.smack.SmackException;
|
||||
|
@ -628,14 +628,9 @@ public class JingleSession extends JingleNegotiator implements MediaReceivedList
|
|||
*/
|
||||
private void installConnectionListeners(final XMPPConnection connection) {
|
||||
if (connection != null) {
|
||||
connectionListener = new AbstractConnectionListener() {
|
||||
connectionListener = new AbstractConnectionClosedListener() {
|
||||
@Override
|
||||
public void connectionClosed() {
|
||||
unregisterInstanceFor(connection);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void connectionClosedOnError(java.lang.Exception e) {
|
||||
public void connectionTerminated() {
|
||||
unregisterInstanceFor(connection);
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue