diff --git a/build-logic/src/main/groovy/org.igniterealtime.smack.java-common-conventions.gradle b/build-logic/src/main/groovy/org.igniterealtime.smack.java-common-conventions.gradle index e6a9ecbbf..aedba32fb 100644 --- a/build-logic/src/main/groovy/org.igniterealtime.smack.java-common-conventions.gradle +++ b/build-logic/src/main/groovy/org.igniterealtime.smack.java-common-conventions.gradle @@ -142,8 +142,7 @@ dependencies { testImplementation 'com.jamesmurty.utils:java-xmlbuilder:1.2' - errorprone 'com.google.errorprone:error_prone_core:2.9.0' - errorproneJavac('com.google.errorprone:javac:9+181-r4173-1') + errorprone 'com.google.errorprone:error_prone_core:2.32.0' } test { diff --git a/smack-android-extensions/src/main/java/org/jivesoftware/smackx/ping/android/ServerPingWithAlarmManager.java b/smack-android-extensions/src/main/java/org/jivesoftware/smackx/ping/android/ServerPingWithAlarmManager.java index 3d217efcb..f4a93d150 100644 --- a/smack-android-extensions/src/main/java/org/jivesoftware/smackx/ping/android/ServerPingWithAlarmManager.java +++ b/smack-android-extensions/src/main/java/org/jivesoftware/smackx/ping/android/ServerPingWithAlarmManager.java @@ -1,6 +1,6 @@ /** * - * Copyright © 2014-2021 Florian Schmaus + * Copyright © 2014-2024 Florian Schmaus * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -121,6 +121,7 @@ public final class ServerPingWithAlarmManager extends Manager { private static final BroadcastReceiver ALARM_BROADCAST_RECEIVER = new BroadcastReceiver() { @Override + @SuppressWarnings("LockOnNonEnclosingClassLiteral") public void onReceive(Context context, Intent intent) { LOGGER.fine("Ping Alarm broadcast received"); Set> managers; 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 2a5b79c6a..82098094f 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/SmackInitialization.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/SmackInitialization.java @@ -1,6 +1,6 @@ /** * - * Copyright 2003-2007 Jive Software, 2014-2020 Florian Schmaus + * Copyright 2003-2007 Jive Software, 2014-2024 Florian Schmaus * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -63,7 +63,7 @@ public final class SmackInitialization { private static final Logger LOGGER = Logger.getLogger(SmackInitialization.class.getName()); - /** + /* * Loads the configuration from the smack-config.xml and system properties file. *

* So far this means that: diff --git a/smack-core/src/main/java/org/jivesoftware/smack/c2s/ModularXmppClientToServerConnection.java b/smack-core/src/main/java/org/jivesoftware/smack/c2s/ModularXmppClientToServerConnection.java index 5f060311a..ca3de8190 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/c2s/ModularXmppClientToServerConnection.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/c2s/ModularXmppClientToServerConnection.java @@ -667,7 +667,8 @@ public final class ModularXmppClientToServerConnection extends AbstractXMPPConne } private final class DisconnectedState extends State { - + // Invoked via reflection. + @SuppressWarnings("UnusedMethod") private DisconnectedState(StateDescriptor stateDescriptor, ModularXmppClientToServerConnectionInternal connectionInternal) { super(stateDescriptor, connectionInternal); @@ -708,6 +709,8 @@ public final class ModularXmppClientToServerConnection extends AbstractXMPPConne private final class LookupRemoteConnectionEndpointsState extends State { boolean outgoingElementsQueueWasShutdown; + // Invoked via reflection. + @SuppressWarnings("UnusedMethod") private LookupRemoteConnectionEndpointsState(StateDescriptor stateDescriptor, ModularXmppClientToServerConnectionInternal connectionInternal) { super(stateDescriptor, connectionInternal); @@ -818,6 +821,8 @@ public final class ModularXmppClientToServerConnection extends AbstractXMPPConne } private final class ConnectedButUnauthenticatedState extends State { + // Invoked via reflection. + @SuppressWarnings("UnusedMethod") private ConnectedButUnauthenticatedState(StateDescriptor stateDescriptor, ModularXmppClientToServerConnectionInternal connectionInternal) { super(stateDescriptor, connectionInternal); @@ -850,6 +855,8 @@ public final class ModularXmppClientToServerConnection extends AbstractXMPPConne } private final class SaslAuthenticationState extends State { + // Invoked via reflection. + @SuppressWarnings("UnusedMethod") private SaslAuthenticationState(StateDescriptor stateDescriptor, ModularXmppClientToServerConnectionInternal connectionInternal) { super(stateDescriptor, connectionInternal); @@ -893,6 +900,8 @@ public final class ModularXmppClientToServerConnection extends AbstractXMPPConne } public static final class ResourceBindingStateDescriptor extends StateDescriptor { + // Invoked via reflection. + @SuppressWarnings("UnusedMethod") private ResourceBindingStateDescriptor() { super(ResourceBindingState.class, "RFC 6120 § 7"); addSuccessor(AuthenticatedAndResourceBoundStateDescriptor.class); @@ -900,6 +909,8 @@ public final class ModularXmppClientToServerConnection extends AbstractXMPPConne } private final class ResourceBindingState extends State { + // Invoked via reflection. + @SuppressWarnings("UnusedMethod") private ResourceBindingState(StateDescriptor stateDescriptor, ModularXmppClientToServerConnectionInternal connectionInternal) { super(stateDescriptor, connectionInternal); @@ -955,6 +966,8 @@ public final class ModularXmppClientToServerConnection extends AbstractXMPPConne } private final class AuthenticatedAndResourceBoundState extends State { + // Invoked via reflection. + @SuppressWarnings("UnusedMethod") private AuthenticatedAndResourceBoundState(StateDescriptor stateDescriptor, ModularXmppClientToServerConnectionInternal connectionInternal) { super(stateDescriptor, connectionInternal); @@ -995,6 +1008,8 @@ public final class ModularXmppClientToServerConnection extends AbstractXMPPConne } private final class ShutdownState extends State { + // Invoked via reflection. + @SuppressWarnings("UnusedMethod") private ShutdownState(StateDescriptor stateDescriptor, ModularXmppClientToServerConnectionInternal connectionInternal) { super(stateDescriptor, connectionInternal); @@ -1057,6 +1072,8 @@ public final class ModularXmppClientToServerConnection extends AbstractXMPPConne } private static final class InstantShutdownState extends NoOpState { + // Invoked via reflection. + @SuppressWarnings("UnusedMethod") private InstantShutdownState(ModularXmppClientToServerConnection connection, StateDescriptor stateDescriptor, ModularXmppClientToServerConnectionInternal connectionInternal) { super(connection, stateDescriptor, connectionInternal); @@ -1078,6 +1095,8 @@ public final class ModularXmppClientToServerConnection extends AbstractXMPPConne } private final class CloseConnectionState extends State { + // Invoked via reflection. + @SuppressWarnings("UnusedMethod") private CloseConnectionState(StateDescriptor stateDescriptor, ModularXmppClientToServerConnectionInternal connectionInternal) { super(stateDescriptor, connectionInternal); diff --git a/smack-core/src/main/java/org/jivesoftware/smack/compression/CompressionModuleDescriptor.java b/smack-core/src/main/java/org/jivesoftware/smack/compression/CompressionModuleDescriptor.java index 3cf43ee79..4fa0e6045 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/compression/CompressionModuleDescriptor.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/compression/CompressionModuleDescriptor.java @@ -1,6 +1,6 @@ /** * - * Copyright 2018-2020 Florian Schmaus + * Copyright 2018-2024 Florian Schmaus * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -41,6 +41,8 @@ public class CompressionModuleDescriptor extends ModularXmppClientToServerConnec public static final class Builder extends ModularXmppClientToServerConnectionModuleDescriptor.Builder { + // Invoked via reflection. + @SuppressWarnings("UnusedMethod") private Builder(ModularXmppClientToServerConnectionConfiguration.Builder connectionConfigurationBuilder) { super(connectionConfigurationBuilder); } diff --git a/smack-core/src/main/java/org/jivesoftware/smack/fsm/StateDescriptorGraph.java b/smack-core/src/main/java/org/jivesoftware/smack/fsm/StateDescriptorGraph.java index 224e1fab0..45d23bb36 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/fsm/StateDescriptorGraph.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/fsm/StateDescriptorGraph.java @@ -1,6 +1,6 @@ /** * - * Copyright 2018-2021 Florian Schmaus + * Copyright 2018-2024 Florian Schmaus * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -368,7 +368,7 @@ public class StateDescriptorGraph { } } - public static void stateDescriptorGraphToDot(Collection> vertexes, + public static void stateDescriptorGraphToDot(Collection> vertexes, PrintWriter dotOut, boolean breakStateName) { dotOut.append("digraph {\n"); dfs(vertexes, diff --git a/smack-core/src/main/java/org/jivesoftware/smack/isr/InstantStreamResumptionModuleDescriptor.java b/smack-core/src/main/java/org/jivesoftware/smack/isr/InstantStreamResumptionModuleDescriptor.java index d26703eec..3e8171076 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/isr/InstantStreamResumptionModuleDescriptor.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/isr/InstantStreamResumptionModuleDescriptor.java @@ -41,6 +41,8 @@ public class InstantStreamResumptionModuleDescriptor extends ModularXmppClientTo public static final class Builder extends ModularXmppClientToServerConnectionModuleDescriptor.Builder { + // Unfinished implementation. + @SuppressWarnings("UnusedMethod") private Builder(ModularXmppClientToServerConnectionConfiguration.Builder connectionConfigurationBuilder) { super(connectionConfigurationBuilder); } diff --git a/smack-core/src/main/java/org/jivesoftware/smack/proxy/HTTPProxySocketConnection.java b/smack-core/src/main/java/org/jivesoftware/smack/proxy/HTTPProxySocketConnection.java index 549406423..bdf0cf390 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/proxy/HTTPProxySocketConnection.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/proxy/HTTPProxySocketConnection.java @@ -23,6 +23,7 @@ import java.io.StringReader; import java.net.HttpURLConnection; import java.net.InetSocketAddress; import java.net.Socket; +import java.nio.charset.StandardCharsets; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -58,7 +59,7 @@ class HTTPProxySocketConnection implements ProxySocketConnection { proxyLine = "\r\nProxy-Authorization: Basic " + Base64.encode(username + ":" + password); } socket.getOutputStream().write((hostport + " HTTP/1.1\r\nHost: " - + host + ":" + port + proxyLine + "\r\n\r\n").getBytes("UTF-8")); + + host + ":" + port + proxyLine + "\r\n\r\n").getBytes(StandardCharsets.UTF_8)); InputStream in = socket.getInputStream(); StringBuilder got = new StringBuilder(100); diff --git a/smack-core/src/main/java/org/jivesoftware/smack/util/CollectionUtil.java b/smack-core/src/main/java/org/jivesoftware/smack/util/CollectionUtil.java index 408e00bfd..c3566c6c0 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/util/CollectionUtil.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/util/CollectionUtil.java @@ -55,6 +55,7 @@ public class CollectionUtil { boolean test(T t); } + @SuppressWarnings("NonApiType") public static ArrayList newListWith(Collection collection) { if (collection == null) { return null; diff --git a/smack-core/src/main/java/org/jivesoftware/smack/util/Pair.java b/smack-core/src/main/java/org/jivesoftware/smack/util/Pair.java index 76ebc1dc5..13e65e881 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/util/Pair.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/util/Pair.java @@ -26,12 +26,12 @@ public final class Pair { this.second = second; } - public static Pair create(F first, S second) { + public static Pair create(F first, S second) { return new Pair<>(first, second); } @SuppressWarnings("ReturnValueIgnored") - public static Pair createAndInitHashCode(F first, S second) { + public static Pair createAndInitHashCode(F first, S second) { Pair pair = new Pair<>(first, second); pair.hashCode(); return pair; diff --git a/smack-core/src/main/java/org/jivesoftware/smack/util/SecurityUtil.java b/smack-core/src/main/java/org/jivesoftware/smack/util/SecurityUtil.java index 3521279df..c796ab23e 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/util/SecurityUtil.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/util/SecurityUtil.java @@ -1,6 +1,6 @@ /** * - * Copyright 2019 Florian Schmaus. + * Copyright 2019-2024 Florian Schmaus. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -26,6 +26,7 @@ public class SecurityUtil { private static final LruCache, Void> INSERTED_PROVIDERS_CACHE = new LruCache<>(8); + @SuppressWarnings("LockOnNonEnclosingClassLiteral") public static void ensureProviderAtFirstPosition(Class providerClass) { if (INSERTED_PROVIDERS_CACHE.containsKey(providerClass)) { return; @@ -41,7 +42,7 @@ public class SecurityUtil { String providerName = provider.getName(); - int installedPosition ; + int installedPosition; synchronized (Security.class) { Security.removeProvider(providerName); installedPosition = Security.insertProviderAt(provider, 1); diff --git a/smack-core/src/main/java/org/jivesoftware/smack/util/StringUtils.java b/smack-core/src/main/java/org/jivesoftware/smack/util/StringUtils.java index ffadbda00..83c9f40bb 100644 --- a/smack-core/src/main/java/org/jivesoftware/smack/util/StringUtils.java +++ b/smack-core/src/main/java/org/jivesoftware/smack/util/StringUtils.java @@ -464,7 +464,7 @@ public class StringUtils { appendTo(collection, ", ", sb); } - public static void appendTo(Collection collection, StringBuilder sb, + public static void appendTo(Collection collection, StringBuilder sb, Consumer appendFunction) { appendTo(collection, ", ", sb, appendFunction); } @@ -473,7 +473,7 @@ public class StringUtils { appendTo(collection, delimiter, sb, o -> sb.append(o)); } - public static void appendTo(Collection collection, String delimiter, StringBuilder sb, + public static void appendTo(Collection collection, String delimiter, StringBuilder sb, Consumer appendFunction) { for (Iterator it = collection.iterator(); it.hasNext();) { O cs = it.next(); diff --git a/smack-examples/src/main/java/org/igniterealtime/smack/examples/OmemoClient.java b/smack-examples/src/main/java/org/igniterealtime/smack/examples/OmemoClient.java index b247c77b2..9c8652107 100644 --- a/smack-examples/src/main/java/org/igniterealtime/smack/examples/OmemoClient.java +++ b/smack-examples/src/main/java/org/igniterealtime/smack/examples/OmemoClient.java @@ -185,7 +185,7 @@ public class OmemoClient { BareJid contact = JidCreate.bareFrom(com[1]); - HashMap devices; + Map devices; try { devices = omemoManager.getActiveFingerprints(contact); } catch (CorruptedOmemoKeyException | CannotEstablishOmemoSessionException | SmackException.NoResponseException e) { diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MUCLightRoomConfiguration.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MUCLightRoomConfiguration.java index aab822087..7f0595871 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MUCLightRoomConfiguration.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MUCLightRoomConfiguration.java @@ -16,7 +16,7 @@ */ package org.jivesoftware.smackx.muclight; -import java.util.HashMap; +import java.util.Map; /** * MUC Light room configuration class. @@ -28,7 +28,7 @@ public class MUCLightRoomConfiguration { private final String roomName; private final String subject; - private final HashMap customConfigs; + private final Map customConfigs; /** * MUC Light room configuration model constructor. @@ -37,7 +37,7 @@ public class MUCLightRoomConfiguration { * @param subject TODO javadoc me please * @param customConfigs TODO javadoc me please */ - public MUCLightRoomConfiguration(String roomName, String subject, HashMap customConfigs) { + public MUCLightRoomConfiguration(String roomName, String subject, Map customConfigs) { this.roomName = roomName; this.subject = subject; this.customConfigs = customConfigs; @@ -66,7 +66,7 @@ public class MUCLightRoomConfiguration { * * @return the custom configurations of the room. */ - public HashMap getCustomConfigs() { + public Map getCustomConfigs() { return customConfigs; } diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MUCLightRoomInfo.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MUCLightRoomInfo.java index b41066d54..532f64bf4 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MUCLightRoomInfo.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MUCLightRoomInfo.java @@ -16,7 +16,7 @@ */ package org.jivesoftware.smackx.muclight; -import java.util.HashMap; +import java.util.Map; import org.jxmpp.jid.Jid; @@ -30,7 +30,7 @@ public class MUCLightRoomInfo { private final String version; private final Jid room; private final MUCLightRoomConfiguration configuration; - private final HashMap occupants; + private final Map occupants; /** * MUC Light room info model constructor. @@ -41,7 +41,7 @@ public class MUCLightRoomInfo { * @param occupants TODO javadoc me please */ public MUCLightRoomInfo(String version, Jid roomJid, MUCLightRoomConfiguration configuration, - HashMap occupants) { + Map occupants) { this.version = version; this.room = roomJid; this.configuration = configuration; @@ -80,7 +80,7 @@ public class MUCLightRoomInfo { * * @return the occupants of the room. */ - public HashMap getOccupants() { + public Map getOccupants() { return occupants; } diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MultiUserChatLight.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MultiUserChatLight.java index 77262c226..58e5b367d 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MultiUserChatLight.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MultiUserChatLight.java @@ -18,6 +18,7 @@ package org.jivesoftware.smackx.muclight; import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.Set; import java.util.concurrent.CopyOnWriteArraySet; @@ -279,7 +280,7 @@ public class MultiUserChatLight { * @param occupants TODO javadoc me please * @throws Exception TODO javadoc me please */ - public void create(String roomName, String subject, HashMap customConfigs, List occupants) + public void create(String roomName, String subject, Map customConfigs, List occupants) throws Exception { MUCLightCreateIQ createMUCLightIQ = new MUCLightCreateIQ(room, roomName, occupants); @@ -313,7 +314,7 @@ public class MultiUserChatLight { * @throws XMPPErrorException if there was an XMPP error returned. */ public void leave() throws NotConnectedException, InterruptedException, NoResponseException, XMPPErrorException { - HashMap affiliations = new HashMap<>(); + Map affiliations = new HashMap<>(); affiliations.put(connection.getUser(), MUCLightAffiliation.none); MUCLightChangeAffiliationsIQ changeAffiliationsIQ = new MUCLightChangeAffiliationsIQ(room, affiliations); @@ -402,7 +403,7 @@ public class MultiUserChatLight { * @throws NotConnectedException if the XMPP connection is not connected. * @throws InterruptedException if the calling thread was interrupted. */ - public HashMap getAffiliations(String version) + public Map getAffiliations(String version) throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException { MUCLightGetAffiliationsIQ mucLightGetAffiliationsIQ = new MUCLightGetAffiliationsIQ(room, version); @@ -421,7 +422,7 @@ public class MultiUserChatLight { * @throws NotConnectedException if the XMPP connection is not connected. * @throws InterruptedException if the calling thread was interrupted. */ - public HashMap getAffiliations() + public Map getAffiliations() throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException { return getAffiliations(null); } @@ -435,7 +436,7 @@ public class MultiUserChatLight { * @throws NotConnectedException if the XMPP connection is not connected. * @throws InterruptedException if the calling thread was interrupted. */ - public void changeAffiliations(HashMap affiliations) + public void changeAffiliations(Map affiliations) throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException { MUCLightChangeAffiliationsIQ changeAffiliationsIQ = new MUCLightChangeAffiliationsIQ(room, affiliations); connection.sendIqRequestAndWaitForResponse(changeAffiliationsIQ); @@ -498,7 +499,7 @@ public class MultiUserChatLight { * @throws NotConnectedException if the XMPP connection is not connected. * @throws InterruptedException if the calling thread was interrupted. */ - public void setRoomConfigs(HashMap customConfigs) + public void setRoomConfigs(Map customConfigs) throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException { setRoomConfigs(null, customConfigs); } @@ -513,7 +514,7 @@ public class MultiUserChatLight { * @throws NotConnectedException if the XMPP connection is not connected. * @throws InterruptedException if the calling thread was interrupted. */ - public void setRoomConfigs(String roomName, HashMap customConfigs) + public void setRoomConfigs(String roomName, Map customConfigs) throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException { MUCLightSetConfigsIQ mucLightSetConfigIQ = new MUCLightSetConfigsIQ(room, roomName, customConfigs); connection.sendIqRequestAndWaitForResponse(mucLightSetConfigIQ); diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MultiUserChatLightManager.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MultiUserChatLightManager.java index d153d499d..58f030499 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MultiUserChatLightManager.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/MultiUserChatLightManager.java @@ -274,7 +274,7 @@ public final class MultiUserChatLightManager extends Manager { sendBlockRooms(mucLightService, rooms); } - private void sendBlockRooms(DomainBareJid mucLightService, HashMap rooms) + private void sendBlockRooms(DomainBareJid mucLightService, Map rooms) throws NoResponseException, XMPPErrorException, InterruptedException, NotConnectedException { MUCLightBlockingIQ mucLightBlockingIQ = new MUCLightBlockingIQ(rooms, null); mucLightBlockingIQ.setType(IQ.Type.set); @@ -318,7 +318,7 @@ public final class MultiUserChatLightManager extends Manager { sendBlockUsers(mucLightService, users); } - private void sendBlockUsers(DomainBareJid mucLightService, HashMap users) + private void sendBlockUsers(DomainBareJid mucLightService, Map users) throws NoResponseException, XMPPErrorException, InterruptedException, NotConnectedException { MUCLightBlockingIQ mucLightBlockingIQ = new MUCLightBlockingIQ(null, users); mucLightBlockingIQ.setType(IQ.Type.set); @@ -362,7 +362,7 @@ public final class MultiUserChatLightManager extends Manager { sendUnblockRooms(mucLightService, rooms); } - private void sendUnblockRooms(DomainBareJid mucLightService, HashMap rooms) + private void sendUnblockRooms(DomainBareJid mucLightService, Map rooms) throws NoResponseException, XMPPErrorException, InterruptedException, NotConnectedException { MUCLightBlockingIQ mucLightBlockingIQ = new MUCLightBlockingIQ(rooms, null); mucLightBlockingIQ.setType(IQ.Type.set); @@ -406,7 +406,7 @@ public final class MultiUserChatLightManager extends Manager { sendUnblockUsers(mucLightService, users); } - private void sendUnblockUsers(DomainBareJid mucLightService, HashMap users) + private void sendUnblockUsers(DomainBareJid mucLightService, Map users) throws NoResponseException, XMPPErrorException, InterruptedException, NotConnectedException { MUCLightBlockingIQ mucLightBlockingIQ = new MUCLightBlockingIQ(null, users); mucLightBlockingIQ.setType(IQ.Type.set); diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightAffiliationsIQ.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightAffiliationsIQ.java index e1e8fcdf4..047c7af50 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightAffiliationsIQ.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightAffiliationsIQ.java @@ -16,7 +16,6 @@ */ package org.jivesoftware.smackx.muclight.element; -import java.util.HashMap; import java.util.Iterator; import java.util.Map; @@ -40,7 +39,7 @@ public class MUCLightAffiliationsIQ extends IQ { public static final String NAMESPACE = MultiUserChatLight.NAMESPACE + MultiUserChatLight.AFFILIATIONS; private final String version; - private HashMap affiliations; + private Map affiliations; /** * MUC Light affiliations response IQ constructor. @@ -49,7 +48,7 @@ public class MUCLightAffiliationsIQ extends IQ { * @param affiliations TODO javadoc me please */ @SuppressWarnings("this-escape") - public MUCLightAffiliationsIQ(String version, HashMap affiliations) { + public MUCLightAffiliationsIQ(String version, Map affiliations) { super(ELEMENT, NAMESPACE); this.version = version; this.affiliations = affiliations; @@ -83,7 +82,7 @@ public class MUCLightAffiliationsIQ extends IQ { * * @return the affiliations of the room */ - public HashMap getAffiliations() { + public Map getAffiliations() { return affiliations; } diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightBlockingIQ.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightBlockingIQ.java index f3334b651..fa6264ff0 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightBlockingIQ.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightBlockingIQ.java @@ -16,7 +16,6 @@ */ package org.jivesoftware.smackx.muclight.element; -import java.util.HashMap; import java.util.Iterator; import java.util.Map; @@ -38,8 +37,8 @@ public class MUCLightBlockingIQ extends IQ { public static final String ELEMENT = QUERY_ELEMENT; public static final String NAMESPACE = MultiUserChatLight.NAMESPACE + MultiUserChatLight.BLOCKING; - private final HashMap rooms; - private final HashMap users; + private final Map rooms; + private final Map users; /** * MUC Light blocking IQ constructor. @@ -47,7 +46,7 @@ public class MUCLightBlockingIQ extends IQ { * @param rooms TODO javadoc me please * @param users TODO javadoc me please */ - public MUCLightBlockingIQ(HashMap rooms, HashMap users) { + public MUCLightBlockingIQ(Map rooms, Map users) { super(ELEMENT, NAMESPACE); this.rooms = rooms; this.users = users; @@ -58,7 +57,7 @@ public class MUCLightBlockingIQ extends IQ { * * @return the rooms JIDs with booleans (true if allow, false if deny) */ - public HashMap getRooms() { + public Map getRooms() { return rooms; } @@ -67,7 +66,7 @@ public class MUCLightBlockingIQ extends IQ { * * @return the users JIDs with booleans (true if allow, false if deny) */ - public HashMap getUsers() { + public Map getUsers() { return users; } @@ -86,7 +85,7 @@ public class MUCLightBlockingIQ extends IQ { return xml; } - private static void parseBlocking(IQChildElementXmlStringBuilder xml, HashMap map, boolean isRoom) { + private static void parseBlocking(IQChildElementXmlStringBuilder xml, Map map, boolean isRoom) { Iterator> it = map.entrySet().iterator(); while (it.hasNext()) { Map.Entry pair = it.next(); diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightChangeAffiliationsIQ.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightChangeAffiliationsIQ.java index 2898ea8b6..e472c84e1 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightChangeAffiliationsIQ.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightChangeAffiliationsIQ.java @@ -16,7 +16,6 @@ */ package org.jivesoftware.smackx.muclight.element; -import java.util.HashMap; import java.util.Iterator; import java.util.Map; @@ -39,7 +38,7 @@ public class MUCLightChangeAffiliationsIQ extends IQ { public static final String ELEMENT = QUERY_ELEMENT; public static final String NAMESPACE = MultiUserChatLight.NAMESPACE + MultiUserChatLight.AFFILIATIONS; - private HashMap affiliations; + private Map affiliations; /** * MUCLight change affiliations IQ constructor. @@ -48,7 +47,7 @@ public class MUCLightChangeAffiliationsIQ extends IQ { * @param affiliations TODO javadoc me please */ @SuppressWarnings("this-escape") - public MUCLightChangeAffiliationsIQ(Jid room, HashMap affiliations) { + public MUCLightChangeAffiliationsIQ(Jid room, Map affiliations) { super(ELEMENT, NAMESPACE); this.setType(Type.set); this.setTo(room); @@ -60,7 +59,7 @@ public class MUCLightChangeAffiliationsIQ extends IQ { * * @return the affiliations */ - public HashMap getAffiliations() { + public Map getAffiliations() { return affiliations; } diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightCreateIQ.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightCreateIQ.java index afd8efd90..ea0db3b21 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightCreateIQ.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightCreateIQ.java @@ -18,6 +18,7 @@ package org.jivesoftware.smackx.muclight.element; import java.util.HashMap; import java.util.List; +import java.util.Map; import org.jivesoftware.smack.packet.IQ; @@ -42,7 +43,7 @@ public class MUCLightCreateIQ extends IQ { public static final String NAMESPACE = MultiUserChatLight.NAMESPACE + MultiUserChatLight.CREATE; private MUCLightRoomConfiguration configuration; - private final HashMap occupants; + private final Map occupants; /** * MUCLight create IQ constructor. @@ -54,7 +55,7 @@ public class MUCLightCreateIQ extends IQ { * @param occupants TODO javadoc me please */ @SuppressWarnings("this-escape") - public MUCLightCreateIQ(EntityJid room, String roomName, String subject, HashMap customConfigs, + public MUCLightCreateIQ(EntityJid room, String roomName, String subject, Map customConfigs, List occupants) { super(ELEMENT, NAMESPACE); this.configuration = new MUCLightRoomConfiguration(roomName, subject, customConfigs); @@ -93,7 +94,7 @@ public class MUCLightCreateIQ extends IQ { * * @return the room occupants */ - public HashMap getOccupants() { + public Map getOccupants() { return occupants; } diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightElements.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightElements.java index 33861b29e..27dcbd2e7 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightElements.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightElements.java @@ -16,7 +16,6 @@ */ package org.jivesoftware.smackx.muclight.element; -import java.util.HashMap; import java.util.Iterator; import java.util.Map; @@ -48,11 +47,11 @@ public abstract class MUCLightElements { public static final String NAMESPACE = MultiUserChatLight.NAMESPACE + MultiUserChatLight.AFFILIATIONS; public static final QName QNAME = new QName(NAMESPACE, ELEMENT); - private final HashMap affiliations; + private final Map affiliations; private final String prevVersion; private final String version; - public AffiliationsChangeExtension(HashMap affiliations, String prevVersion, + public AffiliationsChangeExtension(Map affiliations, String prevVersion, String version) { this.affiliations = affiliations; this.prevVersion = prevVersion; @@ -74,7 +73,7 @@ public abstract class MUCLightElements { * * @return the affiliations */ - public HashMap getAffiliations() { + public Map getAffiliations() { return affiliations; } @@ -135,7 +134,7 @@ public abstract class MUCLightElements { private final String version; private final String roomName; private final String subject; - private final HashMap customConfigs; + private final Map customConfigs; /** * Configurations change extension constructor. @@ -147,7 +146,7 @@ public abstract class MUCLightElements { * @param customConfigs TODO javadoc me please */ public ConfigurationsChangeExtension(String prevVersion, String version, String roomName, String subject, - HashMap customConfigs) { + Map customConfigs) { this.prevVersion = prevVersion; this.version = version; this.roomName = roomName; @@ -206,7 +205,7 @@ public abstract class MUCLightElements { * * @return the room custom configurations */ - public HashMap getCustomConfigs() { + public Map getCustomConfigs() { return customConfigs; } @@ -287,14 +286,14 @@ public abstract class MUCLightElements { */ public static class OccupantsElement implements Element { - private HashMap occupants; + private Map occupants; /** * Occupants element constructor. * * @param occupants TODO javadoc me please */ - public OccupantsElement(HashMap occupants) { + public OccupantsElement(Map occupants) { this.occupants = occupants; } diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightInfoIQ.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightInfoIQ.java index 42a2b9308..ef33d4b77 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightInfoIQ.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightInfoIQ.java @@ -16,7 +16,7 @@ */ package org.jivesoftware.smackx.muclight.element; -import java.util.HashMap; +import java.util.Map; import org.jivesoftware.smack.packet.IQ; @@ -41,7 +41,7 @@ public class MUCLightInfoIQ extends IQ { private final String version; private final MUCLightRoomConfiguration configuration; - private final HashMap occupants; + private final Map occupants; /** * MUCLight info response IQ constructor. @@ -51,7 +51,7 @@ public class MUCLightInfoIQ extends IQ { * @param occupants TODO javadoc me please */ public MUCLightInfoIQ(String version, MUCLightRoomConfiguration configuration, - HashMap occupants) { + Map occupants) { super(ELEMENT, NAMESPACE); this.version = version; this.configuration = configuration; @@ -90,7 +90,7 @@ public class MUCLightInfoIQ extends IQ { * * @return the occupants of the room */ - public HashMap getOccupants() { + public Map getOccupants() { return occupants; } diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightSetConfigsIQ.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightSetConfigsIQ.java index 6ab25a9ed..3e332194a 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightSetConfigsIQ.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/element/MUCLightSetConfigsIQ.java @@ -16,7 +16,6 @@ */ package org.jivesoftware.smackx.muclight.element; -import java.util.HashMap; import java.util.Iterator; import java.util.Map; @@ -39,7 +38,7 @@ public class MUCLightSetConfigsIQ extends IQ { private String roomName; private String subject; - private HashMap customConfigs; + private Map customConfigs; /** * MUC Light set configuration IQ constructor. @@ -50,7 +49,7 @@ public class MUCLightSetConfigsIQ extends IQ { * @param customConfigs TODO javadoc me please */ @SuppressWarnings("this-escape") - public MUCLightSetConfigsIQ(Jid roomJid, String roomName, String subject, HashMap customConfigs) { + public MUCLightSetConfigsIQ(Jid roomJid, String roomName, String subject, Map customConfigs) { super(ELEMENT, NAMESPACE); this.roomName = roomName; this.subject = subject; @@ -66,7 +65,7 @@ public class MUCLightSetConfigsIQ extends IQ { * @param roomName TODO javadoc me please * @param customConfigs TODO javadoc me please */ - public MUCLightSetConfigsIQ(Jid roomJid, String roomName, HashMap customConfigs) { + public MUCLightSetConfigsIQ(Jid roomJid, String roomName, Map customConfigs) { this(roomJid, roomName, null, customConfigs); } diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/provider/MUCLightBlockingIQProvider.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/provider/MUCLightBlockingIQProvider.java index b89dba5c8..1412b2900 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/provider/MUCLightBlockingIQProvider.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/provider/MUCLightBlockingIQProvider.java @@ -18,6 +18,7 @@ package org.jivesoftware.smackx.muclight.provider; import java.io.IOException; import java.util.HashMap; +import java.util.Map; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.IqData; @@ -42,8 +43,8 @@ public class MUCLightBlockingIQProvider extends IqProvider { @Override public MUCLightBlockingIQ parse(XmlPullParser parser, int initialDepth, IqData iqData, XmlEnvironment xmlEnvironment) throws XmlPullParserException, IOException { - HashMap rooms = null; - HashMap users = null; + Map rooms = null; + Map users = null; outerloop: while (true) { XmlPullParser.Event eventType = parser.next(); @@ -70,7 +71,7 @@ public class MUCLightBlockingIQProvider extends IqProvider { return mucLightBlockingIQ; } - private static HashMap parseBlocking(XmlPullParser parser, HashMap map) + private static Map parseBlocking(XmlPullParser parser, Map map) throws XmppStringprepException, XmlPullParserException, IOException { if (map == null) { map = new HashMap<>(); diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/provider/MUCLightInfoIQProvider.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/provider/MUCLightInfoIQProvider.java index 54d0a4218..50d30bca4 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/provider/MUCLightInfoIQProvider.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/muclight/provider/MUCLightInfoIQProvider.java @@ -18,6 +18,7 @@ package org.jivesoftware.smackx.muclight.provider; import java.io.IOException; import java.util.HashMap; +import java.util.Map; import org.jivesoftware.smack.packet.IqData; import org.jivesoftware.smack.packet.XmlEnvironment; @@ -45,8 +46,8 @@ public class MUCLightInfoIQProvider extends IqProvider { String version = null; String roomName = null; String subject = null; - HashMap customConfigs = null; - HashMap occupants = new HashMap<>(); + Map customConfigs = null; + Map occupants = new HashMap<>(); outerloop: while (true) { XmlPullParser.Event eventType = parser.next(); @@ -97,8 +98,8 @@ public class MUCLightInfoIQProvider extends IqProvider { return new MUCLightInfoIQ(version, new MUCLightRoomConfiguration(roomName, subject, customConfigs), occupants); } - private static HashMap iterateOccupants(XmlPullParser parser) throws XmlPullParserException, IOException { - HashMap occupants = new HashMap<>(); + private static Map iterateOccupants(XmlPullParser parser) throws XmlPullParserException, IOException { + Map occupants = new HashMap<>(); int depth = parser.getDepth(); outerloop: while (true) { diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/push_notifications/PushNotificationsManager.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/push_notifications/PushNotificationsManager.java index ff62d96eb..8615b4759 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/push_notifications/PushNotificationsManager.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/push_notifications/PushNotificationsManager.java @@ -16,7 +16,6 @@ */ package org.jivesoftware.smackx.push_notifications; -import java.util.HashMap; import java.util.Map; import java.util.WeakHashMap; @@ -122,7 +121,7 @@ public final class PushNotificationsManager extends Manager { * @throws NotConnectedException if the XMPP connection is not connected. * @throws InterruptedException if the calling thread was interrupted. */ - public boolean enable(Jid pushJid, String node, HashMap publishOptions) + public boolean enable(Jid pushJid, String node, Map publishOptions) throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException { EnablePushNotificationsIQ enablePushNotificationsIQ = new EnablePushNotificationsIQ(pushJid, node, publishOptions); diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/push_notifications/element/EnablePushNotificationsIQ.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/push_notifications/element/EnablePushNotificationsIQ.java index 643de425a..c6f8199b4 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/push_notifications/element/EnablePushNotificationsIQ.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/push_notifications/element/EnablePushNotificationsIQ.java @@ -16,7 +16,6 @@ */ package org.jivesoftware.smackx.push_notifications.element; -import java.util.HashMap; import java.util.Iterator; import java.util.Map; @@ -51,10 +50,10 @@ public class EnablePushNotificationsIQ extends IQ { private final Jid jid; private final String node; - private final HashMap publishOptions; + private final Map publishOptions; @SuppressWarnings("this-escape") - public EnablePushNotificationsIQ(Jid jid, String node, HashMap publishOptions) { + public EnablePushNotificationsIQ(Jid jid, String node, Map publishOptions) { super(ELEMENT, NAMESPACE); this.jid = jid; this.node = node; @@ -89,7 +88,7 @@ public class EnablePushNotificationsIQ extends IQ { * * @return the publish options */ - public HashMap getPublishOptions() { + public Map getPublishOptions() { return publishOptions; } diff --git a/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightAffiliationsChangeExtensionTest.java b/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightAffiliationsChangeExtensionTest.java index a07577748..ab9e53750 100644 --- a/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightAffiliationsChangeExtensionTest.java +++ b/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightAffiliationsChangeExtensionTest.java @@ -18,7 +18,7 @@ package org.jivesoftware.smackx.muclight; import static org.junit.jupiter.api.Assertions.assertEquals; -import java.util.HashMap; +import java.util.Map; import org.jivesoftware.smack.packet.Message; import org.jivesoftware.smack.util.PacketParserUtils; @@ -55,7 +55,7 @@ public class MUCLightAffiliationsChangeExtensionTest { AffiliationsChangeExtension affiliationsChangeExtension = AffiliationsChangeExtension .from(changeAffiliationsMessage); - HashMap affiliations = affiliationsChangeExtension.getAffiliations(); + Map affiliations = affiliationsChangeExtension.getAffiliations(); assertEquals(affiliations.size(), 3); assertEquals(affiliations.get(JidCreate.from("sarasa2@shakespeare.lit")), MUCLightAffiliation.owner); assertEquals(affiliations.get(JidCreate.from("sarasa1@shakespeare.lit")), MUCLightAffiliation.member); @@ -68,7 +68,7 @@ public class MUCLightAffiliationsChangeExtensionTest { AffiliationsChangeExtension affiliationsChangeExtension = AffiliationsChangeExtension .from(changeAffiliationsMessage); - HashMap affiliations = affiliationsChangeExtension.getAffiliations(); + Map affiliations = affiliationsChangeExtension.getAffiliations(); assertEquals(affiliations.size(), 2); assertEquals(affiliations.get(JidCreate.from("sarasa1@shakespeare.lit")), MUCLightAffiliation.member); assertEquals(affiliations.get(JidCreate.from("sarasa3@shakespeare.lit")), MUCLightAffiliation.none); @@ -83,7 +83,7 @@ public class MUCLightAffiliationsChangeExtensionTest { AffiliationsChangeExtension affiliationsChangeExtension = AffiliationsChangeExtension .from(changeAffiliationsMessage); - HashMap affiliations = affiliationsChangeExtension.getAffiliations(); + Map affiliations = affiliationsChangeExtension.getAffiliations(); assertEquals(affiliations.size(), 2); assertEquals(affiliations.get(JidCreate.from("sarasa2@shakespeare.lit")), MUCLightAffiliation.owner); assertEquals(affiliations.get(JidCreate.from("sarasa1@shakespeare.lit")), MUCLightAffiliation.member); diff --git a/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightChangeAffiliationsIQTest.java b/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightChangeAffiliationsIQTest.java index efbb22da7..ca0e1e4cb 100644 --- a/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightChangeAffiliationsIQTest.java +++ b/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightChangeAffiliationsIQTest.java @@ -19,6 +19,7 @@ package org.jivesoftware.smackx.muclight; import static org.junit.jupiter.api.Assertions.assertEquals; import java.util.HashMap; +import java.util.Map; import org.jivesoftware.smack.packet.IQ; @@ -32,7 +33,7 @@ public class MUCLightChangeAffiliationsIQTest { @Test public void checkChangeAffiliationsMUCLightStanza() throws Exception { - HashMap affiliations = new HashMap<>(); + Map affiliations = new HashMap<>(); affiliations.put(JidCreate.from("sarasa2@shakespeare.lit"), MUCLightAffiliation.owner); affiliations.put(JidCreate.from("sarasa1@shakespeare.lit"), MUCLightAffiliation.member); affiliations.put(JidCreate.from("sarasa3@shakespeare.lit"), MUCLightAffiliation.none); @@ -44,7 +45,7 @@ public class MUCLightChangeAffiliationsIQTest { assertEquals(mucLightChangeAffiliationsIQ.getTo(), "coven@muclight.shakespeare.lit"); assertEquals(mucLightChangeAffiliationsIQ.getType(), IQ.Type.set); - HashMap iqAffiliations = mucLightChangeAffiliationsIQ.getAffiliations(); + Map iqAffiliations = mucLightChangeAffiliationsIQ.getAffiliations(); assertEquals(iqAffiliations.get(JidCreate.from("sarasa1@shakespeare.lit")), MUCLightAffiliation.member); assertEquals(iqAffiliations.get(JidCreate.from("sarasa2@shakespeare.lit")), MUCLightAffiliation.owner); assertEquals(iqAffiliations.get(JidCreate.from("sarasa3@shakespeare.lit")), MUCLightAffiliation.none); diff --git a/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightCreateIQTest.java b/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightCreateIQTest.java index 216a2a494..4a92da24e 100644 --- a/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightCreateIQTest.java +++ b/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightCreateIQTest.java @@ -19,8 +19,8 @@ package org.jivesoftware.smackx.muclight; import static org.junit.jupiter.api.Assertions.assertEquals; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; +import java.util.Map; import org.jivesoftware.smackx.muclight.element.MUCLightCreateIQ; @@ -43,7 +43,7 @@ public class MUCLightCreateIQTest { assertEquals(mucLightCreateIQ.getConfiguration().getRoomName(), "test"); - HashMap iqOccupants = mucLightCreateIQ.getOccupants(); + Map iqOccupants = mucLightCreateIQ.getOccupants(); assertEquals(iqOccupants.get(JidCreate.from("charlie@test.com")), MUCLightAffiliation.member); assertEquals(iqOccupants.get(JidCreate.from("pep@test.com")), MUCLightAffiliation.member); } diff --git a/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightGetAffiliationsTest.java b/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightGetAffiliationsTest.java index 782171ae1..5504468ef 100644 --- a/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightGetAffiliationsTest.java +++ b/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightGetAffiliationsTest.java @@ -18,7 +18,7 @@ package org.jivesoftware.smackx.muclight; import static org.junit.jupiter.api.Assertions.assertEquals; -import java.util.HashMap; +import java.util.Map; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.StreamOpen; @@ -57,7 +57,7 @@ public class MUCLightGetAffiliationsTest { assertEquals("123456", mucLightAffiliationsIQ.getVersion()); - HashMap affiliations = mucLightAffiliationsIQ.getAffiliations(); + Map affiliations = mucLightAffiliationsIQ.getAffiliations(); assertEquals(3, affiliations.size()); assertEquals(MUCLightAffiliation.owner, affiliations.get(JidCreate.from("user1@shakespeare.lit"))); assertEquals(MUCLightAffiliation.member, affiliations.get(JidCreate.from("user2@shakespeare.lit"))); diff --git a/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightGetConfigsTest.java b/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightGetConfigsTest.java index 8c295ab0e..02826d8d1 100644 --- a/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightGetConfigsTest.java +++ b/smack-experimental/src/test/java/org/jivesoftware/smackx/muclight/MUCLightGetConfigsTest.java @@ -19,7 +19,7 @@ package org.jivesoftware.smackx.muclight; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertNull; -import java.util.HashMap; +import java.util.Map; import org.jivesoftware.smack.packet.IQ; import org.jivesoftware.smack.packet.StreamOpen; @@ -74,7 +74,7 @@ public class MUCLightGetConfigsTest { assertEquals("A Dark Cave", mucLightConfigurationIQ.getConfiguration().getRoomName()); assertNull(mucLightConfigurationIQ.getConfiguration().getSubject()); - HashMap customConfigs = mucLightConfigurationIQ.getConfiguration().getCustomConfigs(); + Map customConfigs = mucLightConfigurationIQ.getConfiguration().getCustomConfigs(); assertEquals("blue", customConfigs.get("color")); assertEquals("20", customConfigs.get("size")); } 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 4f4b0652b..568b98a14 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 @@ -85,7 +85,7 @@ public final class AdHocCommandManager extends Manager { */ private static final Map instances = new WeakHashMap<>(); - /** + /* * Register the listener for all the connection creations. When a new * connection is created a new AdHocCommandManager is also created and * related to that connection. @@ -463,7 +463,7 @@ public final class AdHocCommandManager extends Manager { private AdHocCommandData processAdHocCommandOfExistingSession(AdHocCommandData request, AdHocCommandHandler command, AdHocCommandDataBuilder responseBuilder) { // Check if the Session data has expired (default is 10 minutes) long creationStamp = command.getCreationDate(); - if (System.currentTimeMillis() - creationStamp > sessionTimeoutSecs * 1000) { + if (System.currentTimeMillis() - creationStamp > sessionTimeoutSecs * 1000L) { // Remove the expired session executingCommands.remove(command.getSessionId()); @@ -553,7 +553,7 @@ public final class AdHocCommandManager extends Manager { // after the time out, then once the user requests to // continue the execution he will received an // invalid session error and not a time out error. - if (currentTime - creationStamp > getSessionRemovalTimeoutSecs() * 1000) { + if (currentTime - creationStamp > getSessionRemovalTimeoutSecs() * 1000L) { // Remove the expired session it.remove(); } diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/jiveproperties/provider/JivePropertiesExtensionProvider.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/jiveproperties/provider/JivePropertiesExtensionProvider.java index 6d99c1637..8326e93e5 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/jiveproperties/provider/JivePropertiesExtensionProvider.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/jiveproperties/provider/JivePropertiesExtensionProvider.java @@ -46,7 +46,7 @@ public class JivePropertiesExtensionProvider extends ExtensionElementProvider - * Note that you have to explicitly enabled Java object deserialization with @{link + * Note that you have to explicitly enabled Java object deserialization with * {@link JivePropertiesManager#setJavaObjectEnabled(boolean)} * * @param parser the XML parser, positioned at the start of a properties sub-packet. 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 847651f21..fa87fdd37 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 @@ -143,7 +143,6 @@ public final class PrivacyListManager extends Manager { else { cachedActiveListName = activeListName; } - return; } }, iqResultReplyFilter); } @@ -165,7 +164,6 @@ public final class PrivacyListManager extends Manager { else { cachedDefaultListName = defaultListName; } - return; } }, iqResultReplyFilter); } 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 7465f6d2d..bd172be54 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 @@ -386,7 +386,7 @@ public abstract class FormField implements XmlElement { protected transient List extraXmlChildElements; /** - * Populate @{link {@link #extraXmlChildElements}}. Note that this method may be overridden by subclasses. + * Populate {@link #extraXmlChildElements}. Note that this method may be overridden by subclasses. */ protected void populateExtraXmlChildElements() { List values = getRawValues(); 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 00e721e5b..0c59cf73c 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 @@ -179,7 +179,7 @@ public class Socks5ByteStreamManagerTest { Socks5BytestreamManager byteStreamManager = Socks5BytestreamManager.getBytestreamManager(connection); byteStreamManager.setAnnounceLocalStreamHost(false); - /** + /* * create responses in the order they should be queried specified by the XEP-0065 * specification */ @@ -231,7 +231,7 @@ public class Socks5ByteStreamManagerTest { Socks5BytestreamManager byteStreamManager = Socks5BytestreamManager.getBytestreamManager(connection); byteStreamManager.setAnnounceLocalStreamHost(false); - /** + /* * create responses in the order they should be queried specified by the XEP-0065 * specification */ @@ -292,7 +292,7 @@ public class Socks5ByteStreamManagerTest { Socks5BytestreamManager byteStreamManager = Socks5BytestreamManager.getBytestreamManager(connection); byteStreamManager.setAnnounceLocalStreamHost(false); - /** + /* * create responses in the order they should be queried specified by the XEP-0065 * specification */ @@ -375,7 +375,7 @@ public class Socks5ByteStreamManagerTest { Socks5BytestreamManager byteStreamManager = Socks5BytestreamManager.getBytestreamManager(connection); byteStreamManager.setAnnounceLocalStreamHost(false); - /** + /* * create responses in the order they should be queried specified by the XEP-0065 * specification */ @@ -454,7 +454,7 @@ public class Socks5ByteStreamManagerTest { // TODO: It appears that it is not required to disable the local stream host for this unit test. byteStreamManager.setAnnounceLocalStreamHost(false); - /** + /* * create responses in the order they should be queried specified by the XEP-0065 * specification */ @@ -541,7 +541,7 @@ public class Socks5ByteStreamManagerTest { byteStreamManager.setAnnounceLocalStreamHost(false); byteStreamManager.setProxyConnectionTimeout(3000); - /** + /* * create responses in the order they should be queried specified by the XEP-0065 * specification */ @@ -634,7 +634,7 @@ public class Socks5ByteStreamManagerTest { Socks5BytestreamManager byteStreamManager = Socks5BytestreamManager.getBytestreamManager(connection); byteStreamManager.setAnnounceLocalStreamHost(false); - /** + /* * create responses in the order they should be queried specified by the XEP-0065 * specification */ @@ -760,7 +760,7 @@ public class Socks5ByteStreamManagerTest { // get Socks5ByteStreamManager for connection Socks5BytestreamManager byteStreamManager = Socks5BytestreamManager.getBytestreamManager(connection); - /** + /* * create responses in the order they should be queried specified by the XEP-0065 * specification */ diff --git a/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/Configuration.java b/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/Configuration.java index 889f9bb9c..fab1e00c9 100644 --- a/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/Configuration.java +++ b/smack-integration-test/src/main/java/org/igniterealtime/smack/inttest/Configuration.java @@ -28,6 +28,7 @@ import java.util.Collections; import java.util.HashMap; import java.util.HashSet; import java.util.List; +import java.util.Locale; import java.util.Map; import java.util.Properties; import java.util.Set; @@ -787,6 +788,6 @@ public final class Configuration { if (specification == null || specification.isBlank()) { return null; } - return specification.replaceAll("[\\s-]", "").toUpperCase(); + return specification.replaceAll("[\\s-]", "").toUpperCase(Locale.ROOT); } } diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadIntegrationTest.java index f68ab7b61..862a06af2 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/httpfileupload/HttpFileUploadIntegrationTest.java @@ -82,7 +82,7 @@ public class HttpFileUploadIntegrationTest extends AbstractSmackIntegrationTest URL getUrl = hfumOne.uploadFile(file, new UploadProgressListener() { @Override public void onUploadProgress(long uploadedBytes, long totalBytes) { - double progress = uploadedBytes / totalBytes; + double progress = uploadedBytes / ((double) totalBytes); LOGGER.fine("HTTP File Upload progress " + progress + "% (" + uploadedBytes + '/' + totalBytes + ')'); } }); diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/OmemoManagerSetupHelper.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/OmemoManagerSetupHelper.java index 1a8093d63..7fdf53165 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/OmemoManagerSetupHelper.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/omemo/OmemoManagerSetupHelper.java @@ -21,8 +21,8 @@ import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; import java.io.IOException; -import java.util.HashMap; import java.util.List; +import java.util.Map; import org.jivesoftware.smack.SmackException; import org.jivesoftware.smack.SmackException.NotConnectedException; @@ -54,7 +54,7 @@ public class OmemoManagerSetupHelper { } alice.requestDeviceListUpdateFor(bob.getOwnJid()); - HashMap fingerprints = alice.getActiveFingerprints(bob.getOwnJid()); + Map fingerprints = alice.getActiveFingerprints(bob.getOwnJid()); for (OmemoDevice device : fingerprints.keySet()) { OmemoFingerprint fingerprint = fingerprints.get(device); @@ -67,7 +67,7 @@ public class OmemoManagerSetupHelper { SmackException.NoResponseException, CannotEstablishOmemoSessionException, CorruptedOmemoKeyException, XMPPException.XMPPErrorException, PubSubException.NotALeafNodeException, IOException { alice.requestDeviceListUpdateFor(bob.getOwnJid()); - HashMap fps1 = alice.getActiveFingerprints(bob.getOwnJid()); + Map fps1 = alice.getActiveFingerprints(bob.getOwnJid()); assertFalse(fps1.isEmpty()); assertAllDevicesAreUndecided(alice, fps1); @@ -75,7 +75,7 @@ public class OmemoManagerSetupHelper { trustAllIdentities(alice, bob); - HashMap fps2 = alice.getActiveFingerprints(bob.getOwnJid()); + Map fps2 = alice.getActiveFingerprints(bob.getOwnJid()); assertEquals(fps1.size(), fps2.size()); assertTrue(Maps.difference(fps1, fps2).areEqual()); @@ -95,28 +95,28 @@ public class OmemoManagerSetupHelper { return manager; } - public static void assertAllDevicesAreUndecided(OmemoManager manager, HashMap devices) { + public static void assertAllDevicesAreUndecided(OmemoManager manager, Map devices) { for (OmemoDevice device : devices.keySet()) { // All fingerprints MUST be neither decided, nor trusted. assertFalse(manager.isDecidedOmemoIdentity(device, devices.get(device))); } } - public static void assertAllDevicesAreUntrusted(OmemoManager manager, HashMap devices) { + public static void assertAllDevicesAreUntrusted(OmemoManager manager, Map devices) { for (OmemoDevice device : devices.keySet()) { // All fingerprints MUST be neither decided, nor trusted. assertFalse(manager.isTrustedOmemoIdentity(device, devices.get(device))); } } - public static void assertAllDevicesAreDecided(OmemoManager manager, HashMap devices) { + public static void assertAllDevicesAreDecided(OmemoManager manager, Map devices) { for (OmemoDevice device : devices.keySet()) { // All fingerprints MUST be neither decided, nor trusted. assertTrue(manager.isDecidedOmemoIdentity(device, devices.get(device))); } } - public static void assertAllDevicesAreTrusted(OmemoManager manager, HashMap devices) { + public static void assertAllDevicesAreTrusted(OmemoManager manager, Map devices) { for (OmemoDevice device : devices.keySet()) { // All fingerprints MUST be neither decided, nor trusted. assertTrue(manager.isTrustedOmemoIdentity(device, devices.get(device))); diff --git a/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/SmackIntegrationTestFrameWorkTest.java b/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/SmackIntegrationTestFrameWorkTest.java index 48b827770..fbdfa8cef 100644 --- a/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/SmackIntegrationTestFrameWorkTest.java +++ b/smack-integration-test/src/test/java/org/igniterealtime/smack/inttest/SmackIntegrationTestFrameWorkTest.java @@ -31,26 +31,26 @@ import org.junit.jupiter.api.Test; public class SmackIntegrationTestFrameWorkTest { private static class ValidLowLevelList { - @SuppressWarnings("unused") + @SuppressWarnings({"unused", "MethodCanBeStatic"}) public void test(List connections) { } } private static class InvalidLowLevelList { - @SuppressWarnings("unused") + @SuppressWarnings({"unused", "MethodCanBeStatic"}) public void test(List connections, boolean invalid) { } } private static class ValidLowLevelVarargs { - @SuppressWarnings("unused") + @SuppressWarnings({"unused", "MethodCanBeStatic"}) public void test(AbstractXMPPConnection connectionOne, AbstractXMPPConnection connectionTwo, AbstractXMPPConnection connectionThree) { } } private static class InvalidLowLevelVarargs { - @SuppressWarnings("unused") + @SuppressWarnings({"unused", "MethodCanBeStatic"}) public void test(AbstractXMPPConnection connectionOne, Integer invalid, AbstractXMPPConnection connectionTwo, AbstractXMPPConnection connectionThree) { } @@ -97,7 +97,7 @@ public class SmackIntegrationTestFrameWorkTest { } private static class ValidUnconnectedConnectionSource { - @SuppressWarnings("unused") + @SuppressWarnings({"unused", "MethodCanBeStatic"}) public void test(AbstractSmackLowLevelIntegrationTest.UnconnectedConnectionSource source) { } } diff --git a/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/mediaimpl/JMFInit.java b/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/mediaimpl/JMFInit.java index d41cdcb5f..c86734cc2 100644 --- a/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/mediaimpl/JMFInit.java +++ b/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/mediaimpl/JMFInit.java @@ -43,7 +43,7 @@ public class JMFInit extends Frame implements Runnable { private boolean visible = false; - @SuppressWarnings("this-escape") + @SuppressWarnings({"this-escape", "DoNotCall"}) public JMFInit(String[] args, boolean visible) { super("Initializing JMF..."); diff --git a/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/mediaimpl/jspeex/AudioMediaSession.java b/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/mediaimpl/jspeex/AudioMediaSession.java index 162483cd7..2874327ca 100644 --- a/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/mediaimpl/jspeex/AudioMediaSession.java +++ b/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/mediaimpl/jspeex/AudioMediaSession.java @@ -76,12 +76,12 @@ public class AudioMediaSession extends JingleMediaSession implements MediaSessio public static MediaSession createSession(String localhost, int localPort, String remoteHost, int remotePort, MediaSessionListener eventHandler, int quality, boolean secure, boolean micOn) throws NoProcessorException, UnsupportedFormatException, IOException, GeneralSecurityException { SpeexFormat.setFramesPerPacket(1); - /** + /* * The master key. Hardcoded for now. */ byte[] masterKey = new byte[] {(byte) 0xE1, (byte) 0xF9, 0x7A, 0x0D, 0x3E, 0x01, (byte) 0x8B, (byte) 0xE0, (byte) 0xD6, 0x4F, (byte) 0xA3, 0x2C, 0x06, (byte) 0xDE, 0x41, 0x39}; - /** + /* * The master salt. Hardcoded for now. */ byte[] masterSalt = new byte[] {0x0E, (byte) 0xC6, 0x75, (byte) 0xAD, 0x49, (byte) 0x8A, (byte) 0xFE, (byte) 0xEB, (byte) 0xB6, (byte) 0x96, 0x0B, 0x3A, (byte) 0xAB, (byte) 0xE6}; diff --git a/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/STUNResolver.java b/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/STUNResolver.java index b0b010f81..7eb49df5e 100644 --- a/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/STUNResolver.java +++ b/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/STUNResolver.java @@ -23,6 +23,7 @@ import java.net.SocketException; import java.net.URL; import java.util.ArrayList; import java.util.Enumeration; +import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; @@ -135,7 +136,7 @@ public class STUNResolver extends TransportResolver { * @param stunConfigStream An InputStream with the configuration file. * @return A list of loaded servers */ - public ArrayList loadSTUNServers(java.io.InputStream stunConfigStream) { + public List loadSTUNServers(java.io.InputStream stunConfigStream) { ArrayList serversList = new ArrayList<>(); String serverName; int serverPort; @@ -211,7 +212,7 @@ public class STUNResolver extends TransportResolver { * * @return a list of services */ - public ArrayList loadSTUNServers() { + public List loadSTUNServers() { ArrayList serversList = new ArrayList<>(); // Load the STUN configuration @@ -248,7 +249,7 @@ public class STUNResolver extends TransportResolver { * * @return the best STUN server that can be used. */ - private static STUNService bestSTUNServer(ArrayList listServers) { + private static STUNService bestSTUNServer(List listServers) { if (listServers.isEmpty()) { return null; } else { diff --git a/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/TransportCandidate.java b/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/TransportCandidate.java index 103286862..a9f3f7f8a 100644 --- a/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/TransportCandidate.java +++ b/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/TransportCandidate.java @@ -17,13 +17,13 @@ package org.jivesoftware.smackx.jingleold.nat; import java.io.IOException; -import java.io.UnsupportedEncodingException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetAddress; import java.net.SocketException; import java.net.UnknownHostException; import java.nio.ByteBuffer; +import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.List; import java.util.Locale; @@ -661,21 +661,13 @@ public abstract class TransportCandidate { String local = id.substring(0, keySplitIndex) + ";" + localUser; String remote = id.substring(keySplitIndex) + ";" + remoteUser; - try { - if (session.getConnection().getUser().equals(session.getInitiator())) { - - this.send = local.getBytes("UTF-8"); - this.receive = remote.getBytes("UTF-8"); - } else { - this.receive = local.getBytes("UTF-8"); - this.send = remote.getBytes("UTF-8"); - } + if (session.getConnection().getUser().equals(session.getInitiator())) { + this.send = local.getBytes(StandardCharsets.UTF_8); + this.receive = remote.getBytes(StandardCharsets.UTF_8); + } else { + this.receive = local.getBytes(StandardCharsets.UTF_8); + this.send = remote.getBytes(StandardCharsets.UTF_8); } - catch (UnsupportedEncodingException e) { - LOGGER.log(Level.WARNING, "exception", e); - } - - } @SuppressWarnings("UnusedVariable") @@ -706,7 +698,7 @@ public abstract class TransportCandidate { long delay = 100 / replyTries; - String[] str = new String(packet.getData(), "UTF-8").split(";"); + String[] str = new String(packet.getData(), StandardCharsets.UTF_8).split(";"); String pass = str[0]; String[] address = str[1].split(":"); String ip = address[0]; @@ -714,13 +706,7 @@ public abstract class TransportCandidate { if (pass.equals(candidate.getPassword()) && !accept) { - byte[] cont = null; - try { - cont = (password + ";" + candidate.getIp() + ":" + candidate.getPort()).getBytes("UTF-8"); - } - catch (UnsupportedEncodingException e) { - LOGGER.log(Level.WARNING, "exception", e); - } + byte[] cont = (password + ";" + candidate.getIp() + ":" + candidate.getPort()).getBytes(StandardCharsets.UTF_8); packet.setData(cont); packet.setLength(cont.length); @@ -778,31 +764,24 @@ public abstract class TransportCandidate { DatagramListener listener = new DatagramListener() { @Override public boolean datagramReceived(DatagramPacket datagramPacket) { + LOGGER.fine("ECHO Received to: " + candidate.getIp() + ":" + candidate.getPort() + " data: " + new String(datagramPacket.getData(), StandardCharsets.UTF_8)); + String[] str = new String(datagramPacket.getData(), StandardCharsets.UTF_8).split(";"); + String pass = str[0]; + String[] addr = str[1].split(":"); + String ip = addr[0]; + String pt = addr[1]; - try { - LOGGER.fine("ECHO Received to: " + candidate.getIp() + ":" + candidate.getPort() + " data: " + new String(datagramPacket.getData(), "UTF-8")); - String[] str = new String(datagramPacket.getData(), "UTF-8").split(";"); - String pass = str[0]; - String[] addr = str[1].split(":"); - String ip = addr[0]; - String pt = addr[1]; - - // CHECKSTYLE:OFF - if (pass.equals(password) - && transportCandidate.getIp().indexOf(ip) != -1 - && transportCandidate.getPort() == Integer.parseInt(pt)) { - // CHECKSTYLE:ON - LOGGER.fine("ECHO OK: " + candidate.getIp() + ":" + candidate.getPort() + " <-> " + transportCandidate.getIp() + ":" + transportCandidate.getPort()); - TestResult testResult = new TestResult(); - testResult.setResult(true); - ended = true; - fireTestResult(testResult, transportCandidate); - return true; - } - - } - catch (UnsupportedEncodingException e) { - LOGGER.log(Level.WARNING, "exception", e); + // CHECKSTYLE:OFF + if (pass.equals(password) + && transportCandidate.getIp().indexOf(ip) != -1 + && transportCandidate.getPort() == Integer.parseInt(pt)) { + // CHECKSTYLE:ON + LOGGER.fine("ECHO OK: " + candidate.getIp() + ":" + candidate.getPort() + " <-> " + transportCandidate.getIp() + ":" + transportCandidate.getPort()); + TestResult testResult = new TestResult(); + testResult.setResult(true); + ended = true; + fireTestResult(testResult, transportCandidate); + return true; } LOGGER.fine("ECHO Wrong Data: " + datagramPacket.getAddress().getHostAddress() + ":" + datagramPacket.getPort()); @@ -812,13 +791,7 @@ public abstract class TransportCandidate { addListener(listener); - byte[] content = null; - try { - content = new String(password + ";" + getIp() + ":" + getPort()).getBytes("UTF-8"); - } - catch (UnsupportedEncodingException e) { - LOGGER.log(Level.WARNING, "exception", e); - } + byte[] content = new String(password + ";" + getIp() + ":" + getPort()).getBytes(StandardCharsets.UTF_8); DatagramPacket packet = new DatagramPacket(content, content.length); diff --git a/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/TransportNegotiator.java b/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/TransportNegotiator.java index 73bf75e9c..c61ffd46f 100644 --- a/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/TransportNegotiator.java +++ b/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/TransportNegotiator.java @@ -311,7 +311,7 @@ public abstract class TransportNegotiator extends JingleNegotiator { // Sleep for some time, waiting for the candidates checks int totalTime = CANDIDATES_ACCEPT_PERIOD + TransportResolver.CHECK_TIMEOUT; - int tries = (int) Math.ceil(totalTime / 1000); + int tries = (int) Math.ceil(totalTime / 1000.0); for (int i = 0; i < tries - 1; i++) { try { @@ -478,7 +478,7 @@ public abstract class TransportNegotiator extends JingleNegotiator { * * @return The list of valid (ie, already checked) remote candidates. */ - final ArrayList getValidRemoteCandidatesList() { + final List getValidRemoteCandidatesList() { synchronized (validRemoteCandidates) { return new ArrayList<>(validRemoteCandidates); } @@ -872,7 +872,7 @@ public abstract class TransportNegotiator extends JingleNegotiator { @Override public TransportCandidate getBestRemoteCandidate() { // Hopefully, we only have one validRemoteCandidate - ArrayList cands = getValidRemoteCandidatesList(); + List cands = getValidRemoteCandidatesList(); if (!cands.isEmpty()) { LOGGER.fine("RAW CAND"); return cands.get(0); @@ -930,7 +930,7 @@ public abstract class TransportNegotiator extends JingleNegotiator { public TransportCandidate getBestRemoteCandidate() { ICECandidate result = null; - ArrayList cands = getValidRemoteCandidatesList(); + List cands = getValidRemoteCandidatesList(); if (!cands.isEmpty()) { int highest = -1; ICECandidate chose = null; diff --git a/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/TransportResolver.java b/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/TransportResolver.java index b48545292..9393dd1c3 100644 --- a/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/TransportResolver.java +++ b/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/nat/TransportResolver.java @@ -210,7 +210,7 @@ public abstract class TransportResolver { * * @return the list of listeners */ - public ArrayList getListenersList() { + public List getListenersList() { synchronized (listeners) { return new ArrayList<>(listeners); } diff --git a/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/packet/JingleContentDescription.java b/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/packet/JingleContentDescription.java index fc65a4435..53eee1d8a 100644 --- a/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/packet/JingleContentDescription.java +++ b/smack-jingle-old/src/main/java/org/jivesoftware/smackx/jingleold/packet/JingleContentDescription.java @@ -105,7 +105,7 @@ public abstract class JingleContentDescription implements ExtensionElement { * * @return a list for the audio payloads in the packet. */ - public ArrayList getJinglePayloadTypesList() { + public List getJinglePayloadTypesList() { synchronized (payloads) { return new ArrayList<>(payloads); } @@ -116,7 +116,7 @@ public abstract class JingleContentDescription implements ExtensionElement { * * @return a list of PayloadType.Audio */ - public ArrayList getAudioPayloadTypesList() { + public List getAudioPayloadTypesList() { ArrayList result = new ArrayList<>(); Iterator jinglePtsIter = getJinglePayloadTypes(); diff --git a/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/agent/AgentSession.java b/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/agent/AgentSession.java index 0767f7ea8..0cdf52f9d 100644 --- a/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/agent/AgentSession.java +++ b/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/agent/AgentSession.java @@ -349,15 +349,9 @@ public class AgentSession { new StanzaTypeFilter(Presence.class), FromMatchesFilter.create(workgroupJID)), presence); presence = collector.nextResultOrThrow(); - - // We can safely update this iv since we didn't get any error - this.online = online; } // Otherwise the user is going offline... else { - // Update this iv now since we don't care at this point of any error - this.online = online; - presence = connection.getStanzaFactory().buildPresenceStanza() .ofType(Presence.Type.unavailable) .to(workgroupJID) @@ -714,7 +708,7 @@ public class AgentSession { private void fireOfferRequestEvent(OfferRequestProvider.OfferRequestPacket requestPacket) { Offer offer = new Offer(this.connection, this, requestPacket.getUserID(), requestPacket.getUserJID(), this.getWorkgroupJID(), - new Date(new Date().getTime() + (requestPacket.getTimeout() * 1000)), + new Date(new Date().getTime() + (requestPacket.getTimeout() * 1000L)), requestPacket.getSessionID(), requestPacket.getMetaData(), requestPacket.getContent()); synchronized (offerListeners) { diff --git a/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/user/Workgroup.java b/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/user/Workgroup.java index ca65956e3..a9f7b400c 100644 --- a/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/user/Workgroup.java +++ b/smack-legacy/src/main/java/org/jivesoftware/smackx/workgroup/user/Workgroup.java @@ -137,7 +137,7 @@ public class Workgroup { } }); - /** + /* * Internal handling of an invitation. Receiving an invitation removes the user from the queue. */ MultiUserChatManager.getInstanceFor(connection).addInvitationListener( diff --git a/smack-omemo-signal/src/main/java/org/jivesoftware/smackx/omemo/signal/SignalOmemoKeyUtil.java b/smack-omemo-signal/src/main/java/org/jivesoftware/smackx/omemo/signal/SignalOmemoKeyUtil.java index 010eb65ed..c4e5a78d7 100644 --- a/smack-omemo-signal/src/main/java/org/jivesoftware/smackx/omemo/signal/SignalOmemoKeyUtil.java +++ b/smack-omemo-signal/src/main/java/org/jivesoftware/smackx/omemo/signal/SignalOmemoKeyUtil.java @@ -55,6 +55,7 @@ public class SignalOmemoKeyUtil extends OmemoKeyUtil generateOmemoPreKeys(int currentPreKeyId, int count) { List preKeyRecords = KeyHelper.generatePreKeys(currentPreKeyId, count); TreeMap map = new TreeMap<>(); diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/CachingOmemoStore.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/CachingOmemoStore.java index 766141b5c..f4c546bb3 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/CachingOmemoStore.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/CachingOmemoStore.java @@ -19,6 +19,7 @@ package org.jivesoftware.smackx.omemo; import java.io.IOException; import java.util.Date; import java.util.HashMap; +import java.util.Map; import java.util.SortedSet; import java.util.TreeMap; import java.util.TreeSet; @@ -268,8 +269,9 @@ public class CachingOmemoStore loadOmemoPreKeys(OmemoDevice userDevice) throws IOException { - TreeMap preKeys = getCache(userDevice).preKeys; + Map preKeys = getCache(userDevice).preKeys; if (preKeys.isEmpty() && persistent != null) { preKeys.putAll(persistent.loadOmemoPreKeys(userDevice)); @@ -293,8 +295,9 @@ public class CachingOmemoStore loadOmemoSignedPreKeys(OmemoDevice userDevice) throws IOException { - TreeMap sigPreKeys = getCache(userDevice).signedPreKeys; + Map sigPreKeys = getCache(userDevice).signedPreKeys; if (sigPreKeys.isEmpty() && persistent != null) { sigPreKeys.putAll(persistent.loadOmemoSignedPreKeys(userDevice)); @@ -341,7 +344,7 @@ public class CachingOmemoStore loadAllRawSessionsOf(OmemoDevice userDevice, BareJid contact) throws IOException { + public Map loadAllRawSessionsOf(OmemoDevice userDevice, BareJid contact) throws IOException { HashMap sessions = getCache(userDevice).sessions.get(contact); if (sessions == null) { sessions = new HashMap<>(); diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/FileBasedOmemoStore.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/FileBasedOmemoStore.java index 89faecafc..b05ffddb9 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/FileBasedOmemoStore.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/FileBasedOmemoStore.java @@ -200,6 +200,7 @@ public abstract class FileBasedOmemoStore loadOmemoPreKeys(OmemoDevice userDevice) throws IOException { File preKeyDirectory = hierarchy.getPreKeysDirectory(userDevice); TreeMap preKeys = new TreeMap<>(); @@ -240,6 +241,7 @@ public abstract class FileBasedOmemoStore loadOmemoSignedPreKeys(OmemoDevice userDevice) throws IOException { File signedPreKeysDirectory = hierarchy.getSignedPreKeysDirectory(userDevice); TreeMap signedPreKeys = new TreeMap<>(); @@ -296,6 +298,7 @@ public abstract class FileBasedOmemoStore loadAllRawSessionsOf(OmemoDevice userDevice, BareJid contact) throws IOException { File contactsDirectory = hierarchy.getContactsDir(userDevice, contact); HashMap sessions = new HashMap<>(); diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoManager.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoManager.java index 92889f14e..5745204ba 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoManager.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoManager.java @@ -25,6 +25,7 @@ import java.util.Arrays; import java.util.HashMap; import java.util.HashSet; import java.util.List; +import java.util.Map; import java.util.Random; import java.util.Set; import java.util.SortedSet; @@ -633,7 +634,7 @@ public final class OmemoManager extends Manager { * @throws SmackException.NoResponseException if there was no response from the remote entity. * @throws IOException if an I/O error occurred. */ - public synchronized HashMap getActiveFingerprints(BareJid contact) + public synchronized Map getActiveFingerprints(BareJid contact) throws SmackException.NotLoggedInException, CorruptedOmemoKeyException, CannotEstablishOmemoSessionException, SmackException.NotConnectedException, InterruptedException, SmackException.NoResponseException, IOException { @@ -641,7 +642,7 @@ public final class OmemoManager extends Manager { throw new SmackException.NotLoggedInException(); } - HashMap fingerprints = new HashMap<>(); + Map fingerprints = new HashMap<>(); OmemoCachedDeviceList deviceList = getOmemoService().getOmemoStoreBackend().loadCachedDeviceList(getOwnDevice(), contact); diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoMessage.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoMessage.java index e2eb8635a..9f13b13c2 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoMessage.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoMessage.java @@ -22,6 +22,7 @@ import static org.jivesoftware.smackx.omemo.util.OmemoConstants.OMEMO_NAMESPACE_ import java.util.HashMap; import java.util.HashSet; +import java.util.Map; import java.util.Set; import org.jivesoftware.smack.packet.Message; @@ -78,7 +79,7 @@ public class OmemoMessage { */ public static class Sent extends OmemoMessage { private final Set intendedDevices = new HashSet<>(); - private final HashMap skippedDevices = new HashMap<>(); + private final Map skippedDevices = new HashMap<>(); /** * Create a new outgoing OMEMO message. @@ -90,7 +91,7 @@ public class OmemoMessage { * @param skippedDevices devices which were skipped during encryption process because encryption * failed for some reason */ - Sent(OmemoElement element, byte[] key, byte[] iv, Set intendedDevices, HashMap skippedDevices) { + Sent(OmemoElement element, byte[] key, byte[] iv, Set intendedDevices, Map skippedDevices) { super(element, key, iv); this.intendedDevices.addAll(intendedDevices); this.skippedDevices.putAll(skippedDevices); @@ -110,7 +111,7 @@ public class OmemoMessage { * * @return map of skipped recipients and reasons for that. */ - public HashMap getSkippedDevices() { + public Map getSkippedDevices() { return skippedDevices; } diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoService.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoService.java index 3f70ad7da..4573a44ab 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoService.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoService.java @@ -30,6 +30,7 @@ import java.util.Date; import java.util.HashMap; import java.util.HashSet; import java.util.List; +import java.util.Map; import java.util.Random; import java.util.Set; import java.util.logging.Level; @@ -794,7 +795,7 @@ public abstract class OmemoService bundlesList = getOmemoStoreBackend().keyUtil().BUNDLE.bundles(bundleElement, contactsDevice); + Map bundlesList = getOmemoStoreBackend().keyUtil().BUNDLE.bundles(bundleElement, contactsDevice); int randomIndex = new Random().nextInt(bundlesList.size()); T_Bundle randomPreKeyBundle = new ArrayList<>(bundlesList.values()).get(randomIndex); diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoStore.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoStore.java index 59591f30d..65a4d09ec 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoStore.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/OmemoStore.java @@ -20,7 +20,6 @@ import static org.jivesoftware.smackx.omemo.util.OmemoConstants.PRE_KEY_COUNT_PE import java.io.IOException; import java.util.Date; -import java.util.HashMap; import java.util.Map; import java.util.SortedSet; import java.util.TreeMap; @@ -229,7 +228,7 @@ public abstract class OmemoStore signedPreKeys = loadOmemoSignedPreKeys(userDevice); + Map signedPreKeys = loadOmemoSignedPreKeys(userDevice); if (signedPreKeys.size() == 0) { changeSignedPreKey(userDevice); } @@ -239,7 +238,7 @@ public abstract class OmemoStore 0) { - TreeMap newKeys = generateOmemoPreKeys(startId + 1, newKeysCount); + Map newKeys = generateOmemoPreKeys(startId + 1, newKeysCount); storeOmemoPreKeys(userDevice, newKeys); } } @@ -417,6 +416,7 @@ public abstract class OmemoStore generateOmemoPreKeys(int startId, int count) { return keyUtil().generateOmemoPreKeys(startId, count); } @@ -451,7 +451,7 @@ public abstract class OmemoStore preKeyHashMap) throws IOException { + public void storeOmemoPreKeys(OmemoDevice userDevice, Map preKeyHashMap) throws IOException { for (Map.Entry entry : preKeyHashMap.entrySet()) { storeOmemoPreKey(userDevice, entry.getKey(), entry.getValue()); } @@ -474,6 +474,7 @@ public abstract class OmemoStore loadOmemoPreKeys(OmemoDevice userDevice) throws IOException; /** @@ -499,6 +500,8 @@ public abstract class OmemoStore loadOmemoSignedPreKeys(OmemoDevice userDevice) throws IOException; /** @@ -554,7 +557,7 @@ public abstract class OmemoStore loadAllRawSessionsOf(OmemoDevice userDevice, BareJid contact) throws IOException; + public abstract Map loadAllRawSessionsOf(OmemoDevice userDevice, BareJid contact) throws IOException; /** * Store a crypto-lib specific session to storage. diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoBundleElement.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoBundleElement.java index 217c27f6d..610e07515 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoBundleElement.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoBundleElement.java @@ -47,8 +47,8 @@ public abstract class OmemoBundleElement implements ExtensionElement { private byte[] signedPreKeySignature; private final String identityKeyB64; private byte[] identityKey; - private final HashMap preKeysB64; - private HashMap preKeys; + private final Map preKeysB64; + private Map preKeys; /** * Constructor to create a Bundle Element from base64 Strings. @@ -57,9 +57,9 @@ public abstract class OmemoBundleElement implements ExtensionElement { * @param signedPreKeyB64 base64 encoded signedPreKey * @param signedPreKeySigB64 base64 encoded signedPreKeySignature * @param identityKeyB64 base64 encoded identityKey - * @param preKeysB64 HashMap of base64 encoded preKeys + * @param preKeysB64 Map of base64 encoded preKeys */ - public OmemoBundleElement(int signedPreKeyId, String signedPreKeyB64, String signedPreKeySigB64, String identityKeyB64, HashMap preKeysB64) { + public OmemoBundleElement(int signedPreKeyId, String signedPreKeyB64, String signedPreKeySigB64, String identityKeyB64, Map preKeysB64) { if (signedPreKeyId < 0) { throw new IllegalArgumentException("signedPreKeyId MUST be greater than or equal to 0."); } @@ -81,9 +81,9 @@ public abstract class OmemoBundleElement implements ExtensionElement { * @param signedPreKey signedPreKey * @param signedPreKeySig signedPreKeySignature * @param identityKey identityKey - * @param preKeys HashMap of preKeys + * @param preKeys Map of preKeys */ - public OmemoBundleElement(int signedPreKeyId, byte[] signedPreKey, byte[] signedPreKeySig, byte[] identityKey, HashMap preKeys) { + public OmemoBundleElement(int signedPreKeyId, byte[] signedPreKey, byte[] signedPreKeySig, byte[] identityKey, Map preKeys) { this(signedPreKeyId, signedPreKey != null ? Base64.encodeToString(signedPreKey) : null, signedPreKeySig != null ? Base64.encodeToString(signedPreKeySig) : null, @@ -95,12 +95,12 @@ public abstract class OmemoBundleElement implements ExtensionElement { this.preKeys = preKeys; } - private static HashMap base64EncodePreKeys(HashMap preKeys) { + private static Map base64EncodePreKeys(Map preKeys) { if (preKeys == null) { return null; } - HashMap converted = new HashMap<>(); + Map converted = new HashMap<>(); for (Integer id : preKeys.keySet()) { converted.put(id, Base64.encodeToString(preKeys.get(id))); } @@ -155,12 +155,12 @@ public abstract class OmemoBundleElement implements ExtensionElement { } /** - * Return the HashMap of preKeys in the bundle. + * Return the Map of preKeys in the bundle. * The map uses the preKeys ids as key and the preKeys as value. * * @return preKeys Pre-Keys contained in the bundle */ - public HashMap getPreKeys() { + public Map getPreKeys() { if (preKeys == null) { preKeys = new HashMap<>(); for (int id : preKeysB64.keySet()) { diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoBundleElement_VAxolotl.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoBundleElement_VAxolotl.java index bcf616111..e3ae2d8aa 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoBundleElement_VAxolotl.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoBundleElement_VAxolotl.java @@ -18,7 +18,7 @@ package org.jivesoftware.smackx.omemo.element; import static org.jivesoftware.smackx.omemo.util.OmemoConstants.OMEMO_NAMESPACE_V_AXOLOTL; -import java.util.HashMap; +import java.util.Map; /** * OMEMO device bundle as described by the protocol. @@ -29,11 +29,11 @@ import java.util.HashMap; */ public class OmemoBundleElement_VAxolotl extends OmemoBundleElement { - public OmemoBundleElement_VAxolotl(int signedPreKeyId, String signedPreKeyB64, String signedPreKeySigB64, String identityKeyB64, HashMap preKeysB64) { + public OmemoBundleElement_VAxolotl(int signedPreKeyId, String signedPreKeyB64, String signedPreKeySigB64, String identityKeyB64, Map preKeysB64) { super(signedPreKeyId, signedPreKeyB64, signedPreKeySigB64, identityKeyB64, preKeysB64); } - public OmemoBundleElement_VAxolotl(int signedPreKeyId, byte[] signedPreKey, byte[] signedPreKeySig, byte[] identityKey, HashMap preKeys) { + public OmemoBundleElement_VAxolotl(int signedPreKeyId, byte[] signedPreKey, byte[] signedPreKeySig, byte[] identityKey, Map preKeys) { super(signedPreKeyId, signedPreKey, signedPreKeySig, identityKey, preKeys); } diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoHeaderElement.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoHeaderElement.java index 4270d8ec5..050adf033 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoHeaderElement.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/element/OmemoHeaderElement.java @@ -57,7 +57,7 @@ public abstract class OmemoHeaderElement implements XmlElement { return sid; } - public ArrayList getKeys() { + public List getKeys() { return new ArrayList<>(keys); } diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/CannotEstablishOmemoSessionException.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/CannotEstablishOmemoSessionException.java index 2d4e65513..161dbc38f 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/CannotEstablishOmemoSessionException.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/exceptions/CannotEstablishOmemoSessionException.java @@ -18,6 +18,7 @@ package org.jivesoftware.smackx.omemo.exceptions; import java.util.ArrayList; import java.util.HashMap; +import java.util.List; import java.util.Map; import org.jivesoftware.smackx.omemo.internal.OmemoDevice; @@ -32,8 +33,8 @@ import org.jxmpp.jid.BareJid; public class CannotEstablishOmemoSessionException extends Exception { private static final long serialVersionUID = 3165844730283295249L; - private final HashMap> failures = new HashMap<>(); - private final HashMap> successes = new HashMap<>(); + private final Map> failures = new HashMap<>(); + private final Map> successes = new HashMap<>(); public CannotEstablishOmemoSessionException(OmemoDevice failed, Throwable reason) { super(); @@ -41,7 +42,7 @@ public class CannotEstablishOmemoSessionException extends Exception { } public void addFailures(CannotEstablishOmemoSessionException otherFailures) { - for (Map.Entry> entry : otherFailures.getFailures().entrySet()) { + for (Map.Entry> entry : otherFailures.getFailures().entrySet()) { getFailsOfContact(entry.getKey()).putAll(entry.getValue()); } } @@ -50,16 +51,16 @@ public class CannotEstablishOmemoSessionException extends Exception { getSuccessesOfContact(success.getJid()).add(success); } - public HashMap> getFailures() { + public Map> getFailures() { return failures; } - public HashMap> getSuccesses() { + public Map> getSuccesses() { return successes; } - private HashMap getFailsOfContact(BareJid contact) { - HashMap h = failures.get(contact); + private Map getFailsOfContact(BareJid contact) { + Map h = failures.get(contact); if (h == null) { h = new HashMap<>(); failures.put(contact, h); @@ -67,8 +68,8 @@ public class CannotEstablishOmemoSessionException extends Exception { return h; } - private ArrayList getSuccessesOfContact(BareJid contact) { - ArrayList suc = successes.get(contact); + private List getSuccessesOfContact(BareJid contact) { + List suc = successes.get(contact); if (suc == null) { suc = new ArrayList<>(); successes.put(contact, suc); @@ -83,8 +84,8 @@ public class CannotEstablishOmemoSessionException extends Exception { * @return true if the exception requires to be thrown */ public boolean requiresThrowing() { - for (Map.Entry> entry : failures.entrySet()) { - ArrayList suc = successes.get(entry.getKey()); + for (Map.Entry> entry : failures.entrySet()) { + List suc = successes.get(entry.getKey()); if (suc == null || suc.isEmpty()) { return true; } diff --git a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/util/OmemoKeyUtil.java b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/util/OmemoKeyUtil.java index 607181552..39f9ace13 100644 --- a/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/util/OmemoKeyUtil.java +++ b/smack-omemo/src/main/java/org/jivesoftware/smackx/omemo/util/OmemoKeyUtil.java @@ -119,8 +119,8 @@ public abstract class OmemoKeyUtil bundles(OmemoBundleElement bundle, OmemoDevice contact) throws CorruptedOmemoKeyException { - HashMap bundles = new HashMap<>(); + public Map bundles(OmemoBundleElement bundle, OmemoDevice contact) throws CorruptedOmemoKeyException { + Map bundles = new HashMap<>(); for (int deviceId : bundle.getPreKeys().keySet()) { try { bundles.put(deviceId, bundleFromOmemoBundle(bundle, contact, deviceId)); @@ -211,6 +211,8 @@ public abstract class OmemoKeyUtil generateOmemoPreKeys(int startId, int count); /** @@ -338,8 +340,8 @@ public abstract class OmemoKeyUtil preKeyPublicKeysForBundle(TreeMap preKeyHashMap) { - HashMap out = new HashMap<>(); + public Map preKeyPublicKeysForBundle(Map preKeyHashMap) { + Map out = new HashMap<>(); for (Map.Entry e : preKeyHashMap.entrySet()) { out.put(e.getKey(), preKeyForBundle(e.getValue())); } diff --git a/smack-omemo/src/test/java/org/jivesoftware/smackx/omemo/OmemoKeyUtilTest.java b/smack-omemo/src/test/java/org/jivesoftware/smackx/omemo/OmemoKeyUtilTest.java index fc071ac11..b0470a1e5 100644 --- a/smack-omemo/src/test/java/org/jivesoftware/smackx/omemo/OmemoKeyUtilTest.java +++ b/smack-omemo/src/test/java/org/jivesoftware/smackx/omemo/OmemoKeyUtilTest.java @@ -21,8 +21,8 @@ import static junit.framework.TestCase.assertNotNull; import static junit.framework.TestCase.assertNull; import java.io.IOException; -import java.util.HashMap; import java.util.Iterator; +import java.util.Map; import java.util.TreeMap; import org.jivesoftware.smack.test.util.SmackTestSuite; @@ -91,7 +91,7 @@ extends SmackTestSuite { OmemoDevice device = new OmemoDevice(JidCreate.bareFrom("test@test.tld"), 1337); String bundleXML = "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"; OmemoBundleElement_VAxolotl bundle = new OmemoBundleVAxolotlProvider().parse(TestUtils.getParser(bundleXML)); - HashMap bundles = keyUtil.BUNDLE.bundles(bundle, device); + Map bundles = keyUtil.BUNDLE.bundles(bundle, device); assertEquals("There must be 100 bundles in the HashMap.", 100, bundles.size()); assertNotNull(keyUtil.BUNDLE.identityKey(bundle)); diff --git a/smack-omemo/src/test/java/org/jivesoftware/smackx/omemo/OmemoStoreTest.java b/smack-omemo/src/test/java/org/jivesoftware/smackx/omemo/OmemoStoreTest.java index 79b6b33f3..22b626054 100644 --- a/smack-omemo/src/test/java/org/jivesoftware/smackx/omemo/OmemoStoreTest.java +++ b/smack-omemo/src/test/java/org/jivesoftware/smackx/omemo/OmemoStoreTest.java @@ -27,8 +27,8 @@ import static junit.framework.TestCase.assertTrue; import java.io.IOException; import java.util.Arrays; import java.util.Date; -import java.util.HashMap; import java.util.HashSet; +import java.util.Map; import java.util.TreeMap; import org.jivesoftware.smackx.omemo.exceptions.CorruptedOmemoKeyException; @@ -174,7 +174,7 @@ public abstract class OmemoStoreTest before = store.generateOmemoPreKeys(1, 10); + Map before = store.generateOmemoPreKeys(1, 10); assertEquals("The store must have no prekeys before this test.", 0, store.loadOmemoPreKeys(alice).size()); store.storeOmemoPreKeys(alice, before); @@ -305,7 +305,7 @@ public abstract class OmemoStoreTest sessions = store.loadAllRawSessionsOf(alice, bob.getJid()); + Map sessions = store.loadAllRawSessionsOf(alice, bob.getJid()); assertNotNull(sessions); assertEquals(0, sessions.size()); } diff --git a/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/element/PublicKeysListElement.java b/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/element/PublicKeysListElement.java index 780f67fc7..3f97d83e8 100644 --- a/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/element/PublicKeysListElement.java +++ b/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/element/PublicKeysListElement.java @@ -40,7 +40,7 @@ public final class PublicKeysListElement implements ExtensionElement { private final Map metadata; - private PublicKeysListElement(TreeMap metadata) { + private PublicKeysListElement(Map metadata) { this.metadata = Collections.unmodifiableMap(Objects.requireNonNull(metadata)); } @@ -48,7 +48,8 @@ public final class PublicKeysListElement implements ExtensionElement { return new Builder(); } - public TreeMap getMetadata() { + @SuppressWarnings("NonApiType") + public Map getMetadata() { return new TreeMap<>(metadata); } @@ -72,7 +73,7 @@ public final class PublicKeysListElement implements ExtensionElement { public static final class Builder { - private final TreeMap metadata = new TreeMap<>(); + private final Map metadata = new TreeMap<>(); private Builder() { // Empty diff --git a/smack-resolver-javax/src/main/java/org/jivesoftware/smack/util/dns/javax/JavaxResolver.java b/smack-resolver-javax/src/main/java/org/jivesoftware/smack/util/dns/javax/JavaxResolver.java index 96cd9771a..1ca3b5721 100644 --- a/smack-resolver-javax/src/main/java/org/jivesoftware/smack/util/dns/javax/JavaxResolver.java +++ b/smack-resolver-javax/src/main/java/org/jivesoftware/smack/util/dns/javax/JavaxResolver.java @@ -84,6 +84,7 @@ public class JavaxResolver extends DNSResolver implements SmackInitializer { } @Override + @SuppressWarnings("BanJNDI") protected List lookupSrvRecords0(DnsName name, List lookupFailures, DnssecMode dnssecMode) { Attribute srvAttribute; diff --git a/smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XMPPTCPConnection.java b/smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XMPPTCPConnection.java index 8b4602553..1e622bedc 100644 --- a/smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XMPPTCPConnection.java +++ b/smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XMPPTCPConnection.java @@ -1256,8 +1256,7 @@ public class XMPPTCPConnection extends AbstractXMPPConnection { final boolean smResumptionPossible = isSmResumptionPossible(); // Don't throw a NotConnectedException is there is an resumable stream available if (!smResumptionPossible) { - throw new NotConnectedException(XMPPTCPConnection.this, "done=" + done - + " smResumptionPossible=" + smResumptionPossible); + throw new NotConnectedException(XMPPTCPConnection.this, "done=true smResumptionPossible=false"); } } } diff --git a/smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XmppTcpTransportModuleDescriptor.java b/smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XmppTcpTransportModuleDescriptor.java index c48d8c546..0dc5d40a4 100644 --- a/smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XmppTcpTransportModuleDescriptor.java +++ b/smack-tcp/src/main/java/org/jivesoftware/smack/tcp/XmppTcpTransportModuleDescriptor.java @@ -1,6 +1,6 @@ /** * - * Copyright 2019-2020 Florian Schmaus + * Copyright 2019-2024 Florian Schmaus * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -65,6 +65,8 @@ public class XmppTcpTransportModuleDescriptor extends ModularXmppClientToServerC public static final class Builder extends ModularXmppClientToServerConnectionModuleDescriptor.Builder { + // Invoked via reflection. + @SuppressWarnings("UnusedMethod") private Builder(ModularXmppClientToServerConnectionConfiguration.Builder connectionConfigurationBuilder) { super(connectionConfigurationBuilder); }