public final class Jid extends Object implements Comparable<Jid>, Serializable, CharSequence
A JID consists of three parts:
[ localpart "@" ] domainpart [ "/" resourcepart ]
The easiest way to create a JID is to use theof(String) method:
Jid jid = Jid.of("juliet@capulet.lit/balcony");
You can then get the parts from it via the respective methods:
String local = jid.getLocal(); // juliet
String domain = jid.getDomain(); // capulet.lit
String resource = jid.getResource(); // balcony
This class overrides equals() and hashCode(), so that different instances with the same value are equal:
Jid.of("romeo@capulet.lit/balcony").equals(Jid.of("romeo@capulet.lit/balcony")); // true
This class also supports XEP-0106: JID Escaping, i.e.
Jid.of("d'artagnan@musketeers.lit")
is escaped as d\\27artagnan@musketeers.lit.| Modifier and Type | Field and Description |
|---|---|
static String |
ESCAPING_FEATURE
The service discovery feature used for determining support of JID escaping (
jid\20escaping). |
| Constructor and Description |
|---|
Jid(String domain)
Deprecated.
Use
ofDomain(String) |
Jid(String local,
String domain)
Deprecated.
|
Jid(String local,
String domain,
String resource)
Deprecated.
|
| Modifier and Type | Method and Description |
|---|---|
Jid |
asBareJid()
Converts this JID into a bare JID, i.e. removes the resource.
|
char |
charAt(int index) |
int |
compareTo(Jid o)
Compares this JID with another JID.
|
boolean |
equals(Object o) |
String |
getDomain()
Gets the domain part.
|
String |
getLocal()
Gets the local part of the JID, also known as the name or node.
|
String |
getResource()
Gets the resource part.
|
int |
hashCode() |
boolean |
isBareJid()
Checks if the JID is a bare JID.
|
boolean |
isFullJid()
Checks if the JID is a full JID.
|
int |
length() |
static Jid |
of(String jid)
Returns a JID from a string.
|
static Jid |
of(String local,
String domain,
String resource)
Returns a bare JID with a domain and resource part, e.g.
|
static Jid |
ofDomain(String domain)
Returns a bare JID with only the domain part, e.g.
|
static Jid |
ofDomainAndResource(String domain,
String resource)
Returns a bare JID with a domain and resource part, e.g.
|
static Jid |
ofEscaped(String jid)
Creates a JID from a escaped JID string.
|
static Jid |
ofLocalAndDomain(String local,
String domain)
Returns a bare JID with a local and domain part, e.g.
|
CharSequence |
subSequence(int start,
int end) |
String |
toEscapedString()
Gets the JID in escaped form as described in XEP-0106: JID Escaping.
|
String |
toString()
Converts the JID into its string representation, i.e. [ localpart "@" ] domainpart [ "/" resourcepart ].
|
static Jid |
valueOf(String jid)
Deprecated.
Use
of(String) |
static Jid |
valueOf(String jid,
boolean doUnescape)
Deprecated.
Use
of(String) or ofEscaped(String)} |
Jid |
withLocal(String local)
Returns a new JID with a new local part and the same domain and resource part of the current JID.
|
Jid |
withResource(String resource)
Returns a new full JID with a resource and the same local and domain part of the current JID.
|
chars, codePointspublic static final String ESCAPING_FEATURE
jid\20escaping).@Deprecated public Jid(String domain)
ofDomain(String)domain - The domain.@Deprecated public Jid(String local, String domain)
ofLocalAndDomain(String, String)local - The local part.domain - The domain part.@Deprecated public Jid(String local, String domain, String resource)
of(String, String, String)}local - The local part.domain - The domain part.resource - The resource part.@Deprecated public static Jid valueOf(String jid)
of(String). The input string will be escaped.[ localpart "@" ] domainpart [ "/" resourcepart ]
jid - The JID.@Deprecated public static Jid valueOf(String jid, boolean doUnescape)
of(String) or ofEscaped(String)}[ localpart "@" ] domainpart [ "/" resourcepart ]
jid - The JID.doUnescape - If the jid parameter will be unescaped.public static Jid of(String local, String domain, String resource)
capulet.com/balconylocal - The local part.domain - The domain.resource - The resource part.public static Jid ofDomain(String domain)
capulet.comdomain - The domain.public static Jid ofLocalAndDomain(String local, String domain)
juliet@capulet.comlocal - The local part.domain - The domain.public static Jid ofDomainAndResource(String domain, String resource)
capulet.com/balconydomain - The domain.resource - The resource part.public static Jid of(String jid)
. The input string will be escaped.[ localpart "@" ] domainpart [ "/" resourcepart ]
jid - The JID.public static Jid ofEscaped(String jid)
[ localpart "@" ] domainpart [ "/" resourcepart ]
jid - The JID.public boolean isFullJid()
The term "full JID" refers to an XMPP address of the form <localpart@domainpart/resourcepart> (for a particular authorized client or device associated with an account) or of the form <domainpart/resourcepart> (for a particular resource or script associated with a server).
public boolean isBareJid()
The term "bare JID" refers to an XMPP address of the form <localpart@domainpart> (for an account at a server) or of the form <domainpart> (for a server).
public Jid asBareJid()
The term "bare JID" refers to an XMPP address of the form <localpart@domainpart> (for an account at a server) or of the form <domainpart> (for a server).
withResource(String)public Jid withLocal(String local)
local - The local part.public Jid withResource(String resource)
resource - The resource.asBareJid()public String getLocal()
The localpart of a JID is an optional identifier placed before the domainpart and separated from the latter by the '@' character. Typically a localpart uniquely identifies the entity requesting and using network access provided by a server (i.e., a local account), although it can also represent other kinds of entities (e.g., a chat room associated with a multi-user chat service). The entity represented by an XMPP localpart is addressed within the context of a specific domain (i.e.,
<localpart@domainpart>).
public String getDomain()
The domainpart of a JID is that portion after the '@' character (if any) and before the '/' character (if any); it is the primary identifier and is the only REQUIRED element of a JID (a mere domainpart is a valid JID).
public String getResource()
The resourcepart of a JID is an optional identifier placed after the domainpart and separated from the latter by the '/' character. A resourcepart can modify either a
<localpart@domainpart>address or a mere<domainpart>address. Typically a resourcepart uniquely identifies a specific connection (e.g., a device or location) or object (e.g., an occupant in a multi-user chat room) belonging to the entity associated with an XMPP localpart at a domain (i.e.,<localpart@domainpart/resourcepart>).
public String toEscapedString()
toString()public int length()
length in interface CharSequencepublic char charAt(int index)
charAt in interface CharSequencepublic CharSequence subSequence(int start, int end)
subSequence in interface CharSequencepublic String toString()
toString in interface CharSequencetoString in class ObjecttoEscapedString()public int compareTo(Jid o)
compareTo in interface Comparable<Jid>o - The other JID.Copyright © 2014–2015 XMPP.rocks. All rights reserved.