From d97fb126a1de2eb5df1560b3fc8e735cab32034e Mon Sep 17 00:00:00 2001 From: Florian Schmaus Date: Tue, 16 Apr 2019 10:09:01 +0200 Subject: [PATCH] Add PubSubManager.getInstanceFor() just like all other Managers and deprecate PubSubManager.getInstance(). --- .../smackx/geoloc/GeoLocationManager.java | 2 +- .../jivesoftware/smackx/mood/MoodManager.java | 2 +- .../jivesoftware/smackx/pep/PepManager.java | 2 +- .../smackx/pubsub/PubSubManager.java | 32 +++++++++++++++++-- .../smackx/omemo/OmemoManagerSetupHelper.java | 2 +- .../smackx/pubsub/PubSubIntegrationTest.java | 2 +- .../smackx/omemo/OmemoService.java | 8 ++--- .../smackx/ox/util/OpenPgpPubSubUtil.java | 4 +-- 8 files changed, 40 insertions(+), 14 deletions(-) diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/GeoLocationManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/GeoLocationManager.java index e6b75b46b..2afe22663 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/GeoLocationManager.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/geoloc/GeoLocationManager.java @@ -124,7 +124,7 @@ public final class GeoLocationManager extends Manager { private LeafNode getNode() throws NoResponseException, XMPPErrorException, NotConnectedException, InterruptedException, NotALeafNodeException { - return PubSubManager.getInstance(connection()).getOrCreateLeafNode(GeoLocation.NAMESPACE); + return PubSubManager.getInstanceFor(connection()).getOrCreateLeafNode(GeoLocation.NAMESPACE); } } diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/mood/MoodManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/mood/MoodManager.java index 3c878a79b..d8cdd1678 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/mood/MoodManager.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/mood/MoodManager.java @@ -147,7 +147,7 @@ public final class MoodManager extends Manager { throws SmackException.NotLoggedInException, InterruptedException, PubSubException.NotALeafNodeException, XMPPException.XMPPErrorException, SmackException.NotConnectedException, SmackException.NoResponseException { if (pubSubManager == null) { - pubSubManager = PubSubManager.getInstance(getAuthenticatedConnectionOrThrow(), connection().getUser().asBareJid()); + pubSubManager = PubSubManager.getInstanceFor(getAuthenticatedConnectionOrThrow(), connection().getUser().asBareJid()); } LeafNode node = pubSubManager.getOrCreateLeafNode(MOOD_NODE); diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pep/PepManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pep/PepManager.java index f581e9830..26eba67e9 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pep/PepManager.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pep/PepManager.java @@ -120,7 +120,7 @@ public final class PepManager extends Manager { // TODO Add filter to check if from supports PubSub as per xep163 2 2.4 connection.addSyncStanzaListener(packetListener, FROM_BARE_JID_WITH_EVENT_EXTENSION_FILTER); - pepPubSubManager = PubSubManager.getInstance(connection, null); + pepPubSubManager = PubSubManager.getInstanceFor(connection, null); } public PubSubManager getPepPubSubManager() { diff --git a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/PubSubManager.java b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/PubSubManager.java index 77895035f..2904e0392 100644 --- a/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/PubSubManager.java +++ b/smack-extensions/src/main/java/org/jivesoftware/smackx/pubsub/PubSubManager.java @@ -88,7 +88,9 @@ public final class PubSubManager extends Manager { * @param connection * @return the default PubSub manager. */ - public static PubSubManager getInstance(XMPPConnection connection) { + // CHECKSTYLE:OFF:RegexpSingleline + public static PubSubManager getInstanceFor(XMPPConnection connection) { + // CHECKSTYLE:ON:RegexpSingleline DomainBareJid pubSubService = null; if (connection.isAuthenticated()) { try { @@ -110,7 +112,7 @@ public final class PubSubManager extends Manager { throw new RuntimeException(e); } } - return getInstance(connection, pubSubService); + return getInstanceFor(connection, pubSubService); } /** @@ -121,7 +123,9 @@ public final class PubSubManager extends Manager { * @param pubSubService the PubSub service, may be null. * @return a PubSub manager for the connection and service. */ - public static PubSubManager getInstance(XMPPConnection connection, BareJid pubSubService) { + // CHECKSTYLE:OFF:RegexpSingleline + public static PubSubManager getInstanceFor(XMPPConnection connection, BareJid pubSubService) { + // CHECKSTYLE:ON:RegexpSingleline if (pubSubService != null && connection.isAuthenticated() && connection.getUser().asBareJid().equals(pubSubService)) { // PEP service. pubSubService = null; @@ -147,6 +151,28 @@ public final class PubSubManager extends Manager { return pubSubManager; } + /** + * Deprecated. + * + * @deprecated use {@link #getInstanceFor(XMPPConnection)} instead. + */ + @Deprecated + // TODO: Remove in Smack 4.5. + public static PubSubManager getInstance(XMPPConnection connection) { + return getInstanceFor(connection); + } + + /** + * Deprecated. + * + * @deprecated use {@link #getInstanceFor(XMPPConnection, BareJid)} instead. + */ + @Deprecated + // TODO: Remove in Smack 4.5. + public static PubSubManager getInstance(XMPPConnection connection, BareJid pubSubService) { + return getInstanceFor(connection, pubSubService); + } + /** * Create a pubsub manager associated to the specified connection where * the pubsub requests require a specific to address for packets. 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 0c2e7fa34..c4cf718d3 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 @@ -125,7 +125,7 @@ public class OmemoManagerSetupHelper { } public static void cleanUpPubSub(OmemoManager omemoManager) { - PubSubManager pm = PubSubManager.getInstance(omemoManager.getConnection(),omemoManager.getOwnJid()); + PubSubManager pm = PubSubManager.getInstanceFor(omemoManager.getConnection(),omemoManager.getOwnJid()); try { omemoManager.requestDeviceListUpdateFor(omemoManager.getOwnJid()); } catch (SmackException.NotConnectedException | InterruptedException | SmackException.NoResponseException | PubSubException.NotALeafNodeException | XMPPException.XMPPErrorException e) { diff --git a/smack-integration-test/src/main/java/org/jivesoftware/smackx/pubsub/PubSubIntegrationTest.java b/smack-integration-test/src/main/java/org/jivesoftware/smackx/pubsub/PubSubIntegrationTest.java index e13351c91..9226b3bb5 100644 --- a/smack-integration-test/src/main/java/org/jivesoftware/smackx/pubsub/PubSubIntegrationTest.java +++ b/smack-integration-test/src/main/java/org/jivesoftware/smackx/pubsub/PubSubIntegrationTest.java @@ -42,7 +42,7 @@ public class PubSubIntegrationTest extends AbstractSmackIntegrationTest { if (pubSubService == null) { throw new TestNotPossibleException("No PubSub service found"); } - pubSubManagerOne = PubSubManager.getInstance(conOne, pubSubService); + pubSubManagerOne = PubSubManager.getInstanceFor(conOne, pubSubService); if (!pubSubManagerOne.canCreateNodesAndPublishItems()) { throw new TestNotPossibleException("PubSub service does not allow node creation"); } 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 34f0c3dcc..e4c93a0d1 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 @@ -556,7 +556,7 @@ public abstract class OmemoService(bundle)); } @@ -606,7 +606,7 @@ public abstract class OmemoService(deviceList)); } diff --git a/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/util/OpenPgpPubSubUtil.java b/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/util/OpenPgpPubSubUtil.java index 088c23e8f..9880facf1 100644 --- a/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/util/OpenPgpPubSubUtil.java +++ b/smack-openpgp/src/main/java/org/jivesoftware/smackx/ox/util/OpenPgpPubSubUtil.java @@ -204,7 +204,7 @@ public class OpenPgpPubSubUtil { public static PublicKeysListElement fetchPubkeysList(XMPPConnection connection, BareJid contact) throws InterruptedException, XMPPException.XMPPErrorException, SmackException.NoResponseException, PubSubException.NotALeafNodeException, SmackException.NotConnectedException, PubSubException.NotAPubSubNodeException { - PubSubManager pm = PubSubManager.getInstance(connection, contact); + PubSubManager pm = PubSubManager.getInstanceFor(connection, contact); LeafNode node = getLeafNode(pm, PEP_NODE_PUBLIC_KEYS); List> list = node.getItems(1); @@ -274,7 +274,7 @@ public class OpenPgpPubSubUtil { public static PubkeyElement fetchPubkey(XMPPConnection connection, BareJid contact, OpenPgpV4Fingerprint v4_fingerprint) throws InterruptedException, XMPPException.XMPPErrorException, PubSubException.NotAPubSubNodeException, PubSubException.NotALeafNodeException, SmackException.NotConnectedException, SmackException.NoResponseException { - PubSubManager pm = PubSubManager.getInstance(connection, contact); + PubSubManager pm = PubSubManager.getInstanceFor(connection, contact); String nodeName = PEP_NODE_PUBLIC_KEY(v4_fingerprint); LeafNode node = getLeafNode(pm, nodeName);