mirror of
https://codeberg.org/Mercury-IM/Smack
synced 2024-12-22 20:47:57 +01:00
Add PubSubManager.getInstanceFor() just like all other Managers
and deprecate PubSubManager.getInstance().
This commit is contained in:
parent
99bf8316f5
commit
d97fb126a1
8 changed files with 40 additions and 14 deletions
|
@ -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);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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() {
|
||||
|
|
|
@ -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 <code>null</code>.
|
||||
* @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.
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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");
|
||||
}
|
||||
|
|
|
@ -556,7 +556,7 @@ public abstract class OmemoService<T_IdKeyPair, T_IdKey, T_PreKey, T_SigPreKey,
|
|||
XMPPException.XMPPErrorException, PubSubException.NotALeafNodeException,
|
||||
PubSubException.NotAPubSubNodeException {
|
||||
|
||||
PubSubManager pm = PubSubManager.getInstance(connection, contactsDevice.getJid());
|
||||
PubSubManager pm = PubSubManager.getInstanceFor(connection, contactsDevice.getJid());
|
||||
LeafNode node = pm.getLeafNode(contactsDevice.getBundleNodeName());
|
||||
|
||||
if (node == null) {
|
||||
|
@ -584,7 +584,7 @@ public abstract class OmemoService<T_IdKeyPair, T_IdKey, T_PreKey, T_SigPreKey,
|
|||
static void publishBundle(XMPPConnection connection, OmemoDevice userDevice, OmemoBundleElement bundle)
|
||||
throws XMPPException.XMPPErrorException, SmackException.NotConnectedException, InterruptedException,
|
||||
SmackException.NoResponseException {
|
||||
PubSubManager pm = PubSubManager.getInstance(connection, connection.getUser().asBareJid());
|
||||
PubSubManager pm = PubSubManager.getInstanceFor(connection, connection.getUser().asBareJid());
|
||||
pm.tryToPublishAndPossibleAutoCreate(userDevice.getBundleNodeName(), new PayloadItem<>(bundle));
|
||||
}
|
||||
|
||||
|
@ -606,7 +606,7 @@ public abstract class OmemoService<T_IdKeyPair, T_IdKey, T_PreKey, T_SigPreKey,
|
|||
SmackException.NotConnectedException, XMPPException.XMPPErrorException,
|
||||
PubSubException.NotAPubSubNodeException {
|
||||
|
||||
PubSubManager pm = PubSubManager.getInstance(connection, contact);
|
||||
PubSubManager pm = PubSubManager.getInstanceFor(connection, contact);
|
||||
String nodeName = OmemoConstants.PEP_NODE_DEVICE_LIST;
|
||||
LeafNode node = pm.getLeafNode(nodeName);
|
||||
|
||||
|
@ -636,7 +636,7 @@ public abstract class OmemoService<T_IdKeyPair, T_IdKey, T_PreKey, T_SigPreKey,
|
|||
throws InterruptedException, XMPPException.XMPPErrorException, SmackException.NotConnectedException,
|
||||
SmackException.NoResponseException {
|
||||
|
||||
PubSubManager.getInstance(connection, connection.getUser().asBareJid())
|
||||
PubSubManager.getInstanceFor(connection, connection.getUser().asBareJid())
|
||||
.tryToPublishAndPossibleAutoCreate(OmemoConstants.PEP_NODE_DEVICE_LIST, new PayloadItem<>(deviceList));
|
||||
}
|
||||
|
||||
|
|
|
@ -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<PayloadItem<PublicKeysListElement>> 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);
|
||||
|
|
Loading…
Reference in a new issue