From 4c646436a58c02d762e0e59e7a42e9ad2192c4d2 Mon Sep 17 00:00:00 2001
From: Florian Schmaus
Date: Sat, 11 Feb 2017 16:16:41 +0100
Subject: [PATCH] Bump "Error Prone" to 2.0.15
and fix a few things :)
---
build.gradle | 2 +-
.../smack/bosh/BOSHConfiguration.java | 1 +
.../smack/bosh/XMPPBOSHConnection.java | 24 +++++--
.../smack/AbstractXMPPConnection.java | 1 +
.../smack/ReconnectionManager.java | 2 +
.../smack/SmackInitialization.java | 5 +-
.../smack/debugger/AbstractDebugger.java | 16 +++++
.../filter/AbstractFromToMatchesFilter.java | 2 +
.../jivesoftware/smack/filter/AndFilter.java | 1 +
.../jivesoftware/smack/filter/NotFilter.java | 1 +
.../smack/filter/PacketExtensionFilter.java | 1 +
.../smack/filter/PacketIDFilter.java | 2 +
.../smack/filter/PacketTypeFilter.java | 1 +
.../smack/filter/StanzaExtensionFilter.java | 1 +
.../smack/filter/StanzaIdFilter.java | 2 +
.../smack/filter/StanzaTypeFilter.java | 1 +
.../smack/packet/DefaultExtensionElement.java | 2 +
.../jivesoftware/smack/packet/Message.java | 4 ++
.../smack/provider/IntrospectionProvider.java | 2 +-
.../smack/provider/ProviderFileLoader.java | 10 ++-
.../proxy/Socks4ProxySocketConnection.java | 5 +-
.../proxy/Socks5ProxySocketConnection.java | 12 ++--
.../smack/sasl/SASLMechanism.java | 5 +-
.../smack/sasl/core/SASLAnonymous.java | 1 +
.../smack/sasl/core/ScramMechanism.java | 24 +++++--
.../util/ArrayBlockingQueueWithShutdown.java | 4 ++
.../jivesoftware/smack/util/FileUtils.java | 5 +-
.../smack/util/ObservableReader.java | 9 +++
.../smack/util/ObservableWriter.java | 7 ++
.../smack/util/stringencoder/Base32.java | 37 ++++++++--
.../jivesoftware/smack/DummyConnection.java | 1 +
.../smack/StanzaCollectorTest.java | 6 +-
.../smack/sasl/DigestMd5SaslTest.java | 5 +-
.../smack/util/PacketParserUtilsTest.java | 1 +
.../smack/util/StringUtilsTest.java | 12 ++--
.../slf4j/SLF4JLoggingConnectionListener.java | 5 ++
.../slf4j/SLF4JLoggingPacketListener.java | 1 +
.../debugger/slf4j/SLF4JRawXmlListener.java | 2 +
.../smackx/debugger/EnhancedDebugger.java | 55 +++++++++++++--
.../debugger/EnhancedDebuggerWindow.java | 9 ++-
.../smackx/debugger/LiteDebugger.java | 20 +++++-
.../smackx/carbons/CarbonManager.java | 2 +
.../hoxt/packet/AbstractHttpOverXmpp.java | 1 +
.../iot/control/element/IoTSetRequest.java | 19 ++++-
.../smackx/iot/control/element/SetData.java | 2 +-
.../smackx/iot/data/IoTDataManager.java | 1 +
.../iot/discovery/IoTDiscoveryManager.java | 1 +
.../smackx/iot/element/NodeInfo.java | 1 +
.../provisioning/IoTProvisioningManager.java | 1 +
.../jivesoftware/smack/chat2/ChatManager.java | 69 ++++++++++++++++++-
.../jivesoftware/smackx/amp/AMPManager.java | 1 +
.../attention/packet/AttentionExtension.java | 3 +
.../bookmarks/BookmarkedConference.java | 1 +
.../smackx/bookmarks/BookmarkedURL.java | 1 +
.../smackx/bookmarks/Bookmarks.java | 3 +
.../ibb/InBandBytestreamListener.java | 1 +
.../ibb/InBandBytestreamManager.java | 9 +++
.../ibb/InBandBytestreamRequest.java | 4 ++
.../ibb/InBandBytestreamSession.java | 25 ++++++-
.../bytestreams/ibb/InitiationListener.java | 1 +
.../ibb/packet/DataPacketExtension.java | 2 +
.../socks5/InitiationListener.java | 1 +
.../socks5/Socks5BytestreamListener.java | 1 +
.../socks5/Socks5BytestreamManager.java | 9 +++
.../socks5/Socks5BytestreamRequest.java | 4 ++
.../socks5/Socks5BytestreamSession.java | 5 ++
.../bytestreams/socks5/Socks5Client.java | 11 ++-
.../socks5/Socks5ClientForInitiator.java | 1 +
.../bytestreams/socks5/Socks5Proxy.java | 4 +-
.../bytestreams/socks5/packet/Bytestream.java | 3 +
.../smackx/caps/EntityCapsManager.java | 17 ++++-
.../smackx/caps/packet/CapsExtension.java | 2 +
.../caps/provider/CapsExtensionProvider.java | 1 +
.../smackx/chatstates/ChatStateManager.java | 6 +-
.../smackx/commands/AdHocCommand.java | 3 +-
.../smackx/commands/AdHocCommandManager.java | 13 +++-
.../commands/packet/AdHocCommandData.java | 3 +
.../smackx/delay/packet/DelayInformation.java | 2 +
.../AbstractNodeInformationProvider.java | 4 ++
.../smackx/disco/ServiceDiscoveryManager.java | 1 +
.../smackx/disco/packet/DiscoverInfo.java | 3 +
.../filetransfer/FaultTolerantNegotiator.java | 4 ++
.../smackx/filetransfer/FileTransfer.java | 4 +-
.../filetransfer/IBBTransferNegotiator.java | 4 ++
.../filetransfer/IncomingFileTransfer.java | 3 +
.../filetransfer/OutgoingFileTransfer.java | 6 +-
.../smackx/geoloc/GeoLocationManager.java | 1 +
.../smackx/iqlast/LastActivityManager.java | 2 +
.../iqprivate/packet/DefaultPrivateData.java | 3 +
.../smackx/iqversion/VersionManager.java | 1 +
.../muc/DefaultParticipantStatusListener.java | 15 ++++
.../smackx/muc/DefaultUserStatusListener.java | 13 ++++
.../smackx/muc/MultiUserChat.java | 3 +
.../smackx/muc/MultiUserChatManager.java | 2 +
.../org/jivesoftware/smackx/muc/Occupant.java | 2 +
.../muc/packet/GroupChatInvitation.java | 2 +
.../smackx/muc/packet/MUCInitialPresence.java | 3 +
.../smackx/muc/packet/MUCItem.java | 1 +
.../smackx/muc/packet/MUCUser.java | 2 +
.../jivesoftware/smackx/nick/packet/Nick.java | 3 +
.../smackx/offline/OfflineMessageManager.java | 1 +
.../offline/packet/OfflineMessageInfo.java | 3 +
.../jivesoftware/smackx/pep/PEPManager.java | 1 +
.../jivesoftware/smackx/ping/PingManager.java | 2 +
.../smackx/privacy/PrivacyListManager.java | 1 +
.../smackx/pubsub/Affiliation.java | 1 +
.../smackx/pubsub/ConfigurationEvent.java | 1 +
.../smackx/pubsub/ConfigureForm.java | 2 +
.../smackx/pubsub/EventElement.java | 3 +
.../smackx/pubsub/ItemsExtension.java | 5 +-
.../org/jivesoftware/smackx/pubsub/Node.java | 8 ++-
.../smackx/pubsub/NodeExtension.java | 3 +
.../smackx/pubsub/PubSubElementType.java | 4 +-
.../smackx/pubsub/RetractItem.java | 3 +
.../smackx/pubsub/SimplePayload.java | 2 +
.../smackx/pubsub/Subscription.java | 1 +
.../receipts/DeliveryReceiptManager.java | 1 +
.../receipts/DeliveryReceiptRequest.java | 3 +
.../smackx/shim/packet/Header.java | 2 +
.../smackx/shim/packet/HeadersExtension.java | 2 +
.../smackx/si/packet/StreamInitiation.java | 8 ++-
.../smackx/time/EntityTimeManager.java | 1 +
.../smackx/vcardtemp/packet/VCard.java | 2 +
.../jivesoftware/smackx/xdata/FormField.java | 2 +
.../smackx/xdata/packet/DataForm.java | 2 +
.../smackx/xdatalayout/packet/DataLayout.java | 4 ++
.../packet/ValidateElement.java | 5 ++
.../smackx/xhtmlim/XHTMLManager.java | 1 +
.../smackx/xhtmlim/XHTMLText.java | 1 +
.../smackx/xhtmlim/packet/XHTMLExtension.java | 2 +
.../jivesoftware/smackx/bob/BoBIQTest.java | 3 +-
.../ibb/InBandBytestreamManagerTest.java | 1 +
.../InBandBytestreamSessionMessageTest.java | 1 +
.../ibb/InBandBytestreamSessionTest.java | 5 ++
.../ibb/packet/DataPacketExtensionTest.java | 6 +-
.../socks5/Socks5ByteStreamManagerTest.java | 8 +++
.../socks5/Socks5ClientForInitiatorTest.java | 1 +
.../bytestreams/socks5/Socks5ClientTest.java | 5 +-
.../bytestreams/socks5/Socks5ProxyTest.java | 3 +-
.../bytestreams/socks5/Socks5TestProxy.java | 4 +-
.../provider/DataValidationTest.java | 2 +-
.../jivesoftware/util/ConnectionUtils.java | 2 +
.../org/jivesoftware/util/Verification.java | 5 ++
.../jivesoftware/smack/chat/ChatManager.java | 1 +
.../smack/roster/RosterEntry.java | 2 +
.../smack/roster/packet/RosterPacket.java | 1 +
.../rosterstore/DirectoryRosterStore.java | 2 +
.../smack/chat/ChatConnectionTest.java | 6 +-
.../jivesoftware/smack/roster/RosterTest.java | 10 +++
.../roster/SubscriptionPreApprovalTest.java | 1 +
.../FileTransferIntegrationTest.java | 12 +++-
.../util/stringencoder/java7/Base64.java | 14 ++--
.../java7/Java7Base64UrlSafeEncoder.java | 21 +++++-
.../smackx/jingleold/ContentNegotiator.java | 4 ++
.../smackx/jingleold/JingleActionEnum.java | 3 +-
.../smackx/jingleold/JingleManager.java | 13 ++++
.../smackx/jingleold/JingleSession.java | 14 ++++
.../smackx/jingleold/JingleSessionState.java | 1 +
.../jingleold/JingleSessionStateActive.java | 3 +
.../jingleold/JingleSessionStateEnded.java | 3 +
.../jingleold/JingleSessionStatePending.java | 3 +
.../jingleold/JingleSessionStateUnknown.java | 3 +
.../smackx/jingleold/media/ContentInfo.java | 1 +
.../jingleold/media/MediaNegotiator.java | 3 +
.../smackx/jingleold/media/PayloadType.java | 4 ++
.../smackx/jingleold/mediaimpl/JMFInit.java | 9 +--
.../jingleold/mediaimpl/jmf/AudioChannel.java | 1 +
.../mediaimpl/jmf/AudioMediaSession.java | 6 ++
.../mediaimpl/jmf/AudioReceiver.java | 3 +
.../mediaimpl/jmf/JmfMediaManager.java | 3 +
.../mediaimpl/jspeex/AudioMediaSession.java | 9 +++
.../mediaimpl/jspeex/SpeexMediaManager.java | 3 +
.../mediaimpl/multi/MultiMediaManager.java | 4 ++
.../sshare/ScreenShareMediaManager.java | 4 ++
.../mediaimpl/sshare/ScreenShareSession.java | 7 ++
.../sshare/api/AbstractBufferedImageOp.java | 5 ++
.../mediaimpl/sshare/api/DefaultDecoder.java | 1 +
.../mediaimpl/sshare/api/DefaultEncoder.java | 1 +
.../mediaimpl/sshare/api/ImageReceiver.java | 3 +
.../sshare/api/ImageTransmitter.java | 1 +
.../sshare/api/OctTreeQuantizer.java | 6 +-
.../mediaimpl/sshare/api/QuantizeFilter.java | 2 +
.../sshare/api/WholeImageFilter.java | 1 +
.../mediaimpl/test/TestMediaManager.java | 4 ++
.../mediaimpl/test/TestMediaSession.java | 6 ++
.../smackx/jingleold/nat/BasicResolver.java | 3 +
.../jingleold/nat/BasicTransportManager.java | 1 +
.../smackx/jingleold/nat/BridgedResolver.java | 3 +
.../nat/BridgedTransportManager.java | 8 +++
.../smackx/jingleold/nat/FixedResolver.java | 3 +
.../jingleold/nat/FixedTransportManager.java | 8 +++
.../smackx/jingleold/nat/HttpServer.java | 21 +++---
.../smackx/jingleold/nat/ICECandidate.java | 7 +-
.../smackx/jingleold/nat/ICEResolver.java | 3 +
.../jingleold/nat/ICETransportManager.java | 11 ++-
.../smackx/jingleold/nat/RTPBridge.java | 1 +
.../smackx/jingleold/nat/STUNResolver.java | 8 ++-
.../jingleold/nat/STUNTransportManager.java | 1 +
.../jingleold/nat/TcpUdpBridgeClient.java | 2 +
.../jingleold/nat/TcpUdpBridgeServer.java | 2 +
.../jingleold/nat/TransportCandidate.java | 7 ++
.../jingleold/nat/TransportNegotiator.java | 22 +++++-
.../smackx/jingleold/packet/Jingle.java | 3 +-
.../jingleold/packet/JingleContent.java | 3 +
.../packet/JingleContentDescription.java | 5 ++
.../jingleold/packet/JingleContentInfo.java | 4 ++
.../jingleold/packet/JingleDescription.java | 4 ++
.../smackx/jingleold/packet/JingleError.java | 4 ++
.../jingleold/packet/JingleTransport.java | 9 +++
.../JingleContentDescriptionProvider.java | 2 +
.../provider/JingleDescriptionProvider.java | 3 +
.../provider/JingleTransportProvider.java | 4 ++
.../smackx/workgroup/MetaData.java | 3 +
.../smackx/workgroup/agent/AgentRoster.java | 27 ++++++--
.../smackx/workgroup/agent/AgentSession.java | 19 +++++
.../workgroup/agent/InvitationRequest.java | 3 +
.../workgroup/agent/OfferConfirmation.java | 2 +-
.../workgroup/agent/TransferRequest.java | 3 +
.../smackx/workgroup/agent/UserRequest.java | 3 +
.../workgroup/agent/WorkgroupQueue.java | 1 +
.../smackx/workgroup/packet/AgentStatus.java | 3 +
.../workgroup/packet/MetaDataProvider.java | 1 +
.../workgroup/packet/OfferRevokeProvider.java | 2 +-
.../smackx/workgroup/packet/QueueDetails.java | 3 +
.../workgroup/packet/QueueOverview.java | 3 +
.../smackx/workgroup/packet/QueueUpdate.java | 3 +
.../workgroup/packet/RoomInvitation.java | 2 +
.../smackx/workgroup/packet/RoomTransfer.java | 2 +
.../smackx/workgroup/packet/SessionID.java | 3 +
.../smackx/workgroup/packet/UserID.java | 3 +
.../packet/WorkgroupInformation.java | 3 +
.../settings/WorkgroupProperties.java | 2 +-
.../smackx/workgroup/user/Workgroup.java | 5 ++
.../util/ListenerEventDispatcher.java | 3 +-
.../DefaultMessageEventRequestListener.java | 4 ++
.../smackx/xevent/MessageEventManager.java | 1 +
.../smackx/xevent/packet/MessageEvent.java | 3 +
.../smackx/xroster/RosterExchangeManager.java | 1 +
.../smackx/xroster/packet/RosterExchange.java | 3 +
.../sasl/javax/SASLCramMD5Mechanism.java | 1 +
.../sasl/javax/SASLDigestMD5Mechanism.java | 1 +
.../smack/sasl/javax/SASLPlainMechanism.java | 1 +
.../smack/sasl/javax/SASLDigestMD5Test.java | 8 ++-
.../sasl/provided/SASLDigestMD5Mechanism.java | 11 ++-
.../sasl/provided/SASLDigestMD5Test.java | 8 ++-
.../smack/tcp/XMPPTCPConnection.java | 3 +-
246 files changed, 1122 insertions(+), 124 deletions(-)
diff --git a/build.gradle b/build.gradle
index 5cfd4ad21..f4e013e2e 100644
--- a/build.gradle
+++ b/build.gradle
@@ -170,7 +170,7 @@ allprojects {
// version 52.0" error messages caused by the errorprone javac.
// See https://github.com/tbroyer/gradle-errorprone-plugin/issues/18 for more information.
configurations.errorprone {
- resolutionStrategy.force 'com.google.errorprone:error_prone_core:2.0.5'
+ resolutionStrategy.force 'com.google.errorprone:error_prone_core:2.0.15'
}
}
diff --git a/smack-bosh/src/main/java/org/jivesoftware/smack/bosh/BOSHConfiguration.java b/smack-bosh/src/main/java/org/jivesoftware/smack/bosh/BOSHConfiguration.java
index 92615f32e..252a49a43 100644
--- a/smack-bosh/src/main/java/org/jivesoftware/smack/bosh/BOSHConfiguration.java
+++ b/smack-bosh/src/main/java/org/jivesoftware/smack/bosh/BOSHConfiguration.java
@@ -55,6 +55,7 @@ public final class BOSHConfiguration extends ConnectionConfiguration {
return proxy != null;
}
+ @Override
public ProxyInfo getProxyInfo() {
return proxy;
}
diff --git a/smack-bosh/src/main/java/org/jivesoftware/smack/bosh/XMPPBOSHConnection.java b/smack-bosh/src/main/java/org/jivesoftware/smack/bosh/XMPPBOSHConnection.java
index f88cc7c3e..abf9105f6 100644
--- a/smack-bosh/src/main/java/org/jivesoftware/smack/bosh/XMPPBOSHConnection.java
+++ b/smack-bosh/src/main/java/org/jivesoftware/smack/bosh/XMPPBOSHConnection.java
@@ -203,11 +203,13 @@ public class XMPPBOSHConnection extends AbstractXMPPConnection {
saslFeatureReceived.reportSuccess();
}
+ @Override
public boolean isSecureConnection() {
// TODO: Implement SSL usage
return false;
}
+ @Override
public boolean isUsingCompression() {
// TODO: Implement compression
return false;
@@ -313,16 +315,25 @@ public class XMPPBOSHConnection extends AbstractXMPPConnection {
/**
* Initialize the SmackDebugger which allows to log and debug XML traffic.
*/
+ @Override
protected void initDebugger() {
// TODO: Maybe we want to extend the SmackDebugger for simplification
// and a performance boost.
// Initialize a empty writer which discards all data.
writer = new Writer() {
- public void write(char[] cbuf, int off, int len) { /* ignore */}
- public void close() { /* ignore */ }
- public void flush() { /* ignore */ }
- };
+ @Override
+ public void write(char[] cbuf, int off, int len) {
+ /* ignore */}
+
+ @Override
+ public void close() {
+ /* ignore */ }
+
+ @Override
+ public void flush() {
+ /* ignore */ }
+ };
// Initialize a pipe for received raw data.
try {
@@ -338,6 +349,7 @@ public class XMPPBOSHConnection extends AbstractXMPPConnection {
// Add listeners for the received and sent raw data.
client.addBOSHClientResponseListener(new BOSHClientResponseListener() {
+ @Override
public void responseReceived(BOSHMessageEvent event) {
if (event.getBody() != null) {
try {
@@ -350,6 +362,7 @@ public class XMPPBOSHConnection extends AbstractXMPPConnection {
}
});
client.addBOSHClientRequestListener(new BOSHClientRequestListener() {
+ @Override
public void requestSent(BOSHMessageEvent event) {
if (event.getBody() != null) {
try {
@@ -366,6 +379,7 @@ public class XMPPBOSHConnection extends AbstractXMPPConnection {
private Thread thread = this;
private int bufferLength = 1024;
+ @Override
public void run() {
try {
char[] cbuf = new char[bufferLength];
@@ -406,6 +420,7 @@ public class XMPPBOSHConnection extends AbstractXMPPConnection {
* Process the connection listeners and try to login if the
* connection was formerly authenticated and is now reconnected.
*/
+ @Override
public void connectionEvent(BOSHClientConnEvent connEvent) {
try {
if (connEvent.isConnected()) {
@@ -463,6 +478,7 @@ public class XMPPBOSHConnection extends AbstractXMPPConnection {
*
* @param event the BOSH client response which includes the received packet.
*/
+ @Override
public void responseReceived(BOSHMessageEvent event) {
AbstractBody body = event.getBody();
if (body != null) {
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/AbstractXMPPConnection.java b/smack-core/src/main/java/org/jivesoftware/smack/AbstractXMPPConnection.java
index 2e8f5a5c5..eab2710c2 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/AbstractXMPPConnection.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/AbstractXMPPConnection.java
@@ -1616,6 +1616,7 @@ public abstract class AbstractXMPPConnection implements XMPPConnection {
private long lastStanzaReceived;
+ @Override
public long getLastStanzaReceived() {
return lastStanzaReceived;
}
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/ReconnectionManager.java b/smack-core/src/main/java/org/jivesoftware/smack/ReconnectionManager.java
index 90a5f9a6a..4430b1f9e 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/ReconnectionManager.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/ReconnectionManager.java
@@ -70,6 +70,7 @@ public final class ReconnectionManager {
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
if (connection instanceof AbstractXMPPConnection) {
ReconnectionManager.getInstanceFor((AbstractXMPPConnection) connection);
@@ -204,6 +205,7 @@ public final class ReconnectionManager {
/**
* The process will try the reconnection until the connection succeed or the user cancel it
*/
+ @Override
public void run() {
final AbstractXMPPConnection connection = weakRefConnection.get();
if (connection == null) {
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/SmackInitialization.java b/smack-core/src/main/java/org/jivesoftware/smack/SmackInitialization.java
index 74f8d49fb..7bdb8e18a 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/SmackInitialization.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/SmackInitialization.java
@@ -37,6 +37,7 @@ import org.jivesoftware.smack.sasl.core.SASLXOauth2Mechanism;
import org.jivesoftware.smack.sasl.core.SCRAMSHA1Mechanism;
import org.jivesoftware.smack.sasl.core.ScramSha1PlusMechanism;
import org.jivesoftware.smack.util.FileUtils;
+import org.jivesoftware.smack.util.StringUtils;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import org.xmlpull.v1.XmlPullParserFactory;
@@ -60,7 +61,7 @@ public final class SmackInitialization {
static {
String smackVersion;
try {
- BufferedReader reader = new BufferedReader(new InputStreamReader(FileUtils.getStreamForUrl("classpath:org.jivesoftware.smack/version", null)));
+ BufferedReader reader = new BufferedReader(new InputStreamReader(FileUtils.getStreamForUrl("classpath:org.jivesoftware.smack/version", null), StringUtils.UTF8));
smackVersion = reader.readLine();
try {
reader.close();
@@ -232,7 +233,7 @@ public final class SmackInitialization {
}
}
if (SmackInitializer.class.isAssignableFrom(initClass)) {
- SmackInitializer initializer = (SmackInitializer) initClass.newInstance();
+ SmackInitializer initializer = (SmackInitializer) initClass.getConstructor().newInstance();
List exceptions = initializer.initialize();
if (exceptions == null || exceptions.size() == 0) {
LOGGER.log(Level.FINE, "Loaded SmackInitializer " + className);
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/debugger/AbstractDebugger.java b/smack-core/src/main/java/org/jivesoftware/smack/debugger/AbstractDebugger.java
index a7940fe08..7a58e64cb 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/debugger/AbstractDebugger.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/debugger/AbstractDebugger.java
@@ -49,6 +49,7 @@ public abstract class AbstractDebugger implements SmackDebugger {
// Create a special Reader that wraps the main Reader and logs data to the GUI.
this.reader = new ObservableReader(reader);
readerListener = new ReaderListener() {
+ @Override
public void read(String str) {
log("RECV (" + connection.getConnectionCounter() + "): " + str);
}
@@ -58,6 +59,7 @@ public abstract class AbstractDebugger implements SmackDebugger {
// Create a special Writer that wraps the main Writer and logs data to the GUI.
this.writer = new ObservableWriter(writer);
writerListener = new WriterListener() {
+ @Override
public void write(String str) {
log("SENT (" + connection.getConnectionCounter() + "): " + str);
}
@@ -68,6 +70,7 @@ public abstract class AbstractDebugger implements SmackDebugger {
// the GUI. This is what we call "interpreted" packet data, since it's the packet
// data as Smack sees it and not as it's coming in as raw XML.
listener = new StanzaListener() {
+ @Override
public void processStanza(Stanza packet) {
if (printInterpreted) {
log("RCV PKT (" + connection.getConnectionCounter() + "): " + packet.toXML());
@@ -76,10 +79,12 @@ public abstract class AbstractDebugger implements SmackDebugger {
};
connListener = new ConnectionListener() {
+ @Override
public void connected(XMPPConnection connection) {
log("XMPPConnection connected ("
+ connection + ")");
}
+ @Override
public void authenticated(XMPPConnection connection, boolean resumed) {
String logString = "XMPPConnection authenticated (" + connection + ")";
if (resumed) {
@@ -87,6 +92,7 @@ public abstract class AbstractDebugger implements SmackDebugger {
}
log(logString);
}
+ @Override
public void connectionClosed() {
log(
"XMPPConnection closed (" +
@@ -94,24 +100,28 @@ public abstract class AbstractDebugger implements SmackDebugger {
")");
}
+ @Override
public void connectionClosedOnError(Exception e) {
log(
"XMPPConnection closed due to an exception (" +
connection +
")", e);
}
+ @Override
public void reconnectionFailed(Exception e) {
log(
"Reconnection failed due to an exception (" +
connection +
")", e);
}
+ @Override
public void reconnectionSuccessful() {
log(
"XMPPConnection reconnected (" +
connection +
")");
}
+ @Override
public void reconnectingIn(int seconds) {
log(
"XMPPConnection (" +
@@ -125,6 +135,7 @@ public abstract class AbstractDebugger implements SmackDebugger {
protected abstract void log(String logMessage, Throwable throwable);
+ @Override
public Reader newConnectionReader(Reader newReader) {
reader.removeReaderListener(readerListener);
ObservableReader debugReader = new ObservableReader(newReader);
@@ -133,6 +144,7 @@ public abstract class AbstractDebugger implements SmackDebugger {
return reader;
}
+ @Override
public Writer newConnectionWriter(Writer newWriter) {
writer.removeWriterListener(writerListener);
ObservableWriter debugWriter = new ObservableWriter(newWriter);
@@ -159,18 +171,22 @@ public abstract class AbstractDebugger implements SmackDebugger {
connection.addConnectionListener(connListener);
}
+ @Override
public Reader getReader() {
return reader;
}
+ @Override
public Writer getWriter() {
return writer;
}
+ @Override
public StanzaListener getReaderListener() {
return listener;
}
+ @Override
public StanzaListener getWriterListener() {
return null;
}
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/filter/AbstractFromToMatchesFilter.java b/smack-core/src/main/java/org/jivesoftware/smack/filter/AbstractFromToMatchesFilter.java
index 7f71678cf..d9b5605e0 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/filter/AbstractFromToMatchesFilter.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/filter/AbstractFromToMatchesFilter.java
@@ -47,6 +47,7 @@ public abstract class AbstractFromToMatchesFilter implements StanzaFilter {
this.ignoreResourcepart = ignoreResourcepart;
}
+ @Override
public final boolean accept(final Stanza stanza) {
Jid stanzaAddress = getAddressToCompare(stanza);
@@ -63,6 +64,7 @@ public abstract class AbstractFromToMatchesFilter implements StanzaFilter {
protected abstract Jid getAddressToCompare(Stanza stanza);
+ @Override
public final String toString() {
String matchMode = ignoreResourcepart ? "ignoreResourcepart" : "full";
return getClass().getSimpleName() + " (" + matchMode + "): " + address;
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/filter/AndFilter.java b/smack-core/src/main/java/org/jivesoftware/smack/filter/AndFilter.java
index a1a5749fc..216c3ddde 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/filter/AndFilter.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/filter/AndFilter.java
@@ -44,6 +44,7 @@ public class AndFilter extends AbstractListFilter implements StanzaFilter {
super(filters);
}
+ @Override
public boolean accept(Stanza packet) {
for (StanzaFilter filter : filters) {
if (!filter.accept(packet)) {
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/filter/NotFilter.java b/smack-core/src/main/java/org/jivesoftware/smack/filter/NotFilter.java
index e657cf4eb..c836be1c1 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/filter/NotFilter.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/filter/NotFilter.java
@@ -39,6 +39,7 @@ public class NotFilter implements StanzaFilter {
this.filter = Objects.requireNonNull(filter, "Parameter must not be null.");
}
+ @Override
public boolean accept(Stanza packet) {
return !filter.accept(packet);
}
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/filter/PacketExtensionFilter.java b/smack-core/src/main/java/org/jivesoftware/smack/filter/PacketExtensionFilter.java
index f6458194f..82c1016c0 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/filter/PacketExtensionFilter.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/filter/PacketExtensionFilter.java
@@ -67,6 +67,7 @@ public class PacketExtensionFilter implements StanzaFilter {
this(packetExtension.getElementName(), packetExtension.getNamespace());
}
+ @Override
public boolean accept(Stanza packet) {
return packet.hasExtension(elementName, namespace);
}
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/filter/PacketIDFilter.java b/smack-core/src/main/java/org/jivesoftware/smack/filter/PacketIDFilter.java
index e4ea23248..d596f9ef9 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/filter/PacketIDFilter.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/filter/PacketIDFilter.java
@@ -54,10 +54,12 @@ public class PacketIDFilter implements StanzaFilter {
this.packetID = packetID;
}
+ @Override
public boolean accept(Stanza packet) {
return packetID.equals(packet.getStanzaId());
}
+ @Override
public String toString() {
return getClass().getSimpleName() + ": id=" + packetID;
}
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/filter/PacketTypeFilter.java b/smack-core/src/main/java/org/jivesoftware/smack/filter/PacketTypeFilter.java
index f20fdeac1..8b254f56e 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/filter/PacketTypeFilter.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/filter/PacketTypeFilter.java
@@ -51,6 +51,7 @@ public class PacketTypeFilter implements StanzaFilter {
this.packetType = packetType;
}
+ @Override
public boolean accept(Stanza packet) {
return packetType.isInstance(packet);
}
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/filter/StanzaExtensionFilter.java b/smack-core/src/main/java/org/jivesoftware/smack/filter/StanzaExtensionFilter.java
index e8fb46d46..f7f810e82 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/filter/StanzaExtensionFilter.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/filter/StanzaExtensionFilter.java
@@ -65,6 +65,7 @@ public class StanzaExtensionFilter implements StanzaFilter {
this(packetExtension.getElementName(), packetExtension.getNamespace());
}
+ @Override
public boolean accept(Stanza packet) {
return packet.hasExtension(elementName, namespace);
}
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/filter/StanzaIdFilter.java b/smack-core/src/main/java/org/jivesoftware/smack/filter/StanzaIdFilter.java
index 3cc9740a1..0e6b0f404 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/filter/StanzaIdFilter.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/filter/StanzaIdFilter.java
@@ -47,10 +47,12 @@ public class StanzaIdFilter implements StanzaFilter {
this.stanzaId = StringUtils.requireNotNullOrEmpty(stanzaID, "Stanza ID must not be null or empty.");
}
+ @Override
public boolean accept(Stanza stanza) {
return stanzaId.equals(stanza.getStanzaId());
}
+ @Override
public String toString() {
return getClass().getSimpleName() + ": id=" + stanzaId;
}
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/filter/StanzaTypeFilter.java b/smack-core/src/main/java/org/jivesoftware/smack/filter/StanzaTypeFilter.java
index 8b8971cda..156a7914e 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/filter/StanzaTypeFilter.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/filter/StanzaTypeFilter.java
@@ -51,6 +51,7 @@ public final class StanzaTypeFilter implements StanzaFilter {
this.packetType = packetType;
}
+ @Override
public boolean accept(Stanza packet) {
return packetType.isInstance(packet);
}
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/packet/DefaultExtensionElement.java b/smack-core/src/main/java/org/jivesoftware/smack/packet/DefaultExtensionElement.java
index 88166db43..e51b5b4ee 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/packet/DefaultExtensionElement.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/packet/DefaultExtensionElement.java
@@ -70,6 +70,7 @@ public class DefaultExtensionElement implements ExtensionElement {
*
* @return the XML element name of the stanza(/packet) extension.
*/
+ @Override
public String getElementName() {
return elementName;
}
@@ -79,6 +80,7 @@ public class DefaultExtensionElement implements ExtensionElement {
*
* @return the XML namespace of the stanza(/packet) extension.
*/
+ @Override
public String getNamespace() {
return namespace;
}
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/packet/Message.java b/smack-core/src/main/java/org/jivesoftware/smack/packet/Message.java
index e0ec0ce82..ebf18faef 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/packet/Message.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/packet/Message.java
@@ -570,6 +570,7 @@ public final class Message extends Stanza implements TypedCloneable {
}
+ @Override
public int hashCode() {
final int prime = 31;
int result = 1;
@@ -578,6 +579,7 @@ public final class Message extends Stanza implements TypedCloneable {
return result;
}
+ @Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
@@ -632,6 +634,7 @@ public final class Message extends Stanza implements TypedCloneable {
return message;
}
+ @Override
public int hashCode() {
final int prime = 31;
int result = 1;
@@ -640,6 +643,7 @@ public final class Message extends Stanza implements TypedCloneable {
return result;
}
+ @Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/provider/IntrospectionProvider.java b/smack-core/src/main/java/org/jivesoftware/smack/provider/IntrospectionProvider.java
index 88549db4f..e51033f43 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/provider/IntrospectionProvider.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/provider/IntrospectionProvider.java
@@ -78,7 +78,7 @@ public class IntrospectionProvider{
IOException, IllegalArgumentException, InvocationTargetException,
ClassNotFoundException {
ParserUtils.assertAtStartTag(parser);
- Object object = objectClass.newInstance();
+ Object object = objectClass.getConstructor().newInstance();
outerloop: while (true) {
int eventType = parser.next();
switch (eventType) {
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/provider/ProviderFileLoader.java b/smack-core/src/main/java/org/jivesoftware/smack/provider/ProviderFileLoader.java
index 2090401cc..bee798fb0 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/provider/ProviderFileLoader.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/provider/ProviderFileLoader.java
@@ -83,7 +83,8 @@ public class ProviderFileLoader implements ProviderLoader {
// reflection later to create instances of the class.
// Add the provider to the map.
if (IQProvider.class.isAssignableFrom(provider)) {
- iqProviders.add(new IQProviderInfo(elementName, namespace, (IQProvider) provider.newInstance()));
+ IQProvider iqProvider = (IQProvider) provider.getConstructor().newInstance();
+ iqProviders.add(new IQProviderInfo(elementName, namespace, iqProvider));
}
else {
exceptions.add(new IllegalArgumentException(className + " is not a IQProvider"));
@@ -96,7 +97,9 @@ public class ProviderFileLoader implements ProviderLoader {
// then we'll use reflection later to create instances
// of the class.
if (ExtensionElementProvider.class.isAssignableFrom(provider)) {
- extProviders.add(new ExtensionProviderInfo(elementName, namespace, (ExtensionElementProvider) provider.newInstance()));
+ ExtensionElementProvider extensionElementProvider = (ExtensionElementProvider) provider.getConstructor().newInstance();
+ extProviders.add(new ExtensionProviderInfo(elementName, namespace,
+ extensionElementProvider));
}
else {
exceptions.add(new IllegalArgumentException(className
@@ -104,9 +107,10 @@ public class ProviderFileLoader implements ProviderLoader {
}
break;
case "streamFeatureProvider":
+ ExtensionElementProvider streamFeatureProvider = (ExtensionElementProvider) provider.getConstructor().newInstance();
sfProviders.add(new StreamFeatureProviderInfo(elementName,
namespace,
- (ExtensionElementProvider) provider.newInstance()));
+ streamFeatureProvider));
break;
default:
LOGGER.warning("Unknown provider type: " + typeName);
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/proxy/Socks4ProxySocketConnection.java b/smack-core/src/main/java/org/jivesoftware/smack/proxy/Socks4ProxySocketConnection.java
index 40ef48215..65a54059a 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/proxy/Socks4ProxySocketConnection.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/proxy/Socks4ProxySocketConnection.java
@@ -23,6 +23,8 @@ import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.Socket;
+import org.jivesoftware.smack.util.StringUtils;
+
/**
* Socket factory for socks4 proxy.
*
@@ -89,7 +91,8 @@ public class Socks4ProxySocketConnection implements ProxySocketConnection {
if(user!=null)
{
- System.arraycopy(user.getBytes(), 0, buf, index, user.length());
+ byte[] userBytes = user.getBytes(StringUtils.UTF8);
+ System.arraycopy(userBytes, 0, buf, index, user.length());
index+=user.length();
}
buf[index++]=0;
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/proxy/Socks5ProxySocketConnection.java b/smack-core/src/main/java/org/jivesoftware/smack/proxy/Socks5ProxySocketConnection.java
index d7b71802e..3e54f877c 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/proxy/Socks5ProxySocketConnection.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/proxy/Socks5ProxySocketConnection.java
@@ -22,6 +22,8 @@ import java.io.OutputStream;
import java.net.InetSocketAddress;
import java.net.Socket;
+import org.jivesoftware.smack.util.StringUtils;
+
/**
* Socket factory for Socks5 proxy.
*
@@ -132,11 +134,13 @@ public class Socks5ProxySocketConnection implements ProxySocketConnection {
index=0;
buf[index++]=1;
buf[index++]=(byte)(user.length());
- System.arraycopy(user.getBytes(), 0, buf, index,
+ byte[] userBytes = user.getBytes(StringUtils.UTF8);
+ System.arraycopy(userBytes, 0, buf, index,
user.length());
index+=user.length();
- buf[index++]=(byte)(passwd.length());
- System.arraycopy(passwd.getBytes(), 0, buf, index,
+ byte[] passwordBytes = user.getBytes(StringUtils.UTF8);
+ buf[index++]=(byte)(passwordBytes.length);
+ System.arraycopy(passwordBytes, 0, buf, index,
passwd.length());
index+=passwd.length();
@@ -210,7 +214,7 @@ public class Socks5ProxySocketConnection implements ProxySocketConnection {
buf[index++]=1; // CONNECT
buf[index++]=0;
- byte[] hostb= host.getBytes();
+ byte[] hostb= host.getBytes(StringUtils.UTF8);
int len=hostb.length;
buf[index++]=3; // DOMAINNAME
buf[index++]=(byte)(len);
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/sasl/SASLMechanism.java b/smack-core/src/main/java/org/jivesoftware/smack/sasl/SASLMechanism.java
index 3a81b3535..c2cc66e3a 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/sasl/SASLMechanism.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/sasl/SASLMechanism.java
@@ -265,9 +265,10 @@ public abstract class SASLMechanism implements Comparable {
return null;
}
+ @Override
public final int compareTo(SASLMechanism other) {
// Switch to Integer.compare(int, int) once Smack is on Android 19 or higher.
- Integer ourPriority = new Integer(getPriority());
+ Integer ourPriority = getPriority();
return ourPriority.compareTo(other.getPriority());
}
@@ -300,7 +301,7 @@ public abstract class SASLMechanism implements Comparable {
}
/**
- * SASLprep the given String.
+ * SASLprep the given String. The resulting String is in UTF-8.
*
* @param string the String to sasl prep.
* @return the given String SASL preped
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/sasl/core/SASLAnonymous.java b/smack-core/src/main/java/org/jivesoftware/smack/sasl/core/SASLAnonymous.java
index 7f99b5ef8..509104d2b 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/sasl/core/SASLAnonymous.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/sasl/core/SASLAnonymous.java
@@ -30,6 +30,7 @@ public class SASLAnonymous extends SASLMechanism {
public static final String NAME = "ANONYMOUS";
+ @Override
public String getName() {
return NAME;
}
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/sasl/core/ScramMechanism.java b/smack-core/src/main/java/org/jivesoftware/smack/sasl/core/ScramMechanism.java
index a59b40815..08a1f6aab 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/sasl/core/ScramMechanism.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/sasl/core/ScramMechanism.java
@@ -16,6 +16,7 @@
*/
package org.jivesoftware.smack.sasl.core;
+import java.io.UnsupportedEncodingException;
import java.security.InvalidKeyException;
import java.security.SecureRandom;
import java.util.Collections;
@@ -105,7 +106,15 @@ public abstract class ScramMechanism extends SASLMechanism {
@Override
protected byte[] evaluateChallenge(byte[] challenge) throws SmackException {
- final String challengeString = new String(challenge);
+ String challengeString;
+ try {
+ // TODO: Where is it specified that this is an UTF-8 encoded string?
+ challengeString = new String(challenge, StringUtils.UTF8);
+ }
+ catch (UnsupportedEncodingException e) {
+ throw new AssertionError(e);
+ }
+
switch (state) {
case AUTH_TEXT_SENT:
final String serverFirstMessage = challengeString;
@@ -358,14 +367,21 @@ public abstract class ScramMechanism extends SASLMechanism {
* (PRF) and with dkLen == output length of HMAC() == output length of H().
*
*
- * @param str
+ * @param normalizedPassword the normalized password.
* @param salt
* @param iterations
* @return the result of the Hi function.
* @throws SmackException
*/
- private byte[] hi(String str, byte[] salt, int iterations) throws SmackException {
- byte[] key = str.getBytes();
+ private byte[] hi(String normalizedPassword, byte[] salt, int iterations) throws SmackException {
+ byte[] key;
+ try {
+ // According to RFC 5802 ยง 2.2, the resulting string of the normalization is also in UTF-8.
+ key = normalizedPassword.getBytes(StringUtils.UTF8);
+ }
+ catch (UnsupportedEncodingException e) {
+ throw new AssertionError();
+ }
// U1 := HMAC(str, salt + INT(1))
byte[] u = hmac(key, ByteUtils.concact(salt, ONE));
byte[] res = u.clone();
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/util/ArrayBlockingQueueWithShutdown.java b/smack-core/src/main/java/org/jivesoftware/smack/util/ArrayBlockingQueueWithShutdown.java
index a24c06d49..742b34cf1 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/util/ArrayBlockingQueueWithShutdown.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/util/ArrayBlockingQueueWithShutdown.java
@@ -240,6 +240,7 @@ public class ArrayBlockingQueueWithShutdown extends AbstractQueue implemen
* @param e the element to add.
* @throws InterruptedException if interrupted while waiting or if the queue was shut down.
*/
+ @Override
public void put(E e) throws InterruptedException {
checkNotNull(e);
lock.lockInterruptibly();
@@ -452,6 +453,7 @@ public class ArrayBlockingQueueWithShutdown extends AbstractQueue implemen
}
}
+ @Override
public boolean hasNext() {
return nextIndex >= 0;
}
@@ -469,6 +471,7 @@ public class ArrayBlockingQueueWithShutdown extends AbstractQueue implemen
}
}
+ @Override
public E next() {
lock.lock();
try {
@@ -486,6 +489,7 @@ public class ArrayBlockingQueueWithShutdown extends AbstractQueue implemen
}
}
+ @Override
public void remove() {
lock.lock();
try {
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/util/FileUtils.java b/smack-core/src/main/java/org/jivesoftware/smack/util/FileUtils.java
index 395fdf846..8fa5bb557 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/util/FileUtils.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/util/FileUtils.java
@@ -87,7 +87,8 @@ public final class FileUtils {
public static boolean addLines(String url, Set set) throws MalformedURLException, IOException {
InputStream is = getStreamForUrl(url, null);
if (is == null) return false;
- BufferedReader br = new BufferedReader(new InputStreamReader(is));
+ InputStreamReader sr = new InputStreamReader(is, StringUtils.UTF8);
+ BufferedReader br = new BufferedReader(sr);
String line;
while ((line = br.readLine()) != null) {
set.add(line);
@@ -102,6 +103,7 @@ public final class FileUtils {
* @return the content of file or null in case of an error
* @throws IOException
*/
+ @SuppressWarnings("DefaultCharset")
public static String readFileOrThrow(File file) throws FileNotFoundException, IOException {
Reader reader = null;
try {
@@ -132,6 +134,7 @@ public final class FileUtils {
return null;
}
+ @SuppressWarnings("DefaultCharset")
public static void writeFileOrThrow(File file, CharSequence content) throws IOException {
FileWriter writer = new FileWriter(file, false);
try {
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/util/ObservableReader.java b/smack-core/src/main/java/org/jivesoftware/smack/util/ObservableReader.java
index 3cd27ff2f..43713261a 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/util/ObservableReader.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/util/ObservableReader.java
@@ -37,6 +37,7 @@ public class ObservableReader extends Reader {
this.wrappedReader = wrappedReader;
}
+ @Override
public int read(char[] cbuf, int off, int len) throws IOException {
int count = wrappedReader.read(cbuf, off, len);
if (count > 0) {
@@ -54,34 +55,42 @@ public class ObservableReader extends Reader {
return count;
}
+ @Override
public void close() throws IOException {
wrappedReader.close();
}
+ @Override
public int read() throws IOException {
return wrappedReader.read();
}
+ @Override
public int read(char[] cbuf) throws IOException {
return wrappedReader.read(cbuf);
}
+ @Override
public long skip(long n) throws IOException {
return wrappedReader.skip(n);
}
+ @Override
public boolean ready() throws IOException {
return wrappedReader.ready();
}
+ @Override
public boolean markSupported() {
return wrappedReader.markSupported();
}
+ @Override
public void mark(int readAheadLimit) throws IOException {
wrappedReader.mark(readAheadLimit);
}
+ @Override
public void reset() throws IOException {
wrappedReader.reset();
}
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/util/ObservableWriter.java b/smack-core/src/main/java/org/jivesoftware/smack/util/ObservableWriter.java
index 8a7a754de..a92d00c28 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/util/ObservableWriter.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/util/ObservableWriter.java
@@ -38,36 +38,43 @@ public class ObservableWriter extends Writer {
this.wrappedWriter = wrappedWriter;
}
+ @Override
public void write(char[] cbuf, int off, int len) throws IOException {
wrappedWriter.write(cbuf, off, len);
String str = new String(cbuf, off, len);
maybeNotifyListeners(str);
}
+ @Override
public void flush() throws IOException {
notifyListeners();
wrappedWriter.flush();
}
+ @Override
public void close() throws IOException {
wrappedWriter.close();
}
+ @Override
public void write(int c) throws IOException {
wrappedWriter.write(c);
}
+ @Override
public void write(char[] cbuf) throws IOException {
wrappedWriter.write(cbuf);
String str = new String(cbuf);
maybeNotifyListeners(str);
}
+ @Override
public void write(String str) throws IOException {
wrappedWriter.write(str);
maybeNotifyListeners(str);
}
+ @Override
public void write(String str, int off, int len) throws IOException {
wrappedWriter.write(str, off, len);
str = str.substring(off, off + len);
diff --git a/smack-core/src/main/java/org/jivesoftware/smack/util/stringencoder/Base32.java b/smack-core/src/main/java/org/jivesoftware/smack/util/stringencoder/Base32.java
index 3a373671a..8e2f27f14 100644
--- a/smack-core/src/main/java/org/jivesoftware/smack/util/stringencoder/Base32.java
+++ b/smack-core/src/main/java/org/jivesoftware/smack/util/stringencoder/Base32.java
@@ -20,6 +20,9 @@ package org.jivesoftware.smack.util.stringencoder;
import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+
+import org.jivesoftware.smack.util.StringUtils;
/**
* Base32 string encoding is useful for when filenames case-insensitive filesystems are encoded.
@@ -53,7 +56,13 @@ public class Base32 {
public static String decode(String str) {
ByteArrayOutputStream bs = new ByteArrayOutputStream();
- byte[] raw = str.getBytes();
+ byte[] raw;
+ try {
+ raw = str.getBytes(StringUtils.UTF8);
+ }
+ catch (UnsupportedEncodingException e) {
+ throw new AssertionError(e);
+ }
for (int i = 0; i < raw.length; i++) {
char c = (char) raw[i];
if (!Character.isWhitespace(c)) {
@@ -106,11 +115,24 @@ public class Base32 {
}
}
- return new String(bs.toByteArray());
+ String res;
+ try {
+ res = new String(bs.toByteArray(), StringUtils.UTF8);
+ }
+ catch (UnsupportedEncodingException e) {
+ throw new AssertionError(e);
+ }
+ return res;
}
public static String encode(String str) {
- byte[] b = str.getBytes();
+ byte[] b;
+ try {
+ b = str.getBytes(StringUtils.UTF8);
+ }
+ catch (UnsupportedEncodingException e) {
+ throw new AssertionError(e);
+ }
ByteArrayOutputStream os = new ByteArrayOutputStream();
for (int i = 0; i < (b.length + 4) / 5; i++) {
@@ -153,7 +175,14 @@ public class Base32 {
os.write(c);
}
}
- return new String(os.toByteArray());
+ String res;
+ try {
+ res = new String(os.toByteArray(), StringUtils.UTF8);
+ }
+ catch (UnsupportedEncodingException e) {
+ throw new AssertionError(e);
+ }
+ return res;
}
private static int lenToPadding(int blocklen) {
diff --git a/smack-core/src/test/java/org/jivesoftware/smack/DummyConnection.java b/smack-core/src/test/java/org/jivesoftware/smack/DummyConnection.java
index 1bd11e119..40f9b4e7a 100644
--- a/smack-core/src/test/java/org/jivesoftware/smack/DummyConnection.java
+++ b/smack-core/src/test/java/org/jivesoftware/smack/DummyConnection.java
@@ -180,6 +180,7 @@ public class DummyConnection extends AbstractXMPPConnection {
*
* @param packet the stanza(/packet) to process.
*/
+ @Override
public void processStanza(Stanza packet) {
invokeStanzaCollectorsAndNotifyRecvListeners(packet);
}
diff --git a/smack-core/src/test/java/org/jivesoftware/smack/StanzaCollectorTest.java b/smack-core/src/test/java/org/jivesoftware/smack/StanzaCollectorTest.java
index 60560b504..4120f4529 100644
--- a/smack-core/src/test/java/org/jivesoftware/smack/StanzaCollectorTest.java
+++ b/smack-core/src/test/java/org/jivesoftware/smack/StanzaCollectorTest.java
@@ -176,7 +176,7 @@ public class StanzaCollectorTest
assertNull(collector.pollResult());
}
- class OKEverything implements StanzaFilter
+ static class OKEverything implements StanzaFilter
{
@Override
public boolean accept(Stanza packet)
@@ -186,7 +186,7 @@ public class StanzaCollectorTest
}
- class TestStanzaCollector extends StanzaCollector
+ static class TestStanzaCollector extends StanzaCollector
{
protected TestStanzaCollector(XMPPConnection conection, StanzaFilter packetFilter, int size)
{
@@ -194,7 +194,7 @@ public class StanzaCollectorTest
}
}
- class TestPacket extends Stanza
+ static class TestPacket extends Stanza
{
public TestPacket(int i)
{
diff --git a/smack-core/src/test/java/org/jivesoftware/smack/sasl/DigestMd5SaslTest.java b/smack-core/src/test/java/org/jivesoftware/smack/sasl/DigestMd5SaslTest.java
index 5855aba7f..9e1862b11 100644
--- a/smack-core/src/test/java/org/jivesoftware/smack/sasl/DigestMd5SaslTest.java
+++ b/smack-core/src/test/java/org/jivesoftware/smack/sasl/DigestMd5SaslTest.java
@@ -19,6 +19,7 @@ package org.jivesoftware.smack.sasl;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
+import java.io.UnsupportedEncodingException;
import java.util.HashMap;
import java.util.Map;
@@ -38,14 +39,14 @@ public class DigestMd5SaslTest extends AbstractSaslTest {
super(saslMechanism);
}
- protected void runTest(boolean useAuthzid) throws NotConnectedException, SmackException, InterruptedException, XmppStringprepException {
+ protected void runTest(boolean useAuthzid) throws NotConnectedException, SmackException, InterruptedException, XmppStringprepException, UnsupportedEncodingException {
EntityBareJid authzid = null;
if (useAuthzid) {
authzid = JidCreate.entityBareFrom("shazbat@xmpp.org");
}
saslMechanism.authenticate("florian", "irrelevant", JidCreate.domainBareFrom("xmpp.org"), "secret", authzid, null);
byte[] response = saslMechanism.evaluateChallenge(challengeBytes);
- String responseString = new String(response);
+ String responseString = new String(response, StringUtils.UTF8);
String[] responseParts = responseString.split(",");
Map responsePairs = new HashMap();
for (String part : responseParts) {
diff --git a/smack-core/src/test/java/org/jivesoftware/smack/util/PacketParserUtilsTest.java b/smack-core/src/test/java/org/jivesoftware/smack/util/PacketParserUtilsTest.java
index 117e9e3c1..b988a3e3a 100644
--- a/smack-core/src/test/java/org/jivesoftware/smack/util/PacketParserUtilsTest.java
+++ b/smack-core/src/test/java/org/jivesoftware/smack/util/PacketParserUtilsTest.java
@@ -851,6 +851,7 @@ public class PacketParserUtilsTest {
XmlUnitUtils.assertSimilar(saslFailureString, saslFailure.toXML());
}
+ @SuppressWarnings("ReferenceEquality")
private static String determineNonDefaultLanguage() {
String otherLanguage = "jp";
Locale[] availableLocales = Locale.getAvailableLocales();
diff --git a/smack-core/src/test/java/org/jivesoftware/smack/util/StringUtilsTest.java b/smack-core/src/test/java/org/jivesoftware/smack/util/StringUtilsTest.java
index f9bfae04f..0cff5a730 100644
--- a/smack-core/src/test/java/org/jivesoftware/smack/util/StringUtilsTest.java
+++ b/smack-core/src/test/java/org/jivesoftware/smack/util/StringUtilsTest.java
@@ -21,6 +21,8 @@ import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
+import java.io.UnsupportedEncodingException;
+
import org.junit.Test;
/**
@@ -72,16 +74,16 @@ public class StringUtilsTest {
}
@Test
- public void testEncodeHex() {
+ public void testEncodeHex() throws UnsupportedEncodingException {
String input = "";
String output = "";
- assertEquals(new String(StringUtils.encodeHex(input.getBytes())),
- new String(output.getBytes()));
+ assertEquals(new String(StringUtils.encodeHex(input.getBytes(StringUtils.UTF8))),
+ output);
input = "foo bar 123";
output = "666f6f2062617220313233";
- assertEquals(new String(StringUtils.encodeHex(input.getBytes())),
- new String(output.getBytes()));
+ assertEquals(new String(StringUtils.encodeHex(input.getBytes(StringUtils.UTF8))),
+ output);
}
@Test
diff --git a/smack-debug-slf4j/src/main/java/org/jivesoftware/smackx/debugger/slf4j/SLF4JLoggingConnectionListener.java b/smack-debug-slf4j/src/main/java/org/jivesoftware/smackx/debugger/slf4j/SLF4JLoggingConnectionListener.java
index ec25f3639..a0161f3e6 100644
--- a/smack-debug-slf4j/src/main/java/org/jivesoftware/smackx/debugger/slf4j/SLF4JLoggingConnectionListener.java
+++ b/smack-debug-slf4j/src/main/java/org/jivesoftware/smackx/debugger/slf4j/SLF4JLoggingConnectionListener.java
@@ -40,22 +40,27 @@ class SLF4JLoggingConnectionListener implements ConnectionListener {
logger.debug("({}) Connection authenticated as {}", connection.hashCode(), connection.getUser());
}
+ @Override
public void connectionClosed() {
logger.debug("({}) Connection closed", connection.hashCode());
}
+ @Override
public void connectionClosedOnError(Exception e) {
logger.debug("({}) Connection closed due to an exception: {}", connection.hashCode(), e);
}
+ @Override
public void reconnectionFailed(Exception e) {
logger.debug("({}) Reconnection failed due to an exception: {}", connection.hashCode(), e);
}
+ @Override
public void reconnectionSuccessful() {
logger.debug("({}) Connection reconnected", connection.hashCode());
}
+ @Override
public void reconnectingIn(int seconds) {
logger.debug("({}) Connection will reconnect in {}", connection.hashCode(), seconds);
}
diff --git a/smack-debug-slf4j/src/main/java/org/jivesoftware/smackx/debugger/slf4j/SLF4JLoggingPacketListener.java b/smack-debug-slf4j/src/main/java/org/jivesoftware/smackx/debugger/slf4j/SLF4JLoggingPacketListener.java
index 4021e3d66..2b651dfc5 100644
--- a/smack-debug-slf4j/src/main/java/org/jivesoftware/smackx/debugger/slf4j/SLF4JLoggingPacketListener.java
+++ b/smack-debug-slf4j/src/main/java/org/jivesoftware/smackx/debugger/slf4j/SLF4JLoggingPacketListener.java
@@ -31,6 +31,7 @@ class SLF4JLoggingPacketListener implements StanzaListener {
this.prefix = Validate.notNull(prefix);
}
+ @Override
public void processStanza(Stanza packet) {
if (SLF4JSmackDebugger.printInterpreted.get() && logger.isDebugEnabled()) {
logger.debug("{}: PKT [{}] '{}'", prefix, packet.getClass().getName(), packet.toXML());
diff --git a/smack-debug-slf4j/src/main/java/org/jivesoftware/smackx/debugger/slf4j/SLF4JRawXmlListener.java b/smack-debug-slf4j/src/main/java/org/jivesoftware/smackx/debugger/slf4j/SLF4JRawXmlListener.java
index c44bbcd2f..c013a18b6 100644
--- a/smack-debug-slf4j/src/main/java/org/jivesoftware/smackx/debugger/slf4j/SLF4JRawXmlListener.java
+++ b/smack-debug-slf4j/src/main/java/org/jivesoftware/smackx/debugger/slf4j/SLF4JRawXmlListener.java
@@ -28,10 +28,12 @@ class SLF4JRawXmlListener implements ReaderListener, WriterListener {
this.logger = Validate.notNull(logger);
}
+ @Override
public void read(String str) {
logger.debug("{}: {}", SLF4JSmackDebugger.RECEIVED_TAG, str);
}
+ @Override
public void write(String str) {
logger.debug("{}: {}", SLF4JSmackDebugger.SENT_TAG, str);
}
diff --git a/smack-debug/src/main/java/org/jivesoftware/smackx/debugger/EnhancedDebugger.java b/smack-debug/src/main/java/org/jivesoftware/smackx/debugger/EnhancedDebugger.java
index d4f744dd7..9802bd4c3 100644
--- a/smack-debug/src/main/java/org/jivesoftware/smackx/debugger/EnhancedDebugger.java
+++ b/smack-debug/src/main/java/org/jivesoftware/smackx/debugger/EnhancedDebugger.java
@@ -208,8 +208,10 @@ public class EnhancedDebugger implements SmackDebugger {
packetReaderListener = new StanzaListener() {
SimpleDateFormat dateFormatter = new SimpleDateFormat("HH:mm:ss:SS");
+ @Override
public void processStanza(final Stanza packet) {
SwingUtilities.invokeLater(new Runnable() {
+ @Override
public void run() {
addReadPacketToTable(dateFormatter, packet);
}
@@ -223,8 +225,10 @@ public class EnhancedDebugger implements SmackDebugger {
packetWriterListener = new StanzaListener() {
SimpleDateFormat dateFormatter = new SimpleDateFormat("HH:mm:ss:SS");
+ @Override
public void processStanza(final Stanza packet) {
SwingUtilities.invokeLater(new Runnable() {
+ @Override
public void run() {
addSentPacketToTable(dateFormatter, packet);
}
@@ -235,8 +239,10 @@ public class EnhancedDebugger implements SmackDebugger {
// Create a thread that will listen for any connection closed event
connListener = new AbstractConnectionListener() {
+ @Override
public void connectionClosed() {
SwingUtilities.invokeLater(new Runnable() {
+ @Override
public void run() {
statusField.setValue("Closed");
EnhancedDebuggerWindow.connectionClosed(EnhancedDebugger.this);
@@ -245,8 +251,10 @@ public class EnhancedDebugger implements SmackDebugger {
}
+ @Override
public void connectionClosedOnError(final Exception e) {
SwingUtilities.invokeLater(new Runnable() {
+ @Override
public void run() {
statusField.setValue("Closed due to an exception");
EnhancedDebuggerWindow.connectionClosedOnError(EnhancedDebugger.this, e);
@@ -254,16 +262,20 @@ public class EnhancedDebugger implements SmackDebugger {
});
}
+ @Override
public void reconnectingIn(final int seconds){
SwingUtilities.invokeLater(new Runnable() {
+ @Override
public void run() {
statusField.setValue("Attempt to reconnect in " + seconds + " seconds");
}
});
}
+ @Override
public void reconnectionSuccessful() {
SwingUtilities.invokeLater(new Runnable() {
+ @Override
public void run() {
statusField.setValue("Reconnection stablished");
EnhancedDebuggerWindow.connectionEstablished(EnhancedDebugger.this);
@@ -271,8 +283,10 @@ public class EnhancedDebugger implements SmackDebugger {
});
}
+ @Override
public void reconnectionFailed(Exception e) {
SwingUtilities.invokeLater(new Runnable() {
+ @Override
public void run() {
statusField.setValue("Reconnection failed");
}
@@ -291,11 +305,13 @@ public class EnhancedDebugger implements SmackDebugger {
0) {
// CHECKSTYLE:OFF
private static final long serialVersionUID = 8136121224474217264L;
- public boolean isCellEditable(int rowIndex, int mColIndex) {
+ @Override
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
// CHECKSTYLE:ON
return false;
}
+ @Override
public Class> getColumnClass(int columnIndex) {
if (columnIndex == 2 || columnIndex == 3) {
return Icon.class;
@@ -344,6 +360,7 @@ public class EnhancedDebugger implements SmackDebugger {
JPopupMenu menu = new JPopupMenu();
JMenuItem menuItem1 = new JMenuItem("Copy");
menuItem1.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
// Get the clipboard
Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
@@ -391,6 +408,7 @@ public class EnhancedDebugger implements SmackDebugger {
menu = new JPopupMenu();
menuItem1 = new JMenuItem("Copy");
menuItem1.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
// Get the clipboard
Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
@@ -401,6 +419,7 @@ public class EnhancedDebugger implements SmackDebugger {
JMenuItem menuItem2 = new JMenuItem("Clear");
menuItem2.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
sentText.setText("");
}
@@ -426,6 +445,7 @@ public class EnhancedDebugger implements SmackDebugger {
menu = new JPopupMenu();
menuItem1 = new JMenuItem("Copy");
menuItem1.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
// Get the clipboard
Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
@@ -436,6 +456,7 @@ public class EnhancedDebugger implements SmackDebugger {
menuItem2 = new JMenuItem("Clear");
menuItem2.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
receivedText.setText("");
}
@@ -449,8 +470,10 @@ public class EnhancedDebugger implements SmackDebugger {
// Create a special Reader that wraps the main Reader and logs data to the GUI.
ObservableReader debugReader = new ObservableReader(reader);
readerListener = new ReaderListener() {
+ @Override
public void read(final String str) {
SwingUtilities.invokeLater(new Runnable() {
+ @Override
public void run() {
if (EnhancedDebuggerWindow.PERSISTED_DEBUGGER &&
!EnhancedDebuggerWindow.getInstance().isVisible()) {
@@ -487,8 +510,10 @@ public class EnhancedDebugger implements SmackDebugger {
// Create a special Writer that wraps the main Writer and logs data to the GUI.
ObservableWriter debugWriter = new ObservableWriter(writer);
writerListener = new WriterListener() {
+ @Override
public void write(final String str) {
SwingUtilities.invokeLater(new Runnable() {
+ @Override
public void run() {
if (EnhancedDebuggerWindow.PERSISTED_DEBUGGER &&
!EnhancedDebuggerWindow.getInstance().isVisible()) {
@@ -536,6 +561,7 @@ public class EnhancedDebugger implements SmackDebugger {
JPopupMenu menu = new JPopupMenu();
JMenuItem menuItem = new JMenuItem("Message");
menuItem.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
adhocMessages.setText(
"");
@@ -579,6 +608,7 @@ public class EnhancedDebugger implements SmackDebugger {
menuItem = new JMenuItem("Send");
menuItem.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
if (!"".equals(adhocMessages.getText())) {
AdHocPacket packetToSend = new AdHocPacket(adhocMessages.getText());
@@ -595,6 +625,7 @@ public class EnhancedDebugger implements SmackDebugger {
menuItem = new JMenuItem("Clear");
menuItem.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
adhocMessages.setText(null);
}
@@ -709,7 +740,8 @@ public class EnhancedDebugger implements SmackDebugger {
new Object[]{"Type", "Received", "Sent"}) {
// CHECKSTYLE:OFF
private static final long serialVersionUID = -6793886085109589269L;
- public boolean isCellEditable(int rowIndex, int mColIndex) {
+ @Override
+ public boolean isCellEditable(int rowIndex, int mColIndex) {
// CHECKSTYLE:ON
return false;
}
@@ -726,6 +758,7 @@ public class EnhancedDebugger implements SmackDebugger {
tabbedPane.setToolTipTextAt(4, "Information and statistics about the debugged connection");
}
+ @Override
public Reader newConnectionReader(Reader newReader) {
((ObservableReader) reader).removeReaderListener(readerListener);
ObservableReader debugReader = new ObservableReader(newReader);
@@ -734,6 +767,7 @@ public class EnhancedDebugger implements SmackDebugger {
return reader;
}
+ @Override
public Writer newConnectionWriter(Writer newWriter) {
((ObservableWriter) writer).removeWriterListener(writerListener);
ObservableWriter debugWriter = new ObservableWriter(newWriter);
@@ -746,6 +780,7 @@ public class EnhancedDebugger implements SmackDebugger {
public void userHasLogged(final EntityFullJid user) {
final EnhancedDebugger debugger = this;
SwingUtilities.invokeLater(new Runnable() {
+ @Override
public void run() {
userField.setText(user.toString());
EnhancedDebuggerWindow.userHasLogged(debugger, user.toString());
@@ -757,18 +792,22 @@ public class EnhancedDebugger implements SmackDebugger {
}
+ @Override
public Reader getReader() {
return reader;
}
+ @Override
public Writer getWriter() {
return writer;
}
+ @Override
public StanzaListener getReaderListener() {
return packetReaderListener;
}
+ @Override
public StanzaListener getWriterListener() {
return packetWriterListener;
}
@@ -801,6 +840,7 @@ public class EnhancedDebugger implements SmackDebugger {
*/
private void addReadPacketToTable(final SimpleDateFormat dateFormatter, final Stanza packet) {
SwingUtilities.invokeLater(new Runnable() {
+ @Override
public void run() {
String messageType;
Jid from = packet.getFrom();
@@ -862,6 +902,7 @@ public class EnhancedDebugger implements SmackDebugger {
*/
private void addSentPacketToTable(final SimpleDateFormat dateFormatter, final Stanza packet) {
SwingUtilities.invokeLater(new Runnable() {
+ @Override
public void run() {
String messageType;
Jid to = packet.getTo();
@@ -978,9 +1019,9 @@ public class EnhancedDebugger implements SmackDebugger {
* The whole text to send must be passed to the constructor. This implies that the client of
* this class is responsible for sending a valid text to the constructor.
*/
- private class AdHocPacket extends Stanza {
+ private static class AdHocPacket extends Stanza {
- private String text;
+ private final String text;
/**
* Create a new AdHocPacket with the text to send. The passed text must be a valid text to
@@ -992,6 +1033,7 @@ public class EnhancedDebugger implements SmackDebugger {
this.text = text;
}
+ @Override
public String toXML() {
return text;
}
@@ -1006,7 +1048,7 @@ public class EnhancedDebugger implements SmackDebugger {
/**
* Listens for debug window popup dialog events.
*/
- private class PopupListener extends MouseAdapter {
+ private static class PopupListener extends MouseAdapter {
JPopupMenu popup;
@@ -1014,10 +1056,12 @@ public class EnhancedDebugger implements SmackDebugger {
popup = popupMenu;
}
+ @Override
public void mousePressed(MouseEvent e) {
maybeShowPopup(e);
}
+ @Override
public void mouseReleased(MouseEvent e) {
maybeShowPopup(e);
}
@@ -1039,6 +1083,7 @@ public class EnhancedDebugger implements SmackDebugger {
this.table = table;
}
+ @Override
public void valueChanged(ListSelectionEvent e) {
if (table.getSelectedRow() == -1) {
// Clear the messageTextArea since there is none packet selected
diff --git a/smack-debug/src/main/java/org/jivesoftware/smackx/debugger/EnhancedDebuggerWindow.java b/smack-debug/src/main/java/org/jivesoftware/smackx/debugger/EnhancedDebuggerWindow.java
index 893a6607b..f246d1f51 100644
--- a/smack-debug/src/main/java/org/jivesoftware/smackx/debugger/EnhancedDebuggerWindow.java
+++ b/smack-debug/src/main/java/org/jivesoftware/smackx/debugger/EnhancedDebuggerWindow.java
@@ -210,6 +210,7 @@ public final class EnhancedDebuggerWindow {
if (!PERSISTED_DEBUGGER) {
// Add listener for window closing event
frame.addWindowListener(new WindowAdapter() {
+ @Override
public void windowClosing(WindowEvent evt) {
rootWindowClosing(evt);
}
@@ -280,6 +281,7 @@ public final class EnhancedDebuggerWindow {
// Add a menu item that allows to close the current selected tab
JMenuItem menuItem = new JMenuItem("Close");
menuItem.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
// Remove the selected tab pane if it's not the Smack info pane
if (tabbedPane.getSelectedIndex() < tabbedPane.getComponentCount() - 1) {
@@ -301,6 +303,7 @@ public final class EnhancedDebuggerWindow {
// Add a menu item that allows to close all the tabs that have their connections closed
menuItem = new JMenuItem("Close All Not Active");
menuItem.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
ArrayList debuggersToRemove = new ArrayList();
// Remove all the debuggers of which their connections are no longer valid
@@ -348,7 +351,7 @@ public final class EnhancedDebuggerWindow {
debugger.cancel();
}
// Release any reference to the debuggers
- debuggers.removeAll(debuggers);
+ debuggers.clear();
// Release the default instance
instance = null;
}
@@ -356,7 +359,7 @@ public final class EnhancedDebuggerWindow {
/**
* Listens for debug window popup dialog events.
*/
- private class PopupListener extends MouseAdapter {
+ private static class PopupListener extends MouseAdapter {
JPopupMenu popup;
@@ -364,10 +367,12 @@ public final class EnhancedDebuggerWindow {
popup = popupMenu;
}
+ @Override
public void mousePressed(MouseEvent e) {
maybeShowPopup(e);
}
+ @Override
public void mouseReleased(MouseEvent e) {
maybeShowPopup(e);
}
diff --git a/smack-debug/src/main/java/org/jivesoftware/smackx/debugger/LiteDebugger.java b/smack-debug/src/main/java/org/jivesoftware/smackx/debugger/LiteDebugger.java
index e8571b2e1..ea0fed8b9 100644
--- a/smack-debug/src/main/java/org/jivesoftware/smackx/debugger/LiteDebugger.java
+++ b/smack-debug/src/main/java/org/jivesoftware/smackx/debugger/LiteDebugger.java
@@ -86,6 +86,7 @@ public class LiteDebugger implements SmackDebugger {
// Add listener for window closing event
frame.addWindowListener(new WindowAdapter() {
+ @Override
public void windowClosing(WindowEvent evt) {
rootWindowClosing(evt);
}
@@ -114,6 +115,7 @@ public class LiteDebugger implements SmackDebugger {
JPopupMenu menu = new JPopupMenu();
JMenuItem menuItem1 = new JMenuItem("Copy");
menuItem1.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
// Get the clipboard
Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
@@ -124,6 +126,7 @@ public class LiteDebugger implements SmackDebugger {
JMenuItem menuItem2 = new JMenuItem("Clear");
menuItem2.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
sentText1.setText("");
sentText2.setText("");
@@ -151,6 +154,7 @@ public class LiteDebugger implements SmackDebugger {
menu = new JPopupMenu();
menuItem1 = new JMenuItem("Copy");
menuItem1.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
// Get the clipboard
Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
@@ -161,6 +165,7 @@ public class LiteDebugger implements SmackDebugger {
menuItem2 = new JMenuItem("Clear");
menuItem2.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
receivedText1.setText("");
receivedText2.setText("");
@@ -188,6 +193,7 @@ public class LiteDebugger implements SmackDebugger {
menu = new JPopupMenu();
menuItem1 = new JMenuItem("Copy");
menuItem1.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
// Get the clipboard
Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
@@ -198,6 +204,7 @@ public class LiteDebugger implements SmackDebugger {
menuItem2 = new JMenuItem("Clear");
menuItem2.addActionListener(new ActionListener() {
+ @Override
public void actionPerformed(ActionEvent e) {
interpretedText1.setText("");
interpretedText2.setText("");
@@ -219,6 +226,7 @@ public class LiteDebugger implements SmackDebugger {
// Create a special Reader that wraps the main Reader and logs data to the GUI.
ObservableReader debugReader = new ObservableReader(reader);
readerListener = new ReaderListener() {
+ @Override
public void read(String str) {
int index = str.lastIndexOf(">");
if (index != -1) {
@@ -242,6 +250,7 @@ public class LiteDebugger implements SmackDebugger {
// Create a special Writer that wraps the main Writer and logs data to the GUI.
ObservableWriter debugWriter = new ObservableWriter(writer);
writerListener = new WriterListener() {
+ @Override
public void write(String str) {
sentText1.append(str);
sentText2.append(str);
@@ -262,6 +271,7 @@ public class LiteDebugger implements SmackDebugger {
// the GUI. This is what we call "interpreted" packet data, since it's the packet
// data as Smack sees it and not as it's coming in as raw XML.
listener = new StanzaListener() {
+ @Override
public void processStanza(Stanza packet) {
interpretedText1.append(packet.toXML().toString());
interpretedText2.append(packet.toXML().toString());
@@ -286,17 +296,19 @@ public class LiteDebugger implements SmackDebugger {
/**
* Listens for debug window popup dialog events.
*/
- private class PopupListener extends MouseAdapter {
+ private static class PopupListener extends MouseAdapter {
JPopupMenu popup;
PopupListener(JPopupMenu popupMenu) {
popup = popupMenu;
}
+ @Override
public void mousePressed(MouseEvent e) {
maybeShowPopup(e);
}
+ @Override
public void mouseReleased(MouseEvent e) {
maybeShowPopup(e);
}
@@ -308,6 +320,7 @@ public class LiteDebugger implements SmackDebugger {
}
}
+ @Override
public Reader newConnectionReader(Reader newReader) {
((ObservableReader)reader).removeReaderListener(readerListener);
ObservableReader debugReader = new ObservableReader(newReader);
@@ -316,6 +329,7 @@ public class LiteDebugger implements SmackDebugger {
return reader;
}
+ @Override
public Writer newConnectionWriter(Writer newWriter) {
((ObservableWriter)writer).removeWriterListener(writerListener);
ObservableWriter debugWriter = new ObservableWriter(newWriter);
@@ -332,18 +346,22 @@ public class LiteDebugger implements SmackDebugger {
frame.setTitle(title);
}
+ @Override
public Reader getReader() {
return reader;
}
+ @Override
public Writer getWriter() {
return writer;
}
+ @Override
public StanzaListener getReaderListener() {
return listener;
}
+ @Override
public StanzaListener getWriterListener() {
return null;
}
diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/carbons/CarbonManager.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/carbons/CarbonManager.java
index b641a0ff2..d023b0ce6 100644
--- a/smack-experimental/src/main/java/org/jivesoftware/smackx/carbons/CarbonManager.java
+++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/carbons/CarbonManager.java
@@ -72,6 +72,7 @@ public final class CarbonManager extends Manager {
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
getInstanceFor(connection);
}
@@ -271,6 +272,7 @@ public final class CarbonManager extends Manager {
try {
connection().sendIqWithResponseCallback(setIQ, new StanzaListener() {
+ @Override
public void processStanza(Stanza packet) {
enabled_state = use;
}
diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/hoxt/packet/AbstractHttpOverXmpp.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/hoxt/packet/AbstractHttpOverXmpp.java
index a7ac49d8c..c4eccfdf9 100644
--- a/smack-experimental/src/main/java/org/jivesoftware/smackx/hoxt/packet/AbstractHttpOverXmpp.java
+++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/hoxt/packet/AbstractHttpOverXmpp.java
@@ -44,6 +44,7 @@ public abstract class AbstractHttpOverXmpp extends IQ {
this.version = Objects.requireNonNull(builder.version, "version must not be null");
}
+ @Override
protected IQChildElementXmlStringBuilder getIQChildElementBuilder(IQChildElementXmlStringBuilder xml) {
IQChildElementXmlStringBuilder builder = getIQHoxtChildElementBuilder(xml);
builder.optAppend(headers);
diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/control/element/IoTSetRequest.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/control/element/IoTSetRequest.java
index b77787f98..052cb07c1 100644
--- a/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/control/element/IoTSetRequest.java
+++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/control/element/IoTSetRequest.java
@@ -1,6 +1,6 @@
/**
*
- * Copyright ยฉ 2016 Florian Schmaus
+ * Copyright ยฉ 2016-2017 Florian Schmaus
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,6 +16,7 @@
*/
package org.jivesoftware.smackx.iot.control.element;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
@@ -31,7 +32,21 @@ public class IoTSetRequest extends IQ {
public IoTSetRequest(Collection extends SetData> setData) {
super(ELEMENT, NAMESPACE);
setType(Type.set);
- this.setData = Collections.unmodifiableCollection(setData);
+
+ /*
+ * Ugly workaround for the following error prone false positive:
+ *
+ * IoTSetRequest.java:34: error: incompatible types: Collection cannot be converted to Collection
+ * this.setData = Collections.unmodifiableCollection(setDataA);
+ * ^
+ * where CAP#1 is a fresh type-variable:
+ * CAP#1 extends SetData from capture of ? extends SetData
+ */
+ Collection tmp = new ArrayList<>(setData.size());
+ for (SetData data : setData) {
+ tmp.add(data);
+ }
+ this.setData = Collections.unmodifiableCollection(tmp);
}
public Collection getSetData() {
diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/control/element/SetData.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/control/element/SetData.java
index 1e7505a83..4d9e29286 100644
--- a/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/control/element/SetData.java
+++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/control/element/SetData.java
@@ -30,7 +30,7 @@ public abstract class SetData implements NamedElement {
DOUBLE,
;
- private String toStringCache;
+ private final String toStringCache;
private Type() {
toStringCache = this.name().toLowerCase(Locale.US);
diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/data/IoTDataManager.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/data/IoTDataManager.java
index 6e4b6f63d..78268a159 100644
--- a/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/data/IoTDataManager.java
+++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/data/IoTDataManager.java
@@ -61,6 +61,7 @@ public final class IoTDataManager extends IoTManager {
// Ensure a IoTDataManager exists for every connection.
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
if (!isAutoEnableActive()) return;
getInstanceFor(connection);
diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/discovery/IoTDiscoveryManager.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/discovery/IoTDiscoveryManager.java
index 2fa512911..e81a41818 100644
--- a/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/discovery/IoTDiscoveryManager.java
+++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/discovery/IoTDiscoveryManager.java
@@ -74,6 +74,7 @@ public final class IoTDiscoveryManager extends Manager {
// Ensure a IoTProvisioningManager exists for every connection.
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
if (!IoTManager.isAutoEnableActive()) return;
getInstanceFor(connection);
diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/element/NodeInfo.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/element/NodeInfo.java
index 08ce2db11..85412a126 100644
--- a/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/element/NodeInfo.java
+++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/element/NodeInfo.java
@@ -62,6 +62,7 @@ public final class NodeInfo {
}
@Override
+ @SuppressWarnings("ReferenceEquality")
public int hashCode() {
if (this == EMPTY) {
return 0;
diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/provisioning/IoTProvisioningManager.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/provisioning/IoTProvisioningManager.java
index 3fc6c6741..42a53e6c0 100644
--- a/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/provisioning/IoTProvisioningManager.java
+++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/iot/provisioning/IoTProvisioningManager.java
@@ -82,6 +82,7 @@ public final class IoTProvisioningManager extends Manager {
// Ensure a IoTProvisioningManager exists for every connection.
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
if (!IoTManager.isAutoEnableActive()) return;
getInstanceFor(connection);
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smack/chat2/ChatManager.java b/smack-extensions/src/main/java/org/jivesoftware/smack/chat2/ChatManager.java
index 32b473a17..9e8ab2410 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smack/chat2/ChatManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smack/chat2/ChatManager.java
@@ -53,6 +53,7 @@ import org.jxmpp.jid.Jid;
*
* @see XEP-0296: Best Practices for Resource Locking
*/
+@SuppressWarnings("FunctionalInterfaceClash")
public final class ChatManager extends Manager {
private static final Map INSTANCES = new WeakHashMap<>();
@@ -188,22 +189,84 @@ public final class ChatManager extends Manager {
return true;
}
- public boolean addListener(IncomingChatMessageListener listener) {
+ /**
+ * Add a new listener for incoming chat messages.
+ *
+ * @param listener the listener to add.
+ * @return true
if the listener was not already added.
+ */
+ public boolean addIncomingListener(IncomingChatMessageListener listener) {
return incomingListeners.add(listener);
}
+ /**
+ * Add a new listener for incoming chat messages.
+ *
+ * @param listener the listener to add.
+ * @return true
if the listener was not already added.
+ */
+ @Deprecated
+ @SuppressWarnings("FunctionalInterfaceClash")
+ public boolean addListener(IncomingChatMessageListener listener) {
+ return addIncomingListener(listener);
+ }
+
+ /**
+ * Remove an incoming chat message listener.
+ *
+ * @param listener the listener to remove.
+ * @return true
if the listener was active and got removed.
+ */
+ @SuppressWarnings("FunctionalInterfaceClash")
public boolean removeListener(IncomingChatMessageListener listener) {
return incomingListeners.remove(listener);
}
- public boolean addListener(OutgoingChatMessageListener listener) {
+ /**
+ * Add a new listener for outgoing chat messages.
+ *
+ * @param listener the listener to add.
+ * @return true
if the listener was not already added.
+ */
+ public boolean addOutgoingListener(OutgoingChatMessageListener listener) {
return outgoingListeners.add(listener);
}
- public boolean removeOutoingLIstener(OutgoingChatMessageListener listener) {
+ /**
+ * Add a new listener for incoming chat messages.
+ *
+ * @param listener the listener to add.
+ * @return true
if the listener was not already added.
+ * @deprecated use {@link #addOutgoingListener(OutgoingChatMessageListener)} instead.
+ */
+ @Deprecated
+ @SuppressWarnings("FunctionalInterfaceClash")
+ public boolean addListener(OutgoingChatMessageListener listener) {
+ return addOutgoingListener(listener);
+ }
+
+ /**
+ * Remove an outgoing chat message listener.
+ *
+ * @param listener the listener to remove.
+ * @return true
if the listener was active and got removed.
+ */
+ public boolean removeListener(OutgoingChatMessageListener listener) {
return outgoingListeners.remove(listener);
}
+ /**
+ * Remove an outgoing chat message listener.
+ *
+ * @param listener the listener to remove.
+ * @return true
if the listener was active and got removed.
+ * @deprecated use {@link #removeListener(OutgoingChatMessageListener)} instead.
+ */
+ @Deprecated
+ public boolean removeOutoingLIstener(OutgoingChatMessageListener listener) {
+ return removeListener(listener);
+ }
+
/**
* Start a new or retrieve the existing chat with jid
.
*
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/amp/AMPManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/amp/AMPManager.java
index 20d8c887d..8800268c8 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/amp/AMPManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/amp/AMPManager.java
@@ -40,6 +40,7 @@ public class AMPManager {
// The ServiceDiscoveryManager class should have been already initialized
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
AMPManager.setServiceEnabled(connection, true);
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/attention/packet/AttentionExtension.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/attention/packet/AttentionExtension.java
index 8fe39bdc7..18869392a 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/attention/packet/AttentionExtension.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/attention/packet/AttentionExtension.java
@@ -47,6 +47,7 @@ public class AttentionExtension implements ExtensionElement {
*
* @see org.jivesoftware.smack.packet.PacketExtension#getElementName()
*/
+ @Override
public String getElementName() {
return ELEMENT_NAME;
}
@@ -56,6 +57,7 @@ public class AttentionExtension implements ExtensionElement {
*
* @see org.jivesoftware.smack.packet.PacketExtension#getNamespace()
*/
+ @Override
public String getNamespace() {
return NAMESPACE;
}
@@ -65,6 +67,7 @@ public class AttentionExtension implements ExtensionElement {
*
* @see org.jivesoftware.smack.packet.PacketExtension#toXML()
*/
+ @Override
public String toXML() {
final StringBuilder sb = new StringBuilder();
sb.append('<').append(getElementName()).append(" xmlns=\"").append(
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bookmarks/BookmarkedConference.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bookmarks/BookmarkedConference.java
index f08e3c0a2..fa1a4f1d8 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bookmarks/BookmarkedConference.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bookmarks/BookmarkedConference.java
@@ -131,6 +131,7 @@ public class BookmarkedConference implements SharedBookmark {
this.isShared = isShared;
}
+ @Override
public boolean isShared() {
return isShared;
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bookmarks/BookmarkedURL.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bookmarks/BookmarkedURL.java
index 0a521bcdf..55f30bfa0 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bookmarks/BookmarkedURL.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bookmarks/BookmarkedURL.java
@@ -102,6 +102,7 @@ public class BookmarkedURL implements SharedBookmark {
this.isShared = shared;
}
+ @Override
public boolean isShared() {
return isShared;
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bookmarks/Bookmarks.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bookmarks/Bookmarks.java
index b176e3576..d196f23c4 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bookmarks/Bookmarks.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bookmarks/Bookmarks.java
@@ -151,6 +151,7 @@ public class Bookmarks implements PrivateData {
*
* @return the element name.
*/
+ @Override
public String getElementName() {
return ELEMENT;
}
@@ -160,6 +161,7 @@ public class Bookmarks implements PrivateData {
*
* @return the namespace.
*/
+ @Override
public String getNamespace() {
return NAMESPACE;
}
@@ -218,6 +220,7 @@ public class Bookmarks implements PrivateData {
super();
}
+ @Override
public PrivateData parsePrivateData(XmlPullParser parser) throws XmlPullParserException, IOException {
Bookmarks storage = new Bookmarks();
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamListener.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamListener.java
index d5a49cc98..cc69e7e74 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamListener.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamListener.java
@@ -34,6 +34,7 @@ public abstract class InBandBytestreamListener implements BytestreamListener {
+ @Override
public void incomingBytestreamRequest(BytestreamRequest request) {
incomingBytestreamRequest((InBandBytestreamRequest) request);
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamManager.java
index e823c2cc7..e8f28404b 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamManager.java
@@ -103,6 +103,7 @@ public final class InBandBytestreamManager implements BytestreamManager {
*/
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(final XMPPConnection connection) {
// create the manager for this connection
InBandBytestreamManager.getByteStreamManager(connection);
@@ -236,6 +237,7 @@ public final class InBandBytestreamManager implements BytestreamManager {
*
* @param listener the listener to register
*/
+ @Override
public void addIncomingBytestreamListener(BytestreamListener listener) {
this.allRequestListeners.add(listener);
}
@@ -246,6 +248,7 @@ public final class InBandBytestreamManager implements BytestreamManager {
*
* @param listener the listener to remove
*/
+ @Override
public void removeIncomingBytestreamListener(BytestreamListener listener) {
this.allRequestListeners.remove(listener);
}
@@ -268,6 +271,7 @@ public final class InBandBytestreamManager implements BytestreamManager {
* @param listener the listener to register
* @param initiatorJID the JID of the user that wants to establish an In-Band Bytestream
*/
+ @Override
public void addIncomingBytestreamListener(BytestreamListener listener, Jid initiatorJID) {
this.userListeners.put(initiatorJID, listener);
}
@@ -277,6 +281,9 @@ public final class InBandBytestreamManager implements BytestreamManager {
*
* @param initiatorJID the JID of the user the listener should be removed
*/
+ @Override
+ // TODO: Change argument to Jid in Smack 4.3.
+ @SuppressWarnings("CollectionIncompatibleType")
public void removeIncomingBytestreamListener(String initiatorJID) {
this.userListeners.remove(initiatorJID);
}
@@ -402,6 +409,7 @@ public final class InBandBytestreamManager implements BytestreamManager {
* @throws SmackException if there was no response from the server.
* @throws InterruptedException
*/
+ @Override
public InBandBytestreamSession establishSession(Jid targetJID) throws XMPPException, SmackException, InterruptedException {
String sessionID = getNextSessionID();
return establishSession(targetJID, sessionID);
@@ -420,6 +428,7 @@ public final class InBandBytestreamManager implements BytestreamManager {
* @throws NotConnectedException
* @throws InterruptedException
*/
+ @Override
public InBandBytestreamSession establishSession(Jid targetJID, String sessionID)
throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException {
Open byteStreamRequest = new Open(sessionID, this.defaultBlockSize, this.stanza);
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamRequest.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamRequest.java
index 8040416d7..e9b846326 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamRequest.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamRequest.java
@@ -50,6 +50,7 @@ public class InBandBytestreamRequest implements BytestreamRequest {
*
* @return the sender of the In-Band Bytestream open request
*/
+ @Override
public Jid getFrom() {
return this.byteStreamRequest.getFrom();
}
@@ -59,6 +60,7 @@ public class InBandBytestreamRequest implements BytestreamRequest {
*
* @return the session ID of the In-Band Bytestream open request
*/
+ @Override
public String getSessionID() {
return this.byteStreamRequest.getSessionID();
}
@@ -71,6 +73,7 @@ public class InBandBytestreamRequest implements BytestreamRequest {
* @throws NotConnectedException
* @throws InterruptedException
*/
+ @Override
public InBandBytestreamSession accept() throws NotConnectedException, InterruptedException {
XMPPConnection connection = this.manager.getConnection();
@@ -92,6 +95,7 @@ public class InBandBytestreamRequest implements BytestreamRequest {
* @throws NotConnectedException
* @throws InterruptedException
*/
+ @Override
public void reject() throws NotConnectedException, InterruptedException {
this.manager.replyRejectPacket(this.byteStreamRequest);
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSession.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSession.java
index 40f185af1..b87443887 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSession.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSession.java
@@ -109,18 +109,22 @@ public class InBandBytestreamSession implements BytestreamSession {
}
+ @Override
public InputStream getInputStream() {
return this.inputStream;
}
+ @Override
public OutputStream getOutputStream() {
return this.outputStream;
}
+ @Override
public int getReadTimeout() {
return this.inputStream.readTimeout;
}
+ @Override
public void setReadTimeout(int timeout) {
if (timeout < 0) {
throw new IllegalArgumentException("Timeout must be >= 0");
@@ -151,6 +155,7 @@ public class InBandBytestreamSession implements BytestreamSession {
this.closeBothStreamsEnabled = closeBothStreamsEnabled;
}
+ @Override
public void close() throws IOException {
closeByLocal(true); // close input stream
closeByLocal(false); // close output stream
@@ -224,7 +229,9 @@ public class InBandBytestreamSession implements BytestreamSession {
this.inputStream.cleanup();
// remove session from manager
- InBandBytestreamManager.getByteStreamManager(this.connection).getSessions().remove(this);
+ // Thanks Google Error Prone for finding the bug where remove() was called with 'this' as argument. Changed
+ // now to remove(byteStreamRequest.getSessionID).
+ InBandBytestreamManager.getByteStreamManager(this.connection).getSessions().remove(byteStreamRequest.getSessionID());
}
}
@@ -283,6 +290,7 @@ public class InBandBytestreamSession implements BytestreamSession {
*/
protected abstract StanzaFilter getDataPacketFilter();
+ @Override
public synchronized int read() throws IOException {
checkClosed();
@@ -298,6 +306,7 @@ public class InBandBytestreamSession implements BytestreamSession {
return buffer[bufferPointer++] & 0xff;
}
+ @Override
public synchronized int read(byte[] b, int off, int len) throws IOException {
if (b == null) {
throw new NullPointerException();
@@ -331,6 +340,7 @@ public class InBandBytestreamSession implements BytestreamSession {
return len;
}
+ @Override
public synchronized int read(byte[] b) throws IOException {
return read(b, 0, b.length);
}
@@ -405,10 +415,12 @@ public class InBandBytestreamSession implements BytestreamSession {
}
}
+ @Override
public boolean markSupported() {
return false;
}
+ @Override
public void close() throws IOException {
if (closeInvoked) {
return;
@@ -444,11 +456,13 @@ public class InBandBytestreamSession implements BytestreamSession {
*/
private class IQIBBInputStream extends IBBInputStream {
+ @Override
protected StanzaListener getDataPacketListener() {
return new StanzaListener() {
private long lastSequence = -1;
+ @Override
public void processStanza(Stanza packet) throws NotConnectedException, InterruptedException {
// get data packet extension
DataPacketExtension data = ((Data) packet).getDataPacketExtension();
@@ -491,6 +505,7 @@ public class InBandBytestreamSession implements BytestreamSession {
};
}
+ @Override
protected StanzaFilter getDataPacketFilter() {
/*
* filter all IQ stanzas having type 'SET' (represented by Data class), containing a
@@ -507,9 +522,11 @@ public class InBandBytestreamSession implements BytestreamSession {
*/
private class MessageIBBInputStream extends IBBInputStream {
+ @Override
protected StanzaListener getDataPacketListener() {
return new StanzaListener() {
+ @Override
public void processStanza(Stanza packet) {
// get data packet extension
DataPacketExtension data = (DataPacketExtension) packet.getExtension(
@@ -555,6 +572,7 @@ public class InBandBytestreamSession implements BytestreamSession {
*/
private class IBBDataPacketFilter implements StanzaFilter {
+ @Override
public boolean accept(Stanza packet) {
// sender equals remote peer
if (!packet.getFrom().equals(remoteJID)) {
@@ -619,6 +637,7 @@ public class InBandBytestreamSession implements BytestreamSession {
*/
protected abstract void writeToXML(DataPacketExtension data) throws IOException, NotConnectedException, InterruptedException;
+ @Override
public synchronized void write(int b) throws IOException {
if (this.isClosed) {
throw new IOException("Stream is closed");
@@ -632,6 +651,7 @@ public class InBandBytestreamSession implements BytestreamSession {
buffer[bufferPointer++] = (byte) b;
}
+ @Override
public synchronized void write(byte[] b, int off, int len) throws IOException {
if (b == null) {
throw new NullPointerException();
@@ -662,6 +682,7 @@ public class InBandBytestreamSession implements BytestreamSession {
}
}
+ @Override
public synchronized void write(byte[] b) throws IOException {
write(b, 0, b.length);
}
@@ -698,6 +719,7 @@ public class InBandBytestreamSession implements BytestreamSession {
bufferPointer += len - available;
}
+ @Override
public synchronized void flush() throws IOException {
if (this.isClosed) {
throw new IOException("Stream is closed");
@@ -735,6 +757,7 @@ public class InBandBytestreamSession implements BytestreamSession {
}
+ @Override
public void close() throws IOException {
if (isClosed) {
return;
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InitiationListener.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InitiationListener.java
index 7188a355a..1a4f3686d 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InitiationListener.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/InitiationListener.java
@@ -66,6 +66,7 @@ class InitiationListener extends AbstractIqRequestHandler {
public IQ handleIQRequest(final IQ packet) {
initiationListenerExecutor.execute(new Runnable() {
+ @Override
public void run() {
try {
processRequest(packet);
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataPacketExtension.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataPacketExtension.java
index 1e82f8dc8..e076acc95 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataPacketExtension.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataPacketExtension.java
@@ -126,10 +126,12 @@ public class DataPacketExtension implements ExtensionElement {
return this.decodedData;
}
+ @Override
public String getElementName() {
return ELEMENT;
}
+ @Override
public String getNamespace() {
return NAMESPACE;
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/InitiationListener.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/InitiationListener.java
index 6ed097d05..60309be81 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/InitiationListener.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/InitiationListener.java
@@ -62,6 +62,7 @@ final class InitiationListener extends AbstractIqRequestHandler {
public IQ handleIQRequest(final IQ packet) {
initiationListenerExecutor.execute(new Runnable() {
+ @Override
public void run() {
try {
processRequest(packet);
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamListener.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamListener.java
index bbb576041..6c8f9d916 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamListener.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamListener.java
@@ -32,6 +32,7 @@ import org.jivesoftware.smackx.bytestreams.BytestreamRequest;
*/
public abstract class Socks5BytestreamListener implements BytestreamListener {
+ @Override
public void incomingBytestreamRequest(BytestreamRequest request) {
incomingBytestreamRequest((Socks5BytestreamRequest) request);
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamManager.java
index 268f63779..04f4d6ac4 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamManager.java
@@ -98,6 +98,7 @@ public final class Socks5BytestreamManager extends Manager implements Bytestream
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(final XMPPConnection connection) {
// create the manager for this connection
Socks5BytestreamManager.getBytestreamManager(connection);
@@ -198,6 +199,7 @@ public final class Socks5BytestreamManager extends Manager implements Bytestream
*
* @param listener the listener to register
*/
+ @Override
public void addIncomingBytestreamListener(BytestreamListener listener) {
this.allRequestListeners.add(listener);
}
@@ -208,6 +210,7 @@ public final class Socks5BytestreamManager extends Manager implements Bytestream
*
* @param listener the listener to remove
*/
+ @Override
public void removeIncomingBytestreamListener(BytestreamListener listener) {
this.allRequestListeners.remove(listener);
}
@@ -230,6 +233,7 @@ public final class Socks5BytestreamManager extends Manager implements Bytestream
* @param listener the listener to register
* @param initiatorJID the JID of the user that wants to establish a SOCKS5 Bytestream
*/
+ @Override
public void addIncomingBytestreamListener(BytestreamListener listener, Jid initiatorJID) {
this.userListeners.put(initiatorJID, listener);
}
@@ -239,6 +243,9 @@ public final class Socks5BytestreamManager extends Manager implements Bytestream
*
* @param initiatorJID the JID of the user the listener should be removed
*/
+ // TODO: Change parameter to Jid in Smack 4.3.
+ @Override
+ @SuppressWarnings("CollectionIncompatibleType")
public void removeIncomingBytestreamListener(String initiatorJID) {
this.userListeners.remove(initiatorJID);
}
@@ -386,6 +393,7 @@ public final class Socks5BytestreamManager extends Manager implements Bytestream
* @throws InterruptedException if the current thread was interrupted while waiting
* @throws SmackException if there was no response from the server.
*/
+ @Override
public Socks5BytestreamSession establishSession(Jid targetJID) throws XMPPException,
IOException, InterruptedException, SmackException {
String sessionID = getNextSessionID();
@@ -405,6 +413,7 @@ public final class Socks5BytestreamManager extends Manager implements Bytestream
* @throws SmackException if the target does not support SOCKS5.
* @throws XMPPException
*/
+ @Override
public Socks5BytestreamSession establishSession(Jid targetJID, String sessionID)
throws IOException, InterruptedException, NoResponseException, SmackException, XMPPException{
XMPPConnection connection = connection();
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamRequest.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamRequest.java
index e636cd3eb..84fb63a4a 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamRequest.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamRequest.java
@@ -170,6 +170,7 @@ public class Socks5BytestreamRequest implements BytestreamRequest {
*
* @return the sender of the SOCKS5 Bytestream initialization request.
*/
+ @Override
public Jid getFrom() {
return this.bytestreamRequest.getFrom();
}
@@ -179,6 +180,7 @@ public class Socks5BytestreamRequest implements BytestreamRequest {
*
* @return the session ID of the SOCKS5 Bytestream initialization request.
*/
+ @Override
public String getSessionID() {
return this.bytestreamRequest.getSessionID();
}
@@ -195,6 +197,7 @@ public class Socks5BytestreamRequest implements BytestreamRequest {
* @throws XMPPErrorException
* @throws SmackException
*/
+ @Override
public Socks5BytestreamSession accept() throws InterruptedException, XMPPErrorException, SmackException {
Collection streamHosts = this.bytestreamRequest.getStreamHosts();
@@ -264,6 +267,7 @@ public class Socks5BytestreamRequest implements BytestreamRequest {
* @throws NotConnectedException
* @throws InterruptedException
*/
+ @Override
public void reject() throws NotConnectedException, InterruptedException {
this.manager.replyRejectPacket(this.bytestreamRequest);
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamSession.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamSession.java
index adb423c65..06cf408ad 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamSession.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5BytestreamSession.java
@@ -64,14 +64,17 @@ public class Socks5BytestreamSession implements BytestreamSession {
return !this.isDirect;
}
+ @Override
public InputStream getInputStream() throws IOException {
return this.socket.getInputStream();
}
+ @Override
public OutputStream getOutputStream() throws IOException {
return this.socket.getOutputStream();
}
+ @Override
public int getReadTimeout() throws IOException {
try {
return this.socket.getSoTimeout();
@@ -81,6 +84,7 @@ public class Socks5BytestreamSession implements BytestreamSession {
}
}
+ @Override
public void setReadTimeout(int timeout) throws IOException {
try {
this.socket.setSoTimeout(timeout);
@@ -90,6 +94,7 @@ public class Socks5BytestreamSession implements BytestreamSession {
}
}
+ @Override
public void close() throws IOException {
this.socket.close();
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5Client.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5Client.java
index 2de338a5c..91e2dbe31 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5Client.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5Client.java
@@ -19,6 +19,7 @@ package org.jivesoftware.smackx.bytestreams.socks5;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
+import java.io.UnsupportedEncodingException;
import java.net.InetSocketAddress;
import java.net.Socket;
import java.net.SocketAddress;
@@ -34,6 +35,7 @@ import java.util.logging.Logger;
import org.jivesoftware.smack.SmackException;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.XMPPException.XMPPErrorException;
+import org.jivesoftware.smack.util.StringUtils;
import org.jivesoftware.smackx.bytestreams.socks5.packet.Bytestream.StreamHost;
/**
@@ -82,6 +84,7 @@ class Socks5Client {
// wrap connecting in future for timeout
FutureTask futureTask = new FutureTask(new Callable() {
+ @Override
public Socket call() throws IOException, SmackException {
// initialize socket
@@ -199,7 +202,13 @@ class Socks5Client {
* @return SOCKS5 connection request message
*/
private byte[] createSocks5ConnectRequest() {
- byte[] addr = this.digest.getBytes();
+ byte[] addr;
+ try {
+ addr = digest.getBytes(StringUtils.UTF8);
+ }
+ catch (UnsupportedEncodingException e) {
+ throw new AssertionError(e);
+ }
byte[] data = new byte[7 + addr.length];
data[0] = (byte) 0x05; // version (SOCKS5)
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientForInitiator.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientForInitiator.java
index 4bdbff82d..bb02f486a 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientForInitiator.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientForInitiator.java
@@ -69,6 +69,7 @@ class Socks5ClientForInitiator extends Socks5Client {
this.target = target;
}
+ @Override
public Socket getSocket(int timeout) throws IOException, InterruptedException,
TimeoutException, XMPPException, SmackException {
Socket socket = null;
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5Proxy.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5Proxy.java
index 54f9dacfa..4a1006877 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5Proxy.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5Proxy.java
@@ -38,6 +38,7 @@ import java.util.logging.Level;
import java.util.logging.Logger;
import org.jivesoftware.smack.SmackException;
+import org.jivesoftware.smack.util.StringUtils;
/**
* The Socks5Proxy class represents a local SOCKS5 proxy server. It can be enabled/disabled by
@@ -381,6 +382,7 @@ public final class Socks5Proxy {
*/
private class Socks5ServerProcess implements Runnable {
+ @Override
public void run() {
while (true) {
Socket socket = null;
@@ -470,7 +472,7 @@ public final class Socks5Proxy {
byte[] connectionRequest = Socks5Utils.receiveSocks5Message(in);
// extract digest
- String responseDigest = new String(connectionRequest, 5, connectionRequest[4]);
+ String responseDigest = new String(connectionRequest, 5, connectionRequest[4], StringUtils.UTF8);
// return error if digest is not allowed
if (!Socks5Proxy.this.allowedConnections.contains(responseDigest)) {
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/packet/Bytestream.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/packet/Bytestream.java
index df45488af..4b87c8ecf 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/packet/Bytestream.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/bytestreams/socks5/packet/Bytestream.java
@@ -317,6 +317,7 @@ public class Bytestream extends IQ {
return port;
}
+ @Override
public String getElementName() {
return ELEMENTNAME;
}
@@ -366,6 +367,7 @@ public class Bytestream extends IQ {
return JID;
}
+ @Override
public String getElementName() {
return ELEMENTNAME;
}
@@ -408,6 +410,7 @@ public class Bytestream extends IQ {
return target;
}
+ @Override
public String getElementName() {
return ELEMENTNAME;
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/EntityCapsManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/EntityCapsManager.java
index d61b7c4b1..afcdfce6a 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/EntityCapsManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/EntityCapsManager.java
@@ -65,6 +65,7 @@ import java.util.WeakHashMap;
import java.util.concurrent.ConcurrentLinkedQueue;
import java.util.logging.Level;
import java.util.logging.Logger;
+import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
@@ -113,6 +114,7 @@ public final class EntityCapsManager extends Manager {
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
getInstanceFor(connection);
}
@@ -346,6 +348,7 @@ public final class EntityCapsManager extends Manager {
// XEP-0115 specifies that a client SHOULD include entity capabilities
// with every presence notification it sends.
StanzaListener packetInterceptor = new StanzaListener() {
+ @Override
public void processStanza(Stanza packet) {
if (!entityCapsEnabled) {
// Be sure to not send stanzas with the caps extension if it's not enabled
@@ -403,7 +406,11 @@ public final class EntityCapsManager extends Manager {
* @param user
* the user (Full JID)
*/
+ // TODO: Change parameter type to Jid in Smack 4.3.
+ @SuppressWarnings("CollectionIncompatibleType")
public static void removeUserCapsNode(String user) {
+ // While JID_TO_NODEVER_CHACHE has the generic types , it is ok to call remove with String
+ // arguments, since the same Jid and String representations would be equal and have the same hash code.
JID_TO_NODEVER_CACHE.remove(user);
}
@@ -658,6 +665,7 @@ public final class EntityCapsManager extends Manager {
// XEP-0128 data forms, sort the forms by the FORM_TYPE (i.e.,
// by the XML character data of the element).
SortedSet fs = new TreeSet(new Comparator() {
+ @Override
public int compare(FormField f1, FormField f2) {
return f1.getVariable().compareTo(f2.getVariable());
}
@@ -701,9 +709,16 @@ public final class EntityCapsManager extends Manager {
// encoded using Base64 as specified in Section 4 of RFC 4648
// (note: the Base64 output MUST NOT include whitespace and MUST set
// padding bits to zero).
+ byte[] bytes;
+ try {
+ bytes = sb.toString().getBytes(StringUtils.UTF8);
+ }
+ catch (UnsupportedEncodingException e) {
+ throw new AssertionError(e);
+ }
byte[] digest;
synchronized(md) {
- digest = md.digest(sb.toString().getBytes());
+ digest = md.digest(bytes);
}
String version = Base64.encodeToString(digest);
return new CapsVersionAndHash(version, hash);
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/packet/CapsExtension.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/packet/CapsExtension.java
index b14eeb3ca..b23b6de6e 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/packet/CapsExtension.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/packet/CapsExtension.java
@@ -35,10 +35,12 @@ public class CapsExtension implements ExtensionElement {
this.hash = hash;
}
+ @Override
public String getElementName() {
return ELEMENT;
}
+ @Override
public String getNamespace() {
return NAMESPACE;
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/provider/CapsExtensionProvider.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/provider/CapsExtensionProvider.java
index ba27200c9..55f4f616c 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/provider/CapsExtensionProvider.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/caps/provider/CapsExtensionProvider.java
@@ -27,6 +27,7 @@ import org.xmlpull.v1.XmlPullParserException;
public class CapsExtensionProvider extends ExtensionElementProvider {
+ @Override
public CapsExtension parse(XmlPullParser parser, int initialDepth) throws XmlPullParserException, IOException,
SmackException {
String hash = null;
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/chatstates/ChatStateManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/chatstates/ChatStateManager.java
index 212ad0918..0552fd9b1 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/chatstates/ChatStateManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/chatstates/ChatStateManager.java
@@ -119,6 +119,7 @@ public final class ChatStateManager extends Manager {
}
+ @Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
@@ -129,6 +130,7 @@ public final class ChatStateManager extends Manager {
}
+ @Override
public int hashCode() {
return connection().hashCode();
}
@@ -164,12 +166,14 @@ public final class ChatStateManager extends Manager {
}
}
- private class IncomingMessageInterceptor implements ChatManagerListener, ChatMessageListener {
+ private static class IncomingMessageInterceptor implements ChatManagerListener, ChatMessageListener {
+ @Override
public void chatCreated(final org.jivesoftware.smack.chat.Chat chat, boolean createdLocally) {
chat.addMessageListener(this);
}
+ @Override
public void processMessage(org.jivesoftware.smack.chat.Chat chat, Message message) {
ExtensionElement extension = message.getExtension(NAMESPACE);
if (extension == null) {
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/commands/AdHocCommand.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/commands/AdHocCommand.java
index e3f5331f6..46c819ff6 100755
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/commands/AdHocCommand.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/commands/AdHocCommand.java
@@ -457,12 +457,13 @@ public abstract class AdHocCommand {
*/
sessionExpired("session-expired");
- private String value;
+ private final String value;
SpecificErrorCondition(String value) {
this.value = value;
}
+ @Override
public String toString() {
return value;
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/commands/AdHocCommandManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/commands/AdHocCommandManager.java
index b0e9902a1..8ddc1167d 100755
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/commands/AdHocCommandManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/commands/AdHocCommandManager.java
@@ -17,6 +17,7 @@
package org.jivesoftware.smackx.commands;
+import java.lang.reflect.InvocationTargetException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
@@ -83,6 +84,7 @@ public final class AdHocCommandManager extends Manager {
*/
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
getAddHocCommandsManager(connection);
}
@@ -200,8 +202,16 @@ public final class AdHocCommandManager extends Manager {
*/
public void registerCommand(String node, String name, final Class extends LocalCommand> clazz) {
registerCommand(node, name, new LocalCommandFactory() {
+ @Override
public LocalCommand getInstance() throws InstantiationException, IllegalAccessException {
- return clazz.newInstance();
+ try {
+ return clazz.getConstructor().newInstance();
+ }
+ catch (IllegalArgumentException | InvocationTargetException | NoSuchMethodException
+ | SecurityException e) {
+ // TODO: Throw those method in Smack 4.3.
+ throw new IllegalStateException(e);
+ }
}
});
}
@@ -393,6 +403,7 @@ public final class AdHocCommandManager extends Manager {
// See if the session reaping thread is started. If not, start it.
if (sessionsSweeper == null) {
sessionsSweeper = new Thread(new Runnable() {
+ @Override
public void run() {
while (true) {
for (String sessionId : executingCommands.keySet()) {
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/commands/packet/AdHocCommandData.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/commands/packet/AdHocCommandData.java
index 56a107a03..80cd688ce 100755
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/commands/packet/AdHocCommandData.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/commands/packet/AdHocCommandData.java
@@ -248,9 +248,11 @@ public class AdHocCommandData extends IQ {
this.condition = condition;
}
+ @Override
public String getElementName() {
return condition.toString();
}
+ @Override
public String getNamespace() {
return namespace;
}
@@ -259,6 +261,7 @@ public class AdHocCommandData extends IQ {
return condition;
}
+ @Override
public String toXML() {
StringBuilder buf = new StringBuilder();
buf.append('<').append(getElementName());
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/delay/packet/DelayInformation.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/delay/packet/DelayInformation.java
index 00450d7ea..3133676bb 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/delay/packet/DelayInformation.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/delay/packet/DelayInformation.java
@@ -88,10 +88,12 @@ public class DelayInformation implements ExtensionElement {
return reason;
}
+ @Override
public String getElementName() {
return ELEMENT;
}
+ @Override
public String getNamespace() {
return NAMESPACE;
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/disco/AbstractNodeInformationProvider.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/disco/AbstractNodeInformationProvider.java
index ba9ecddaa..6d64bc848 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/disco/AbstractNodeInformationProvider.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/disco/AbstractNodeInformationProvider.java
@@ -25,18 +25,22 @@ import java.util.List;
public abstract class AbstractNodeInformationProvider implements NodeInformationProvider {
+ @Override
public List getNodeItems() {
return null;
}
+ @Override
public List getNodeFeatures() {
return null;
}
+ @Override
public List getNodeIdentities() {
return null;
}
+ @Override
public List getNodePacketExtensions() {
return null;
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/disco/ServiceDiscoveryManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/disco/ServiceDiscoveryManager.java
index 2a9b8cabf..89667770c 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/disco/ServiceDiscoveryManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/disco/ServiceDiscoveryManager.java
@@ -91,6 +91,7 @@ public final class ServiceDiscoveryManager extends Manager {
// Create a new ServiceDiscoveryManager on every established connection
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
getInstanceFor(connection);
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/disco/packet/DiscoverInfo.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/disco/packet/DiscoverInfo.java
index 1957d2392..93e19cbc5 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/disco/packet/DiscoverInfo.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/disco/packet/DiscoverInfo.java
@@ -394,6 +394,7 @@ public class DiscoverInfo extends IQ implements TypedCloneable {
* XEP-0015 5.4 Processing Method (Step 3.3).
*
*/
+ @Override
public boolean equals(Object obj) {
if (obj == null)
return false;
@@ -437,6 +438,7 @@ public class DiscoverInfo extends IQ implements TypedCloneable {
* @return a negative integer, zero, or a positive integer as this object is less than,
* equal to, or greater than the specified object.
*/
+ @Override
public int compareTo(DiscoverInfo.Identity other) {
String otherLang = other.lang == null ? "" : other.lang;
String thisLang = lang == null ? "" : lang;
@@ -512,6 +514,7 @@ public class DiscoverInfo extends IQ implements TypedCloneable {
return xml;
}
+ @Override
public boolean equals(Object obj) {
if (obj == null)
return false;
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/FaultTolerantNegotiator.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/FaultTolerantNegotiator.java
index bbb853919..597e744ed 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/FaultTolerantNegotiator.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/FaultTolerantNegotiator.java
@@ -55,11 +55,13 @@ public class FaultTolerantNegotiator extends StreamNegotiator {
secondaryNegotiator.newStreamInitiation(from, streamID);
}
+ @Override
InputStream negotiateIncomingStream(Stanza streamInitiation) {
throw new UnsupportedOperationException("Negotiation only handled by create incoming " +
"stream method.");
}
+ @Override
public InputStream createIncomingStream(final StreamInitiation initiation) throws SmackException, XMPPErrorException, InterruptedException {
// This could be either an xep47 ibb 'open' iq or an xep65 streamhost iq
IQ initationSet = initiateIncomingStream(connection, initiation);
@@ -79,6 +81,7 @@ public class FaultTolerantNegotiator extends StreamNegotiator {
}
}
+ @Override
public OutputStream createOutgoingStream(String streamID, Jid initiator, Jid target)
throws SmackException, XMPPException, InterruptedException {
OutputStream stream;
@@ -92,6 +95,7 @@ public class FaultTolerantNegotiator extends StreamNegotiator {
return stream;
}
+ @Override
public String[] getNamespaces() {
String[] primary = primaryNegotiator.getNamespaces();
String[] secondary = secondaryNegotiator.getNamespaces();
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/FileTransfer.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/FileTransfer.java
index 5f5177183..13220ffaf 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/FileTransfer.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/FileTransfer.java
@@ -292,12 +292,13 @@ public abstract class FileTransfer {
*/
cancelled("Cancelled");
- private String status;
+ private final String status;
private Status(String status) {
this.status = status;
}
+ @Override
public String toString() {
return status;
}
@@ -358,6 +359,7 @@ public abstract class FileTransfer {
return msg;
}
+ @Override
public String toString() {
return msg;
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/IBBTransferNegotiator.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/IBBTransferNegotiator.java
index 27d63571c..2e28455fa 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/IBBTransferNegotiator.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/IBBTransferNegotiator.java
@@ -58,6 +58,7 @@ public class IBBTransferNegotiator extends StreamNegotiator {
this.manager = InBandBytestreamManager.getByteStreamManager(connection);
}
+ @Override
public OutputStream createOutgoingStream(String streamID, Jid initiator,
Jid target) throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException {
InBandBytestreamSession session = this.manager.establishSession(target, streamID);
@@ -65,6 +66,7 @@ public class IBBTransferNegotiator extends StreamNegotiator {
return session.getOutputStream();
}
+ @Override
public InputStream createIncomingStream(StreamInitiation initiation)
throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException {
/*
@@ -87,10 +89,12 @@ public class IBBTransferNegotiator extends StreamNegotiator {
this.manager.ignoreBytestreamRequestOnce(streamID);
}
+ @Override
public String[] getNamespaces() {
return new String[] { DataPacketExtension.NAMESPACE };
}
+ @Override
InputStream negotiateIncomingStream(Stanza streamInitiation) throws NotConnectedException, InterruptedException {
// build In-Band Bytestream request
InBandBytestreamRequest request = new ByteStreamRequest(this.manager,
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/IncomingFileTransfer.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/IncomingFileTransfer.java
index 2783e6910..6e4afef41 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/IncomingFileTransfer.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/IncomingFileTransfer.java
@@ -126,6 +126,7 @@ public class IncomingFileTransfer extends FileTransfer {
}
Thread transferThread = new Thread(new Runnable() {
+ @Override
public void run() {
try {
inputStream = negotiateStream();
@@ -184,6 +185,7 @@ public class IncomingFileTransfer extends FileTransfer {
FutureTask streamNegotiatorTask = new FutureTask(
new Callable() {
+ @Override
public InputStream call() throws Exception {
return streamNegotiator
.createIncomingStream(recieveRequest.getStreamInitiation());
@@ -220,6 +222,7 @@ public class IncomingFileTransfer extends FileTransfer {
return inputStream;
}
+ @Override
public void cancel() {
setStatus(Status.cancelled);
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/OutgoingFileTransfer.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/OutgoingFileTransfer.java
index 7d8777b63..ce2d0ae91 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/OutgoingFileTransfer.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/filetransfer/OutgoingFileTransfer.java
@@ -174,6 +174,7 @@ public class OutgoingFileTransfer extends FileTransfer {
setFileInfo(fileName, fileSize);
this.callback = progress;
transferThread = new Thread(new Runnable() {
+ @Override
public void run() {
try {
OutgoingFileTransfer.this.outputStream = negotiateStream(
@@ -192,7 +193,7 @@ public class OutgoingFileTransfer extends FileTransfer {
}
private void checkTransferThread() {
- if (transferThread != null && transferThread.isAlive() || isDone()) {
+ if ((transferThread != null && transferThread.isAlive()) || isDone()) {
throw new IllegalStateException(
"File transfer in progress or has already completed.");
}
@@ -225,6 +226,7 @@ public class OutgoingFileTransfer extends FileTransfer {
}
transferThread = new Thread(new Runnable() {
+ @Override
public void run() {
try {
outputStream = negotiateStream(file.getName(), file
@@ -298,6 +300,7 @@ public class OutgoingFileTransfer extends FileTransfer {
setFileInfo(fileName, fileSize);
transferThread = new Thread(new Runnable() {
+ @Override
public void run() {
//Create packet filter
try {
@@ -398,6 +401,7 @@ public class OutgoingFileTransfer extends FileTransfer {
return outputStream;
}
+ @Override
public void cancel() {
setStatus(Status.cancelled);
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/GeoLocationManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/GeoLocationManager.java
index f3ada0e69..89021126c 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/GeoLocationManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/GeoLocationManager.java
@@ -34,6 +34,7 @@ public final class GeoLocationManager extends Manager {
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
getInstanceFor(connection);
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/iqlast/LastActivityManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/iqlast/LastActivityManager.java
index b49051ce8..0d9a11cfb 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/iqlast/LastActivityManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/iqlast/LastActivityManager.java
@@ -108,6 +108,7 @@ public final class LastActivityManager extends Manager {
// Enable the LastActivity support on every established connection
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
LastActivityManager.getInstanceFor(connection);
}
@@ -135,6 +136,7 @@ public final class LastActivityManager extends Manager {
// Listen to all the sent messages to reset the idle time on each one
connection.addPacketSendingListener(new StanzaListener() {
+ @Override
public void processStanza(Stanza packet) {
Presence presence = (Presence) packet;
Presence.Mode mode = presence.getMode();
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/iqprivate/packet/DefaultPrivateData.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/iqprivate/packet/DefaultPrivateData.java
index 02a208452..83474b3c3 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/iqprivate/packet/DefaultPrivateData.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/iqprivate/packet/DefaultPrivateData.java
@@ -66,6 +66,7 @@ public class DefaultPrivateData implements PrivateData {
*
* @return the XML element name of the stanza(/packet) extension.
*/
+ @Override
public String getElementName() {
return elementName;
}
@@ -75,10 +76,12 @@ public class DefaultPrivateData implements PrivateData {
*
* @return the XML namespace of the stanza(/packet) extension.
*/
+ @Override
public String getNamespace() {
return namespace;
}
+ @Override
public String toXML() {
StringBuilder buf = new StringBuilder();
buf.append('<').append(elementName).append(" xmlns=\"").append(namespace).append("\">");
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/iqversion/VersionManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/iqversion/VersionManager.java
index 202a084dc..a6797315a 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/iqversion/VersionManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/iqversion/VersionManager.java
@@ -71,6 +71,7 @@ public final class VersionManager extends Manager {
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
VersionManager.getInstanceFor(connection);
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/DefaultParticipantStatusListener.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/DefaultParticipantStatusListener.java
index 6cf4de52c..baf836557 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/DefaultParticipantStatusListener.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/DefaultParticipantStatusListener.java
@@ -32,48 +32,63 @@ import org.jxmpp.jid.parts.Resourcepart;
*/
public class DefaultParticipantStatusListener implements ParticipantStatusListener {
+ @Override
public void joined(EntityFullJid participant) {
}
+ @Override
public void left(EntityFullJid participant) {
}
+ @Override
public void kicked(EntityFullJid participant, Jid actor, String reason) {
}
+ @Override
public void voiceGranted(EntityFullJid participant) {
}
+ @Override
public void voiceRevoked(EntityFullJid participant) {
}
+ @Override
public void banned(EntityFullJid participant, Jid actor, String reason) {
}
+ @Override
public void membershipGranted(EntityFullJid participant) {
}
+ @Override
public void membershipRevoked(EntityFullJid participant) {
}
+ @Override
public void moderatorGranted(EntityFullJid participant) {
}
+ @Override
public void moderatorRevoked(EntityFullJid participant) {
}
+ @Override
public void ownershipGranted(EntityFullJid participant) {
}
+ @Override
public void ownershipRevoked(EntityFullJid participant) {
}
+ @Override
public void adminGranted(EntityFullJid participant) {
}
+ @Override
public void adminRevoked(EntityFullJid participant) {
}
+ @Override
public void nicknameChanged(EntityFullJid participant, Resourcepart newNickname) {
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/DefaultUserStatusListener.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/DefaultUserStatusListener.java
index 021f16d8e..9b0d71108 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/DefaultUserStatusListener.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/DefaultUserStatusListener.java
@@ -30,42 +30,55 @@ import org.jxmpp.jid.Jid;
*/
public class DefaultUserStatusListener implements UserStatusListener {
+ @Override
public void kicked(Jid actor, String reason) {
}
+ @Override
public void voiceGranted() {
}
+ @Override
public void voiceRevoked() {
}
+ @Override
public void banned(Jid actor, String reason) {
}
+ @Override
public void membershipGranted() {
}
+ @Override
public void membershipRevoked() {
}
+ @Override
public void moderatorGranted() {
}
+ @Override
public void moderatorRevoked() {
}
+ @Override
public void ownershipGranted() {
}
+ @Override
public void ownershipRevoked() {
}
+ @Override
public void adminGranted() {
}
+ @Override
public void adminRevoked() {
}
+ @Override
public void roomDestroyed(MultiUserChat alternateMUC, String reason) {
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/MultiUserChat.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/MultiUserChat.java
index 0cee4f7b0..3d240756e 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/MultiUserChat.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/MultiUserChat.java
@@ -163,6 +163,7 @@ public class MultiUserChat {
// Create a listener for subject updates.
subjectListener = new StanzaListener() {
+ @Override
public void processStanza(Stanza packet) {
Message msg = (Message) packet;
EntityFullJid from = msg.getFrom().asEntityFullJidIfPossible();
@@ -181,6 +182,7 @@ public class MultiUserChat {
// Create a listener for all presence updates.
presenceListener = new StanzaListener() {
+ @Override
public void processStanza(Stanza packet) {
Presence presence = (Presence) packet;
final EntityFullJid from = presence.getFrom().asEntityFullJidIfPossible();
@@ -251,6 +253,7 @@ public class MultiUserChat {
// Listens for all messages that include a MUCUser extension and fire the invitation
// rejection listeners if the message includes an invitation rejection.
declinesListener = new StanzaListener() {
+ @Override
public void processStanza(Stanza packet) {
Message message = (Message) packet;
// Get the MUC User extension
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/MultiUserChatManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/MultiUserChatManager.java
index 9b556ce41..8a8b5e069 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/MultiUserChatManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/MultiUserChatManager.java
@@ -82,6 +82,7 @@ public final class MultiUserChatManager extends Manager {
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(final XMPPConnection connection) {
// Set on every established connection that this client supports the Multi-User
// Chat protocol. This information will be used when another client tries to
@@ -149,6 +150,7 @@ public final class MultiUserChatManager extends Manager {
// Listens for all messages that include a MUCUser extension and fire the invitation
// listeners if the message includes an invitation.
StanzaListener invitationPacketListener = new StanzaListener() {
+ @Override
public void processStanza(Stanza packet) {
final Message message = (Message) packet;
// Get the MUCUser extension
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/Occupant.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/Occupant.java
index b7bde0c58..044a027e2 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/Occupant.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/Occupant.java
@@ -110,6 +110,7 @@ public class Occupant {
return nick;
}
+ @Override
public boolean equals(Object obj) {
if(!(obj instanceof Occupant)) {
return false;
@@ -118,6 +119,7 @@ public class Occupant {
return jid.equals(occupant.jid);
}
+ @Override
public int hashCode() {
int result;
result = affiliation.hashCode();
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/GroupChatInvitation.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/GroupChatInvitation.java
index dfd327296..d445769cc 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/GroupChatInvitation.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/GroupChatInvitation.java
@@ -92,10 +92,12 @@ public class GroupChatInvitation implements ExtensionElement {
return roomAddress;
}
+ @Override
public String getElementName() {
return ELEMENT;
}
+ @Override
public String getNamespace() {
return NAMESPACE;
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/MUCInitialPresence.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/MUCInitialPresence.java
index 6482971fb..e6510987c 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/MUCInitialPresence.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/MUCInitialPresence.java
@@ -72,10 +72,12 @@ public class MUCInitialPresence implements ExtensionElement {
}
}
+ @Override
public String getElementName() {
return ELEMENT;
}
+ @Override
public String getNamespace() {
return NAMESPACE;
}
@@ -282,6 +284,7 @@ public class MUCInitialPresence implements ExtensionElement {
this.since = since;
}
+ @Override
public XmlStringBuilder toXML() {
XmlStringBuilder xml = new XmlStringBuilder(this);
xml.optIntAttribute("maxchars", getMaxChars());
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/MUCItem.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/MUCItem.java
index 9cbc6cd3a..05ef5aea9 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/MUCItem.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/MUCItem.java
@@ -158,6 +158,7 @@ public class MUCItem implements NamedElement {
return role;
}
+ @Override
public XmlStringBuilder toXML() {
XmlStringBuilder xml = new XmlStringBuilder(this);
xml.optAttribute("affiliation", getAffiliation());
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/MUCUser.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/MUCUser.java
index 00abd698e..ac476a7d2 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/MUCUser.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/muc/packet/MUCUser.java
@@ -50,10 +50,12 @@ public class MUCUser implements ExtensionElement {
private String password;
private Destroy destroy;
+ @Override
public String getElementName() {
return ELEMENT;
}
+ @Override
public String getNamespace() {
return NAMESPACE;
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/nick/packet/Nick.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/nick/packet/Nick.java
index 2275993b7..a88d54d5c 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/nick/packet/Nick.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/nick/packet/Nick.java
@@ -65,6 +65,7 @@ public class Nick implements ExtensionElement {
*
* @see org.jivesoftware.smack.packet.PacketExtension#getElementName()
*/
+ @Override
public String getElementName() {
return ELEMENT_NAME;
}
@@ -74,6 +75,7 @@ public class Nick implements ExtensionElement {
*
* @see org.jivesoftware.smack.packet.PacketExtension#getNamespace()
*/
+ @Override
public String getNamespace() {
return NAMESPACE;
}
@@ -83,6 +85,7 @@ public class Nick implements ExtensionElement {
*
* @see org.jivesoftware.smack.packet.PacketExtension#toXML()
*/
+ @Override
public String toXML() {
final StringBuilder buf = new StringBuilder();
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/offline/OfflineMessageManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/offline/OfflineMessageManager.java
index 7afe302ec..6b83128a7 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/offline/OfflineMessageManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/offline/OfflineMessageManager.java
@@ -152,6 +152,7 @@ public class OfflineMessageManager {
}
// Filter offline messages that were requested by this request
StanzaFilter messageFilter = new AndFilter(PACKET_FILTER, new StanzaFilter() {
+ @Override
public boolean accept(Stanza packet) {
OfflineMessageInfo info = (OfflineMessageInfo) packet.getExtension("offline",
namespace);
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/offline/packet/OfflineMessageInfo.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/offline/packet/OfflineMessageInfo.java
index 237debfda..c121d8b60 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/offline/packet/OfflineMessageInfo.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/offline/packet/OfflineMessageInfo.java
@@ -42,6 +42,7 @@ public class OfflineMessageInfo implements ExtensionElement {
*
* @return the XML element name of the stanza(/packet) extension.
*/
+ @Override
public String getElementName() {
return "offline";
}
@@ -52,6 +53,7 @@ public class OfflineMessageInfo implements ExtensionElement {
*
* @return the XML namespace of the stanza(/packet) extension.
*/
+ @Override
public String getNamespace() {
return "http://jabber.org/protocol/offline";
}
@@ -78,6 +80,7 @@ public class OfflineMessageInfo implements ExtensionElement {
this.node = node;
}
+ @Override
public String toXML() {
StringBuilder buf = new StringBuilder();
buf.append('<').append(getElementName()).append(" xmlns=\"").append(getNamespace()).append(
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pep/PEPManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pep/PEPManager.java
index 280296e96..2fc42be80 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pep/PEPManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pep/PEPManager.java
@@ -91,6 +91,7 @@ public final class PEPManager extends Manager {
private PEPManager(XMPPConnection connection) {
super(connection);
StanzaListener packetListener = new StanzaListener() {
+ @Override
public void processStanza(Stanza stanza) {
Message message = (Message) stanza;
EventElement event = EventElement.from(stanza);
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/ping/PingManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/ping/PingManager.java
index ce63a78ea..11f9dcd0f 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/ping/PingManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/ping/PingManager.java
@@ -67,6 +67,7 @@ public final class PingManager extends Manager {
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
getInstanceFor(connection);
}
@@ -402,6 +403,7 @@ public final class PingManager extends Manager {
}
private final Runnable pingServerRunnable = new Runnable() {
+ @Override
public void run() {
LOGGER.fine("ServerPingTask run()");
pingServerIfNecessary();
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/privacy/PrivacyListManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/privacy/PrivacyListManager.java
index 727bb4fdb..afe170d51 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/privacy/PrivacyListManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/privacy/PrivacyListManager.java
@@ -78,6 +78,7 @@ public final class PrivacyListManager extends Manager {
static {
// Create a new PrivacyListManager on every established connection.
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
getInstanceFor(connection);
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Affiliation.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Affiliation.java
index dde32fa25..da2ba07da 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Affiliation.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Affiliation.java
@@ -122,6 +122,7 @@ public class Affiliation implements ExtensionElement
return ELEMENT;
}
+ @Override
public String getNamespace() {
return namespace.getXmlns();
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/ConfigurationEvent.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/ConfigurationEvent.java
index 112507953..97c4d086c 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/ConfigurationEvent.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/ConfigurationEvent.java
@@ -49,6 +49,7 @@ public class ConfigurationEvent extends NodeExtension implements EmbeddedPacketE
return form;
}
+ @Override
public List getExtensions()
{
if (getConfiguration() == null)
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/ConfigureForm.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/ConfigureForm.java
index 5d6ecf683..4dd2979d7 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/ConfigureForm.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/ConfigureForm.java
@@ -610,6 +610,7 @@ public class ConfigureForm extends Form
*
* @return The node title
*/
+ @Override
public String getTitle()
{
return getFieldValue(ConfigureNodeFields.title);
@@ -620,6 +621,7 @@ public class ConfigureForm extends Form
*
* @param title The node title
*/
+ @Override
public void setTitle(String title)
{
addField(ConfigureNodeFields.title, FormField.Type.text_single);
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/EventElement.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/EventElement.java
index 987fb4c14..2d03cc896 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/EventElement.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/EventElement.java
@@ -58,6 +58,7 @@ public class EventElement implements EmbeddedPacketExtension
return type;
}
+ @Override
public List getExtensions()
{
return Arrays.asList(new ExtensionElement[]{getEvent()});
@@ -68,11 +69,13 @@ public class EventElement implements EmbeddedPacketExtension
return ext;
}
+ @Override
public String getElementName()
{
return "event";
}
+ @Override
public String getNamespace()
{
return PubSubNamespace.EVENT.getXmlns();
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/ItemsExtension.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/ItemsExtension.java
index c8676f327..6b53fd408 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/ItemsExtension.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/ItemsExtension.java
@@ -48,8 +48,8 @@ public class ItemsExtension extends NodeExtension implements EmbeddedPacketExten
/** A retract element, which has an optional notify attribute when publishing deletions. */
retract(PubSubElementType.RETRACT, "notify");
- private PubSubElementType elem;
- private String att;
+ private final PubSubElementType elem;
+ private final String att;
private ItemsElementType(PubSubElementType nodeElement, String attribute)
{
@@ -130,6 +130,7 @@ public class ItemsExtension extends NodeExtension implements EmbeddedPacketExten
return type;
}
+ @Override
@SuppressWarnings("unchecked")
public List getExtensions()
{
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Node.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Node.java
index 265eb366a..c62180dd4 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Node.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Node.java
@@ -604,6 +604,7 @@ abstract public class Node
listener = eventListener;
}
+ @Override
@SuppressWarnings({ "rawtypes", "unchecked" })
public void processStanza(Stanza packet)
{
@@ -631,6 +632,7 @@ abstract public class Node
listener = eventListener;
}
+ @Override
public void processStanza(Stanza packet)
{
// CHECKSTYLE:OFF
@@ -667,7 +669,7 @@ abstract public class Node
*
* @author Robin Collier
*/
- public class NodeConfigTranslator implements StanzaListener
+ public static class NodeConfigTranslator implements StanzaListener
{
private NodeConfigListener listener;
@@ -676,12 +678,11 @@ abstract public class Node
listener = eventListener;
}
+ @Override
public void processStanza(Stanza packet)
{
-// CHECKSTYLE:OFF
EventElement event = (EventElement)packet.getExtension("event", PubSubNamespace.EVENT.getXmlns());
ConfigurationEvent config = (ConfigurationEvent)event.getEvent();
-// CHECKSTYLE:ON
listener.handleNodeConfiguration(config);
}
@@ -712,6 +713,7 @@ abstract public class Node
&& "item".equals(secondLevelElement);
}
+ @Override
public boolean acceptSpecific(Message message) {
EventElement event = EventElement.from(message);
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/NodeExtension.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/NodeExtension.java
index 5da7ecacf..41393b7f6 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/NodeExtension.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/NodeExtension.java
@@ -65,16 +65,19 @@ public class NodeExtension implements ExtensionElement
return node;
}
+ @Override
public String getElementName()
{
return element.getElementName();
}
+ @Override
public String getNamespace()
{
return element.getNamespace().getXmlns();
}
+ @Override
public CharSequence toXML()
{
return '<' + getElementName() + (node == null ? "" : " node='" + node + '\'') + "/>";
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/PubSubElementType.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/PubSubElementType.java
index 14b14b0fe..ef0ac70f5 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/PubSubElementType.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/PubSubElementType.java
@@ -51,8 +51,8 @@ public enum PubSubElementType
SUBSCRIPTIONS("subscriptions", PubSubNamespace.BASIC),
UNSUBSCRIBE("unsubscribe", PubSubNamespace.BASIC);
- private String eName;
- private PubSubNamespace nSpace;
+ private final String eName;
+ private final PubSubNamespace nSpace;
private PubSubElementType(String elemName, PubSubNamespace ns)
{
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/RetractItem.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/RetractItem.java
index e26bfbac7..6d3411680 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/RetractItem.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/RetractItem.java
@@ -45,16 +45,19 @@ public class RetractItem implements ExtensionElement
return id;
}
+ @Override
public String getElementName()
{
return "retract";
}
+ @Override
public String getNamespace()
{
return PubSubNamespace.EVENT.getXmlns();
}
+ @Override
public String toXML()
{
return "";
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/SimplePayload.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/SimplePayload.java
index 9e92949e2..1e747f62d 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/SimplePayload.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/SimplePayload.java
@@ -45,11 +45,13 @@ public class SimplePayload implements ExtensionElement
ns = namespace;
}
+ @Override
public String getElementName()
{
return elemName;
}
+ @Override
public String getNamespace()
{
return ns;
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Subscription.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Subscription.java
index cf349e6f8..bc4d0ac68 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Subscription.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/Subscription.java
@@ -133,6 +133,7 @@ public class Subscription extends NodeExtension
return configRequired;
}
+ @Override
public String toXML()
{
StringBuilder builder = new StringBuilder("";
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/shim/packet/Header.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/shim/packet/Header.java
index f6461488c..2cb8f9000 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/shim/packet/Header.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/shim/packet/Header.java
@@ -44,10 +44,12 @@ public class Header implements ExtensionElement {
return value;
}
+ @Override
public String getElementName() {
return ELEMENT;
}
+ @Override
public String getNamespace() {
return HeadersExtension.NAMESPACE;
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/shim/packet/HeadersExtension.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/shim/packet/HeadersExtension.java
index 215c0f37e..62f0cc28e 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/shim/packet/HeadersExtension.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/shim/packet/HeadersExtension.java
@@ -48,10 +48,12 @@ public class HeadersExtension implements ExtensionElement {
return headers;
}
+ @Override
public String getElementName() {
return ELEMENT;
}
+ @Override
public String getNamespace() {
return NAMESPACE;
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/si/packet/StreamInitiation.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/si/packet/StreamInitiation.java
index 097953d9e..582268aad 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/si/packet/StreamInitiation.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/si/packet/StreamInitiation.java
@@ -317,14 +317,17 @@ public class StreamInitiation extends IQ {
return isRanged;
}
+ @Override
public String getElementName() {
return "file";
}
+ @Override
public String getNamespace() {
return "http://jabber.org/protocol/si/profile/file-transfer";
}
+ @Override
public String toXML() {
StringBuilder buffer = new StringBuilder();
@@ -370,7 +373,7 @@ public class StreamInitiation extends IQ {
* @author Alexander Wenckus
*
*/
- public class Feature implements ExtensionElement {
+ public static class Feature implements ExtensionElement {
private final DataForm data;
@@ -392,14 +395,17 @@ public class StreamInitiation extends IQ {
return data;
}
+ @Override
public String getNamespace() {
return "http://jabber.org/protocol/feature-neg";
}
+ @Override
public String getElementName() {
return "feature";
}
+ @Override
public String toXML() {
StringBuilder buf = new StringBuilder();
buf
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/time/EntityTimeManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/time/EntityTimeManager.java
index 3e2a08632..d075871fe 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/time/EntityTimeManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/time/EntityTimeManager.java
@@ -43,6 +43,7 @@ public final class EntityTimeManager extends Manager {
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
getInstanceFor(connection);
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/vcardtemp/packet/VCard.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/vcardtemp/packet/VCard.java
index 433b5ea4c..fd9a9e7a3 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/vcardtemp/packet/VCard.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/vcardtemp/packet/VCard.java
@@ -728,6 +728,7 @@ public class VCard extends IQ {
// Used in tests:
+ @Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
@@ -776,6 +777,7 @@ public class VCard extends IQ {
return workPhones.equals(vCard.workPhones);
}
+ @Override
public int hashCode() {
int result;
result = homePhones.hashCode();
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/xdata/FormField.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/xdata/FormField.java
index 11c6a939e..0a024c7d7 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/xdata/FormField.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/xdata/FormField.java
@@ -364,6 +364,7 @@ public class FormField implements NamedElement {
return ELEMENT;
}
+ @Override
public XmlStringBuilder toXML() {
XmlStringBuilder buf = new XmlStringBuilder(this);
// Add attributes
@@ -455,6 +456,7 @@ public class FormField implements NamedElement {
return ELEMENT;
}
+ @Override
public XmlStringBuilder toXML() {
XmlStringBuilder xml = new XmlStringBuilder(this);
// Add attribute
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/xdata/packet/DataForm.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/xdata/packet/DataForm.java
index b68d57ab7..c2581db74 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/xdata/packet/DataForm.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/xdata/packet/DataForm.java
@@ -171,10 +171,12 @@ public class DataForm implements ExtensionElement {
}
}
+ @Override
public String getElementName() {
return ELEMENT;
}
+ @Override
public String getNamespace() {
return NAMESPACE;
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/xdatalayout/packet/DataLayout.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/xdatalayout/packet/DataLayout.java
index a499b89e7..593ba4a95 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/xdatalayout/packet/DataLayout.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/xdatalayout/packet/DataLayout.java
@@ -124,6 +124,7 @@ public class DataLayout implements ExtensionElement {
this.var = var;
}
+ @Override
public XmlStringBuilder toXML() {
XmlStringBuilder buf = new XmlStringBuilder(this);
buf.attribute("var", getVar());
@@ -181,6 +182,7 @@ public class DataLayout implements ExtensionElement {
return this.sectionLayout;
}
+ @Override
public XmlStringBuilder toXML() {
XmlStringBuilder buf = new XmlStringBuilder(this);
buf.optAttribute("label", getLabel());
@@ -211,6 +213,7 @@ public class DataLayout implements ExtensionElement {
public static final String ELEMENT = "reportedref";
+ @Override
public XmlStringBuilder toXML() {
XmlStringBuilder buf = new XmlStringBuilder(this);
buf.closeEmptyElement();
@@ -236,6 +239,7 @@ public class DataLayout implements ExtensionElement {
this.text = text;
}
+ @Override
public XmlStringBuilder toXML() {
XmlStringBuilder buf = new XmlStringBuilder();
buf.element(ELEMENT, getText());
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/xdatavalidation/packet/ValidateElement.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/xdatavalidation/packet/ValidateElement.java
index 4aeb61b30..28777f426 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/xdatavalidation/packet/ValidateElement.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/xdatavalidation/packet/ValidateElement.java
@@ -144,6 +144,7 @@ public abstract class ValidateElement implements ExtensionElement {
buf.emptyElement(METHOD);
}
+ @Override
public void checkConsistency(FormField formField) {
checkListRangeConsistency(formField);
if (formField.getType() != null) {
@@ -186,6 +187,7 @@ public abstract class ValidateElement implements ExtensionElement {
buf.emptyElement(METHOD);
}
+ @Override
public void checkConsistency(FormField formField) {
checkListRangeConsistency(formField);
if (formField.getType() != null) {
@@ -253,6 +255,7 @@ public abstract class ValidateElement implements ExtensionElement {
return max;
}
+ @Override
public void checkConsistency(FormField formField) {
checkNonMultiConsistency(formField, METHOD);
if (getDatatype().equals(ValidateElement.DATATYPE_XS_STRING)) {
@@ -302,6 +305,7 @@ public abstract class ValidateElement implements ExtensionElement {
buf.element("regex", getRegex());
}
+ @Override
public void checkConsistency(FormField formField) {
checkNonMultiConsistency(formField, METHOD);
}
@@ -340,6 +344,7 @@ public abstract class ValidateElement implements ExtensionElement {
this.max = max;
}
+ @Override
public XmlStringBuilder toXML() {
XmlStringBuilder buf = new XmlStringBuilder(this);
buf.optLongAttribute("min", getMin());
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLManager.java
index 10c96c936..0dd8cf8bf 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLManager.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLManager.java
@@ -40,6 +40,7 @@ import java.util.List;
public class XHTMLManager {
static {
XMPPConnectionRegistry.addConnectionCreationListener(new ConnectionCreationListener() {
+ @Override
public void connectionCreated(XMPPConnection connection) {
// Enable the XHTML support on every established connection
XHTMLManager.setServiceEnabled(connection, true);
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLText.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLText.java
index e72099f31..cd4f47f6c 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLText.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/XHTMLText.java
@@ -400,6 +400,7 @@ public class XHTMLText {
*
* @return the text of the XHTMLText
*/
+ @Override
public String toString() {
return text.toString();
}
diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/packet/XHTMLExtension.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/packet/XHTMLExtension.java
index 858e32650..f5b9227e9 100644
--- a/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/packet/XHTMLExtension.java
+++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/xhtmlim/packet/XHTMLExtension.java
@@ -48,6 +48,7 @@ public class XHTMLExtension implements ExtensionElement {
*
* @return the XML element name of the stanza(/packet) extension.
*/
+ @Override
public String getElementName() {
return ELEMENT;
}
@@ -58,6 +59,7 @@ public class XHTMLExtension implements ExtensionElement {
*
* @return the XML namespace of the stanza(/packet) extension.
*/
+ @Override
public String getNamespace() {
return NAMESPACE;
}
diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bob/BoBIQTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bob/BoBIQTest.java
index dab9c9e81..3308c6f73 100644
--- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bob/BoBIQTest.java
+++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bob/BoBIQTest.java
@@ -19,6 +19,7 @@ package org.jivesoftware.smackx.bob;
import org.jivesoftware.smack.packet.IQ.Type;
import org.jivesoftware.smack.test.util.SmackTestSuite;
import org.jivesoftware.smack.util.PacketParserUtils;
+import org.jivesoftware.smack.util.StringUtils;
import org.jivesoftware.smackx.bob.element.BoBIQ;
import org.junit.Assert;
import org.junit.Test;
@@ -50,7 +51,7 @@ public class BoBIQTest extends SmackTestSuite {
BoBIQ bobIQ = PacketParserUtils.parseStanza(sampleBoBIQResponse);
BoBHash bobHash = new BoBHash("8f35fef110ffc5df08d579a50083ff9308fb6242", "sha1");
- BoBData bobData = new BoBData("image/png", "sarasade2354j2".getBytes(), 86400);
+ BoBData bobData = new BoBData("image/png", "sarasade2354j2".getBytes(StringUtils.UTF8), 86400);
BoBIQ createdBoBIQ = new BoBIQ(bobHash, bobData);
createdBoBIQ.setStanzaId("sarasa");
diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamManagerTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamManagerTest.java
index 185842226..de7ab078f 100644
--- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamManagerTest.java
+++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamManagerTest.java
@@ -164,6 +164,7 @@ public class InBandBytestreamManagerTest extends InitExtensions {
protocol.addResponse(null, new Verification() {
+ @Override
public void verify(Open request, IQ response) {
assertEquals(StanzaType.MESSAGE, request.getStanza());
}
diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionMessageTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionMessageTest.java
index 0ebc90ab0..22c416a1b 100644
--- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionMessageTest.java
+++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionMessageTest.java
@@ -102,6 +102,7 @@ public class InBandBytestreamSessionMessageTest extends InitExtensions {
long lastSeq = 0;
+ @Override
public void verify(Message request, IQ response) {
DataPacketExtension dpe = (DataPacketExtension) request.getExtension(
DataPacketExtension.ELEMENT, DataPacketExtension.NAMESPACE);
diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionTest.java
index 5aab18902..f399d2b9d 100644
--- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionTest.java
+++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/InBandBytestreamSessionTest.java
@@ -103,6 +103,7 @@ public class InBandBytestreamSessionTest extends InitExtensions {
long lastSeq = 0;
+ @Override
public void verify(Data request, IQ response) {
assertEquals(lastSeq++, request.getDataPacketExtension().getSeq());
}
@@ -267,6 +268,7 @@ public class InBandBytestreamSessionTest extends InitExtensions {
// compares the data of each packet with the control data
Verification dataVerification = new Verification() {
+ @Override
public void verify(Data request, IQ response) {
byte[] decodedData = request.getDataPacketExtension().getDecodedData();
int seq = (int) request.getDataPacketExtension().getSeq();
@@ -372,6 +374,7 @@ public class InBandBytestreamSessionTest extends InitExtensions {
// verify reply to invalid data packet is an error
protocol.addResponse(null, Verification.requestTypeERROR, new Verification() {
+ @Override
public void verify(IQ request, IQ response) {
assertEquals(XMPPError.Condition.unexpected_request,
request.getError().getCondition());
@@ -410,6 +413,7 @@ public class InBandBytestreamSessionTest extends InitExtensions {
// verify reply to invalid data packet is an error
protocol.addResponse(null, Verification.requestTypeERROR, new Verification() {
+ @Override
public void verify(IQ request, IQ response) {
assertEquals(XMPPError.Condition.bad_request,
request.getError().getCondition());
@@ -639,6 +643,7 @@ public class InBandBytestreamSessionTest extends InitExtensions {
Thread closer = new Thread(new Runnable() {
+ @Override
public void run() {
try {
Thread.sleep(200);
diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataPacketExtensionTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataPacketExtensionTest.java
index 435609026..5409333b3 100644
--- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataPacketExtensionTest.java
+++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/ibb/packet/DataPacketExtensionTest.java
@@ -20,8 +20,10 @@ import static org.custommonkey.xmlunit.XMLAssert.assertXMLEqual;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
+import java.io.UnsupportedEncodingException;
import java.util.Properties;
+import org.jivesoftware.smack.util.StringUtils;
import org.jivesoftware.smackx.InitExtensions;
import org.junit.Test;
@@ -68,13 +70,13 @@ public class DataPacketExtensionTest extends InitExtensions {
}
@Test
- public void shouldReturnNullIfDataIsInvalid() {
+ public void shouldReturnNullIfDataIsInvalid() throws UnsupportedEncodingException {
// pad character is not at end of data
DataPacketExtension data = new DataPacketExtension("sessionID", 0, "BBBB=CCC");
assertNull(data.getDecodedData());
// invalid Base64 character
- data = new DataPacketExtension("sessionID", 0, new String(new byte[] { 123 }));
+ data = new DataPacketExtension("sessionID", 0, new String(new byte[] { 123 }, StringUtils.UTF8));
assertNull(data.getDecodedData());
}
diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ByteStreamManagerTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ByteStreamManagerTest.java
index 118e22f2a..65976c575 100644
--- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ByteStreamManagerTest.java
+++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ByteStreamManagerTest.java
@@ -604,6 +604,7 @@ public class Socks5ByteStreamManagerTest {
// return used stream host info as response to the bytestream initiation
protocol.addResponse(streamHostUsedPacket, new Verification() {
+ @Override
public void verify(Bytestream request, Bytestream response) {
// verify SOCKS5 Bytestream request
assertEquals(response.getSessionID(), request.getSessionID());
@@ -698,6 +699,7 @@ public class Socks5ByteStreamManagerTest {
// return used stream host info as response to the bytestream initiation
protocol.addResponse(streamHostUsedPacket, new Verification() {
+ @Override
public void verify(Bytestream request, Bytestream response) {
assertEquals(response.getSessionID(), request.getSessionID());
assertEquals(1, request.getStreamHosts().size());
@@ -714,6 +716,7 @@ public class Socks5ByteStreamManagerTest {
// return proxy activation response if proxy should be activated
protocol.addResponse(activationResponse, new Verification() {
+ @Override
public void verify(Bytestream request, IQ response) {
assertEquals(targetJID, request.getToActivate().getTarget());
}
@@ -796,6 +799,7 @@ public class Socks5ByteStreamManagerTest {
// return used stream host info as response to the bytestream initiation
protocol.addResponse(streamHostUsedPacket, new Verification() {
+ @Override
public void verify(Bytestream request, Bytestream response) {
assertEquals(response.getSessionID(), request.getSessionID());
StreamHost streamHost1 = request.getStreamHosts().get(0);
@@ -862,6 +866,7 @@ public class Socks5ByteStreamManagerTest {
Verification streamHostUsedVerification1 = new Verification() {
+ @Override
public void verify(Bytestream request, Bytestream response) {
assertEquals(response.getSessionID(), request.getSessionID());
assertEquals(2, request.getStreamHosts().size());
@@ -898,6 +903,7 @@ public class Socks5ByteStreamManagerTest {
Verification streamHostUsedVerification2 = new Verification() {
+ @Override
public void verify(Bytestream request, Bytestream response) {
assertEquals(response.getSessionID(), request.getSessionID());
assertEquals(2, request.getStreamHosts().size());
@@ -946,6 +952,7 @@ public class Socks5ByteStreamManagerTest {
Verification streamHostUsedVerification = new Verification() {
+ @Override
public void verify(Bytestream request, Bytestream response) {
assertEquals(response.getSessionID(), request.getSessionID());
assertEquals(2, request.getStreamHosts().size());
@@ -1079,6 +1086,7 @@ public class Socks5ByteStreamManagerTest {
// return proxy activation response if proxy should be activated
protocol.addResponse(activationResponse, new Verification() {
+ @Override
public void verify(Bytestream request, IQ response) {
assertEquals(targetJID, request.getToActivate().getTarget());
}
diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientForInitiatorTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientForInitiatorTest.java
index 7616597eb..7a7bab2f2 100644
--- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientForInitiatorTest.java
+++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientForInitiatorTest.java
@@ -254,6 +254,7 @@ public class Socks5ClientForInitiatorTest {
protocol.addResponse(activationResponse, Verification.correspondingSenderReceiver,
Verification.requestTypeSET, new Verification() {
+ @Override
public void verify(Bytestream request, IQ response) {
// verify that the correct stream should be activated
assertNotNull(request.getToActivate());
diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientTest.java
index aab52d2a7..e658020fd 100644
--- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientTest.java
+++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ClientTest.java
@@ -29,6 +29,7 @@ import java.net.Socket;
import org.jivesoftware.smack.SmackException;
import org.jivesoftware.smack.util.NetworkUtil;
+import org.jivesoftware.smack.util.StringUtils;
import org.jivesoftware.smackx.bytestreams.socks5.packet.Bytestream.StreamHost;
import org.junit.After;
import org.junit.Before;
@@ -236,7 +237,7 @@ public class Socks5ClientTest {
// reply with full SOCKS5 message with an error code (01 = general SOCKS server
// failure)
out.write(new byte[] { (byte) 0x05, (byte) 0x01, (byte) 0x00, (byte) 0x03 });
- byte[] address = digest.getBytes();
+ byte[] address = digest.getBytes(StringUtils.UTF8);
out.write(address.length);
out.write(address);
out.write(new byte[] { (byte) 0x00, (byte) 0x00 });
@@ -295,7 +296,7 @@ public class Socks5ClientTest {
out.write(new byte[] { (byte) 0x05, (byte) 0x00 });
out.flush();
- byte[] address = digest.getBytes();
+ byte[] address = digest.getBytes(StringUtils.UTF8);
assertEquals((byte) 0x05, (byte) in.read()); // version
assertEquals((byte) 0x01, (byte) in.read()); // connect request
diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ProxyTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ProxyTest.java
index f909bebe8..b2d3da710 100644
--- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ProxyTest.java
+++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5ProxyTest.java
@@ -32,6 +32,7 @@ import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.List;
+import org.jivesoftware.smack.util.StringUtils;
import org.junit.After;
import org.junit.Test;
@@ -272,7 +273,7 @@ public class Socks5ProxyTest {
proxy.start();
assertTrue(proxy.isRunning());
- String digest = new String(new byte[] { (byte) 0xAA });
+ String digest = new String(new byte[] { (byte) 0xAA }, StringUtils.UTF8);
// add digest to allow connection
proxy.addTransfer(digest);
diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5TestProxy.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5TestProxy.java
index 64d696f9b..d3b60e2a3 100644
--- a/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5TestProxy.java
+++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/bytestreams/socks5/Socks5TestProxy.java
@@ -30,6 +30,7 @@ import java.util.logging.Level;
import java.util.logging.Logger;
import org.jivesoftware.smack.SmackException;
+import org.jivesoftware.smack.util.StringUtils;
/**
* Simple SOCKS5 proxy for testing purposes. It is almost the same as the Socks5Proxy class but the
@@ -206,6 +207,7 @@ public final class Socks5TestProxy {
*/
class Socks5ServerProcess implements Runnable {
+ @Override
public void run() {
while (true) {
Socket socket = null;
@@ -295,7 +297,7 @@ public final class Socks5TestProxy {
byte[] connectionRequest = Socks5Utils.receiveSocks5Message(in);
// extract digest
- String responseDigest = new String(connectionRequest, 5, connectionRequest[4]);
+ String responseDigest = new String(connectionRequest, 5, connectionRequest[4], StringUtils.UTF8);
connectionRequest[1] = (byte) 0x00; // set return status to 0 (success)
out.write(connectionRequest);
diff --git a/smack-extensions/src/test/java/org/jivesoftware/smackx/xdatavalidation/provider/DataValidationTest.java b/smack-extensions/src/test/java/org/jivesoftware/smackx/xdatavalidation/provider/DataValidationTest.java
index 915cbd650..c29dc8dbc 100644
--- a/smack-extensions/src/test/java/org/jivesoftware/smackx/xdatavalidation/provider/DataValidationTest.java
+++ b/smack-extensions/src/test/java/org/jivesoftware/smackx/xdatavalidation/provider/DataValidationTest.java
@@ -88,7 +88,7 @@ public class DataValidationTest {
assertEquals("min-val", rdv.getMin());
assertEquals("max-val", rdv.getMax());
assertNotNull(rdv.getListRange());
- assertEquals(new Long(111), rdv.getListRange().getMin());
+ assertEquals(Long.valueOf(111), rdv.getListRange().getMin());
assertEquals(999, rdv.getListRange().getMax().intValue());
diff --git a/smack-extensions/src/test/java/org/jivesoftware/util/ConnectionUtils.java b/smack-extensions/src/test/java/org/jivesoftware/util/ConnectionUtils.java
index 22625e306..b895e800c 100644
--- a/smack-extensions/src/test/java/org/jivesoftware/util/ConnectionUtils.java
+++ b/smack-extensions/src/test/java/org/jivesoftware/util/ConnectionUtils.java
@@ -92,6 +92,7 @@ public class ConnectionUtils {
// mock send method
Answer