Yate
JabberID Class Reference

A Jabber ID. More...

#include <xmpputils.h>

Inheritance diagram for JabberID:
String GenObject

Public Member Functions

 JabberID ()
 
 JabberID (const char *jid)
 
 JabberID (const String &jid)
 
 JabberID (const String *jid)
 
 JabberID (const char *node, const char *domain, const char *resource=0)
 
 JabberID (const JabberID &src)
 
bool valid () const
 
const Stringnode () const
 
const Stringbare () const
 
const Stringdomain () const
 
void domain (const char *d)
 
const Stringresource () const
 
bool isFull () const
 
void clear ()
 
bool match (const JabberID &src) const
 
JabberIDoperator= (const JabberID &src)
 
JabberIDoperator= (const String &src)
 
JabberIDoperator= (const String *src)
 
bool operator== (const JabberID &src) const
 
bool operator== (const String &src) const
 
bool operator!= (const JabberID &src) const
 
bool operator!= (const String &src) const
 
void resource (const char *res)
 
void set (const char *jid)
 
void set (const char *node, const char *domain, const char *resource=0)
 
- Public Member Functions inherited from String
 String ()
 
 String (const char *value, int len=-1)
 
 String (char value, unsigned int repeat=1)
 
 String (int32_t value)
 
 String (uint32_t value)
 
 String (int64_t value)
 
 String (uint64_t value)
 
 String (bool value)
 
 String (double value)
 
 String (const String &value)
 
 String (const String *value)
 
virtual ~String ()
 
virtual void * getObject (const String &name) const
 
const char * c_str () const
 
const char * safe () const
 
const char * safe (const char *defStr) const
 
unsigned int length () const
 
bool null () const
 
int lenUtf8 (uint32_t maxChar=0x10ffff, bool overlong=false) const
 
int fixUtf8 (const char *replace=0, uint32_t maxChar=0x10ffff, bool overlong=false)
 
unsigned int encodeFlags (const TokenDict *tokens) const
 
uint64_t encodeFlags (const TokenDict64 *tokens) const
 
const StringdecodeFlags (unsigned int flags, const TokenDict *tokens, bool unknownflag=true)
 
const StringdecodeFlags (uint64_t flags, const TokenDict64 *tokens, bool unknownflag=true)
 
bool checkBOM () const
 
bool stripBOM ()
 
unsigned int hash () const
 
void clear ()
 
char at (int index) const
 
String substr (int offs, int len=-1) const
 
StringtrimBlanks ()
 
StringtrimSpaces ()
 
virtual const StringtoString () const
 
int toInteger (int defvalue=0, int base=0, int minvalue=INT_MIN, int maxvalue=INT_MAX, bool clamp=true) const
 
int toInteger (const TokenDict *tokens, int defvalue=0, int base=0) const
 
long int toLong (long int defvalue=0, int base=0, long int minvalue=LONG_MIN, long int maxvalue=LONG_MAX, bool clamp=true) const
 
int64_t toInt64 (int64_t defvalue=0, int base=0, int64_t minvalue=LLONG_MIN, int64_t maxvalue=LLONG_MAX, bool clamp=true) const
 
uint64_t toUInt64 (uint64_t defvalue=0, int base=0, uint64_t minvalue=0, uint64_t maxvalue=ULLONG_MAX, bool clamp=true) const
 
double toDouble (double defvalue=0.0) const
 
bool toBoolean (bool defvalue=false) const
 
bool isBoolean () const
 
StringtoUpper ()
 
StringtoLower ()
 
char operator[] (signed int index) const
 
char operator[] (unsigned int index) const
 
 operator const char * () const
 
Stringassign (const char *value, int len=-1)
 
Stringassign (char value, unsigned int repeat=1)
 
Stringhexify (void *data, unsigned int len, char sep=0, bool upCase=false)
 
Stringoperator= (const String &value)
 
Stringoperator= (const String *value)
 
Stringoperator= (const char *value)
 
Stringoperator= (char value)
 
Stringoperator= (int32_t value)
 
Stringoperator= (uint32_t value)
 
Stringoperator= (int64_t value)
 
Stringoperator= (uint64_t value)
 
Stringoperator= (bool value)
 
Stringoperator= (double value)
 
Stringoperator+= (const char *value)
 
Stringoperator+= (char value)
 
Stringoperator+= (int32_t value)
 
Stringoperator+= (uint32_t value)
 
Stringoperator+= (int64_t value)
 
Stringoperator+= (uint64_t value)
 
Stringoperator+= (bool value)
 
Stringoperator+= (double value)
 
bool operator== (const char *value) const
 
bool operator!= (const char *value) const
 
bool operator== (const String &value) const
 
bool operator!= (const String &value) const
 
bool operator&= (const char *value) const
 
bool operator|= (const char *value) const
 
Stringoperator<< (const char *value)
 
Stringoperator<< (char value)
 
Stringoperator<< (int32_t value)
 
Stringoperator<< (uint32_t value)
 
Stringoperator<< (int64_t value)
 
Stringoperator<< (uint64_t value)
 
Stringoperator<< (bool value)
 
Stringoperator<< (double value)
 
Stringoperator>> (const char *skip)
 
Stringoperator>> (char &store)
 
Stringoperator>> (UChar &store)
 
Stringoperator>> (int &store)
 
Stringoperator>> (unsigned int &store)
 
Stringoperator>> (bool &store)
 
Stringappend (const char *value, int len)
 
Stringappend (const char *value, const char *separator=0, bool force=false)
 
Stringappend (const ObjList *list, const char *separator=0, bool force=false)
 
Stringappend (const ObjList &list, const char *separator=0, bool force=false)
 
Stringappend (double value, unsigned int decimals=3)
 
Stringprintf (const char *format,...)
 
Stringprintf (unsigned int length, const char *format,...)
 
StringappendFixed (unsigned int fixedLength, const char *str, unsigned int len=-1, char fill=' ', int align=Left)
 
StringappendFixed (unsigned int fixedLength, const String &str, char fill=' ', int align=Left)
 
int find (char what, unsigned int offs=0) const
 
int find (const char *what, unsigned int offs=0) const
 
int rfind (char what) const
 
int rfind (const char *what) const
 
bool startsWith (const char *what, bool wordBreak=false, bool caseInsensitive=false) const
 
bool endsWith (const char *what, bool wordBreak=false, bool caseInsensitive=false) const
 
bool startSkip (const char *what, bool wordBreak=true, bool caseInsensitive=false)
 
StringextractTo (const char *sep, String &store)
 
StringextractTo (const char *sep, bool &store)
 
StringextractTo (const char *sep, int &store, int base=0)
 
StringextractTo (const char *sep, int &store, const TokenDict *tokens, int base=0)
 
StringextractTo (const char *sep, double &store)
 
virtual bool matches (const String &value) const
 
bool matches (const Regexp &rexp)
 
int matchOffset (int index=0) const
 
int matchLength (int index=0) const
 
String matchString (int index=0) const
 
String replaceMatches (const String &templ) const
 
int matchCount () const
 
ObjListsplit (char separator, bool emptyOK=true) const
 
ObjListsplit (const Regexp &reg, bool emptyOK=true) const
 
String msgEscape (char extraEsc=0) const
 
String msgUnescape (int *errptr=0, char extraEsc=0) const
 
String sqlEscape (char extraEsc=0) const
 
String uriEscape (char extraEsc=0, const char *noEsc=0) const
 
String uriUnescape (int *errptr=0) const
 
- Public Member Functions inherited from GenObject
 GenObject ()
 
virtual ~GenObject ()
 
virtual bool alive () const
 
virtual void destruct ()
 
virtual const StringtraceId () const
 
NamedCountergetObjCounter () const
 
NamedCountersetObjCounter (NamedCounter *counter)
 

Static Public Member Functions

static const JabberIDempty ()
 
static bool valid (const String &value)
 
- Static Public Member Functions inherited from String
static const Stringempty ()
 
static const char * boolText (bool value)
 
static int lenUtf8 (const char *value, uint32_t maxChar=0x10ffff, bool overlong=false)
 
static bool checkBOM (const char *str)
 
static bool stripBOM (const char *&str)
 
static bool stripBOM (char *&str)
 
static unsigned int hash (const char *value, unsigned int h=0)
 
static String msgEscape (const char *str, char extraEsc=0)
 
static String msgUnescape (const char *str, int *errptr=0, char extraEsc=0)
 
static String sqlEscape (const char *str, char extraEsc=0)
 
static String uriEscape (const char *str, char extraEsc=0, const char *noEsc=0)
 
static String uriEscape (const char *str, const char *extraEsc, const char *noEsc=0)
 
static String uriUnescape (const char *str, int *errptr=0)
 
static const Stringatom (const String *&str, const char *val)
 
- Static Public Member Functions inherited from GenObject
static void * getObject (const String &name, const GenObject *obj)
 
static bool getObjCounting ()
 
static void setObjCounting (bool enable)
 
static NamedCountergetObjCounter (const String &name, bool create=true)
 
static ObjListgetObjCounters ()
 

Static Public Attributes

static Regexp s_regExpValid
 

Additional Inherited Members

- Public Types inherited from String
enum  Align { Left = 0 , Center , Right }
 
- Protected Member Functions inherited from String
virtual void changed ()
 

Detailed Description

A Jabber ID.

This class holds a Jabber ID

Constructor & Destructor Documentation

◆ JabberID() [1/6]

◆ JabberID() [2/6]

JabberID ( const char * jid)
inline

Constructor. Constructs a JID from a given string

Parameters
jidThe JID string

References set().

◆ JabberID() [3/6]

JabberID ( const String & jid)
inline

Constructor. Constructs a JID from a given string

Parameters
jidThe JID string

References set(), and String::String().

◆ JabberID() [4/6]

JabberID ( const String * jid)
inline

Constructor. Constructs a JID from a given string

Parameters
jidThe JID string

References set(), and String::String().

◆ JabberID() [5/6]

JabberID ( const char * node,
const char * domain,
const char * resource = 0 )
inline

Constructor. Constructs a JID from user, domain, resource

Parameters
nodeThe node
domainThe domain
resourceThe resource

References domain(), node(), resource(), and set().

◆ JabberID() [6/6]

JabberID ( const JabberID & src)
inline

Copy constructor

Parameters
srcSource Jabber ID

References JabberID().

Member Function Documentation

◆ bare()

const String & bare ( ) const
inline

Get the bare JID: "node@domain"

Returns
The bare JID

References String::String().

Referenced by match(), and operator==().

◆ clear()

void clear ( )
inline

Clear content

References String::clear().

◆ domain() [1/2]

const String & domain ( ) const
inline

Get the domain part of the JID

Returns
The domain part of the JID

References String::String().

Referenced by JabberID(), and set().

◆ domain() [2/2]

void domain ( const char * d)
inline

Set the domain part of the JID.

Parameters
dThe new domain part of the JID.

References set().

◆ empty()

static const JabberID & empty ( )
static

Get an empty JabberID

Returns
A global empty JabberID

References JabberID().

Referenced by JBEngine::dropAll(), JBStreamSet::dropAll(), and JBEngine::setExiting().

◆ isFull()

bool isFull ( ) const
inline

Check if this is a full JID

Returns
True if this is a full JID

◆ match()

bool match ( const JabberID & src) const
inline

Try to match another JID to this one. If src has a resource compare it too (case sensitive). Otherwise compare just the bare JID (case insensitive)

Parameters
srcThe JID to match
Returns
True if matched

References bare(), JabberID(), String::null(), and resource().

◆ node()

const String & node ( ) const
inline

Get the node part of the JID

Returns
The node part of the JID

References String::String().

Referenced by JabberID(), and set().

◆ operator!=() [1/2]

bool operator!= ( const JabberID & src) const
inline

Inequality operator

Parameters
srcThe JID to compare with
Returns
True if not equal

References JabberID(), and operator==().

◆ operator!=() [2/2]

bool operator!= ( const String & src) const
inline

Inequality operator

Parameters
srcThe string to compare with
Returns
True if not equal

References operator==(), and String::String().

◆ operator=() [1/3]

JabberID & operator= ( const JabberID & src)

Assignement operator from JabberID

Parameters
srcThe JID to copy from
Returns
This object

References JabberID().

◆ operator=() [2/3]

JabberID & operator= ( const String & src)
inline

Assignement operator from String

Parameters
srcThe string
Returns
This object

References JabberID(), set(), and String::String().

◆ operator=() [3/3]

JabberID & operator= ( const String * src)
inline

Assignement operator from String pointer

Parameters
srcThe string
Returns
This object

References JabberID(), set(), and String::String().

◆ operator==() [1/2]

bool operator== ( const JabberID & src) const
inline

Equality operator. Do a case senitive resource comparison and a case insensitive bare jid comparison

Parameters
srcThe JID to compare with
Returns
True if equal

References bare(), JabberID(), and resource().

Referenced by operator!=(), operator!=(), and operator==().

◆ operator==() [2/2]

bool operator== ( const String & src) const
inline

Equality operator. Build a temporary JID and compare with it

Parameters
srcThe string to compare with
Returns
True if equal

References JabberID(), operator==(), and String::String().

◆ resource() [1/2]

const String & resource ( ) const
inline

Get the resource part of the JID

Returns
The resource part of the JID

References String::String().

Referenced by XMPPUtils::getJIDFrom(), XMPPUtils::getJIDTo(), JabberID(), match(), operator==(), and set().

◆ resource() [2/2]

void resource ( const char * res)
inline

Set the resource part of the JID

Parameters
resThe new resource part of the JID

References set().

◆ set() [1/2]

void set ( const char * jid)

Set the data

Parameters
jidThe JID string to assign

Referenced by domain(), JabberID(), JabberID(), JabberID(), JabberID(), operator=(), operator=(), and resource().

◆ set() [2/2]

void set ( const char * node,
const char * domain,
const char * resource = 0 )

Set the data

Parameters
nodeThe node
domainThe domain
resourceThe resource

References domain(), node(), and resource().

◆ valid() [1/2]

bool valid ( ) const
inline

Check if this is a valid JID

Returns
True if this JID is a valid one

References String::null().

◆ valid() [2/2]

static bool valid ( const String & value)
static

Check if the given string contains valid characters

Parameters
valueThe string to check
Returns
True if value is valid or 0. False if value is a non empty invalid string

References String::String().

Member Data Documentation

◆ s_regExpValid

Regexp s_regExpValid
static

Keep the regexp used to check the validity of a string


The documentation for this class was generated from the following file: