JID Class Reference

`#include <jid.h>`

## Public Member Functions

| JID ()
| JID (const std::string &jid)
| ~JID ()
bool | setJID (const std::string &jid)
const std::string & | full () const
const std::string & | bare () const
JID | bareJID () const
bool | setUsername (const std::string &username)
bool | setServer (const std::string &server)
bool | setResource (const std::string &resource)
const std::string & | username () const
const std::string & | server () const
const std::string & | serverRaw () const
const std::string & | resource () const
bool | operator== (const std::string &right) const
bool | operator!= (const std::string &right) const
bool | operator== (const JID &right) const
bool | operator!= (const JID &right) const
bool | operator< (const JID &right) const
bool | operator<= (const JID &right) const
bool | operator> (const JID &right) const
bool | operator>= (const JID &right) const
| operator bool () const

## Static Public Member Functions

static std::string | escapeNode (const std::string &node)
static std::string | unescapeNode (const std::string &node)

## Detailed Description

An abstraction of a JID.

Author
  Jakob Schröter js@ca.nosp@m.maya.nosp@m..net

Since
  0.4

Definition at line 30 of file jid.h.

## Constructor & Destructor Documentation

## JID() [1/2]

JID | ( |  | ) |

inline

Constructs an empty JID.

Definition at line 37 of file jid.h.

## JID() [2/2]

JID | ( | const std::string & | jid | ) |

inline

Constructs a new JID from a string.

Parameters

  jid | The string containing the JID.

Definition at line 43 of file jid.h.

## ~JID()

~JID | ( |  | ) |

inline

Destructor.

Definition at line 48 of file jid.h.

## Member Function Documentation

## bare()

const std::string & bare | ( |  | ) | const

inline

Returns the bare (prepped) JID (user@host).

Returns
  The bare JID.

Definition at line 67 of file jid.h.

## bareJID()

JID bareJID | ( |  | ) | const

inline

Creates and returns a JID from this JID's node and server parts.

Returns
  The bare JID.

Since
  0.9

Definition at line 74 of file jid.h.

## escapeNode()

std::string escapeNode | ( | const std::string & | node | ) |

static

XEP-0106: JID Escaping

Parameters

  node | The node to escape.

Returns
  The escaped node.

Definition at line 87 of file jid.cpp.

## full()

const std::string & full | ( |  | ) | const

inline

Returns the full (prepped) JID (user@host/resource).

Returns
  The full JID.

Definition at line 61 of file jid.h.

## operator bool()

operator bool | ( |  | ) | const

inline

Converts to true if the JID is valid, false otherwise.

Definition at line 174 of file jid.h.

## operator!=() [1/2]

bool operator!= | ( | const JID & | right | ) | const

inline

Compares two JIDs.

Parameters

  right | The second JID.

Definition at line 140 of file jid.h.

## operator!=() [2/2]

bool operator!= | ( | const std::string & | right | ) | const

inline

Compares a JID with a string.

Parameters

  right | The second JID in string representation.

Definition at line 128 of file jid.h.

## operator<()

bool operator< | ( | const JID & | right | ) | const

inline

Compares two JIDs to see if the left is less than the right. Needed for JID to be a key in a map.

Parameters

  right | The second JID.

Since
  1.0.4

Definition at line 148 of file jid.h.

## operator<=()

bool operator<= | ( | const JID & | right | ) | const

inline

Compares two JIDs to see if the left is less than or equal to the right.

Parameters

  right | The second JID.

Since
  1.0.4

Definition at line 155 of file jid.h.

## operator==() [1/2]

bool operator== | ( | const JID & | right | ) | const

inline

Compares two JIDs.

Parameters

  right | The second JID.

Definition at line 134 of file jid.h.

## operator==() [2/2]

bool operator== | ( | const std::string & | right | ) | const

inline

Compares a JID with a string.

Parameters

  right | The second JID in string representation.

Definition at line 122 of file jid.h.

## operator>()

bool operator> | ( | const JID & | right | ) | const

inline

Compares two JIDs to see if the left is greater than the right.

Parameters

  right | The second JID.

Since
  1.0.4

Definition at line 162 of file jid.h.

## operator>=()

bool operator>= | ( | const JID & | right | ) | const

inline

Compares two JIDs to see if the left is greater than the right.

Parameters

  right | The second JID.

Since
  1.0.4

Definition at line 169 of file jid.h.

## resource()

const std::string & resource | ( |  | ) | const

inline

Returns the prepped resource.

Returns
  The current resource.

Definition at line 116 of file jid.h.

## server()

const std::string & server | ( |  | ) | const

inline

Returns the prepped server name.

Returns
  The current server.

Definition at line 104 of file jid.h.

## serverRaw()

const std::string & serverRaw | ( |  | ) | const

inline

Returns the raw (unprepped) server name.

Returns
  The raw server name.

Definition at line 110 of file jid.h.

## setJID()

bool setJID | ( | const std::string & | jid | ) |

Sets the JID from a string.

Parameters

  jid | The string containing the JID.

Returns
  True if the given JID was valid, false otherwise.

Definition at line 21 of file jid.cpp.

## setResource()

bool setResource | ( | const std::string & | resource | ) |

Sets the resource.

Parameters

  resource | The new resource.

Definition at line 64 of file jid.cpp.

## setServer()

bool setServer | ( | const std::string & | server | ) |

Sets the server.

Parameters

  server | The new server.

Definition at line 56 of file jid.cpp.

## setUsername()

bool setUsername | ( | const std::string & | username | ) |

Sets the username.

Parameters

  username | The new username.

Definition at line 49 of file jid.cpp.

## unescapeNode()

std::string unescapeNode | ( | const std::string & | node | ) |

static

XEP-0106: JID Escaping

Parameters

  node | The node to unescape.

Returns
  The unescaped node.

Definition at line 105 of file jid.cpp.

## username()

const std::string & username | ( |  | ) | const

inline

Returns the prepped username.

Returns
  The current username.

Definition at line 98 of file jid.h.

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

- jid.h
- jid.cpp