diff --git a/smack-experimental/src/main/java/org/jivesoftware/smackx/mam/MamManager.java b/smack-experimental/src/main/java/org/jivesoftware/smackx/mam/MamManager.java index 04c3d3f32..2e0251b92 100644 --- a/smack-experimental/src/main/java/org/jivesoftware/smackx/mam/MamManager.java +++ b/smack-experimental/src/main/java/org/jivesoftware/smackx/mam/MamManager.java @@ -112,6 +112,24 @@ public final class MamManager extends Manager { serviceDiscoveryManager = ServiceDiscoveryManager.getInstanceFor(connection); } + /** + * The the XMPP address of this MAM archive. Note that this method may return {@code null} if this MamManager + * handles the local entity's archive and if the connection has never been authenticated at least once. + * + * @return the XMPP address of this MAM archive or {@code null}. + * @since 4.3.0 + */ + public Jid getArchiveAddress() { + if (archiveAddress == null) { + EntityFullJid localJid = connection().getUser(); + if (localJid == null) { + return null; + } + return localJid.asBareJid(); + } + return archiveAddress; + } + /** * Query archive with a maximum amount of results. *