|
Yate
|
An account. More...
#include <yatecbase.h>
Public Member Functions | |
| ClientAccount (const char *proto, const char *user, const char *host, bool startup, ClientContact *contact=0) | |
| ClientAccount (const NamedList ¶ms, ClientContact *contact=0) | |
| const NamedList & | params () const |
| ObjList & | contacts () |
| ObjList & | mucs () |
| ClientContact * | contact () const |
| void | setContact (ClientContact *contact) |
| const String & | protocol () const |
| bool | hasChat () const |
| bool | hasPresence () const |
| bool | startup () const |
| void | startup (bool ok) |
| virtual const String & | toString () const |
| ClientResource * | resource (bool ref) |
| ClientResource & | resource () const |
| void | setResource (ClientResource *res) |
| bool | save (bool ok=true, bool savePwd=true) |
| virtual ClientContact * | findContact (const String &id, bool ref=false) |
| virtual ClientContact * | findContact (const String *name=0, const String *uri=0, const String *skipId=0, bool ref=false) |
| virtual ClientContact * | findContact (const String &id, const String &resid, bool ref=false) |
| virtual ClientContact * | findContactByUri (const String &uri, bool ref=false) |
| virtual MucRoom * | findRoom (const String &id, bool ref=false) |
| virtual MucRoom * | findRoomByUri (const String &uri, bool ref=false) |
| virtual ClientContact * | findAnyContact (const String &id, bool ref=false) |
| virtual ClientContact * | appendContact (const String &id, const char *name, const char *uri=0) |
| virtual ClientContact * | appendContact (const NamedList ¶ms) |
| virtual ClientContact * | removeContact (const String &id, bool delObj=true) |
| virtual void | clearRooms (bool saved, bool temp) |
| virtual Message * | userlogin (bool login, const char *msg="user.login") |
| virtual Message * | userData (bool update, const String &data, const char *msg="user.data") |
| virtual void | fillItemParams (NamedList &list) |
| const String & | dataDir () const |
| virtual bool | setupDataDir (String *errStr=0, bool saveAcc=true) |
| virtual bool | loadDataDirCfg (Configuration *cfg=0, const char *file="account.conf") |
| virtual void | loadContacts (Configuration *cfg=0) |
| virtual bool | clearDataDir (String *errStr=0) |
Public Member Functions inherited from RefObject | |
| RefObject () | |
| virtual | ~RefObject () |
| virtual void * | getObject (const String &name) const |
| virtual bool | alive () const |
| bool | ref () |
| bool | deref () |
| int | refcount () const |
| virtual void | destruct () |
Public Member Functions inherited from GenObject | |
| GenObject () | |
| virtual | ~GenObject () |
| virtual const String & | traceId () const |
| NamedCounter * | getObjCounter () const |
| NamedCounter * | setObjCounter (NamedCounter *counter) |
Public Member Functions inherited from Mutex | |
| Mutex (bool recursive=false, const char *name=0) | |
| Mutex (const Mutex &original) | |
| ~Mutex () | |
| Mutex & | operator= (const Mutex &original) |
| virtual bool | lock (long maxwait=-1) |
| virtual bool | unlock () |
| virtual bool | locked () const |
| const char * | owner () const |
| bool | recursive () const |
Public Member Functions inherited from Lockable | |
| virtual | ~Lockable () |
| virtual bool | check (long maxwait=-1) |
| virtual bool | unlockAll () |
Public Attributes | |
| NamedList | m_params |
| Configuration | m_cfg |
Protected Member Functions | |
| virtual void | destroyed () |
| virtual void | appendContact (ClientContact *contact, bool muc=false) |
Protected Member Functions inherited from RefObject | |
| virtual void | zeroRefs () |
| bool | resurrect () |
Protected Attributes | |
| ObjList | m_contacts |
| ObjList | m_mucs |
Friends | |
| class | ClientContact |
| class | MucRoom |
Additional Inherited Members | |
Static Public Member Functions inherited from RefObject | |
| static bool | alive (const RefObject *obj) |
| static bool | efficientIncDec () |
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 NamedCounter * | getObjCounter (const String &name, bool create=true) |
| static ObjList & | getObjCounters () |
Static Public Member Functions inherited from Mutex | |
| static int | count () |
| static int | locks () |
| static bool | efficientTimedLock () |
Static Public Member Functions inherited from Lockable | |
| static void | wait (unsigned long maxwait) |
| static unsigned long | wait () |
| static void | startUsingNow () |
| static void | enableSafety (bool safe=true) |
| static bool | safety () |
An account.
This class holds an account
|
explicit |
|
explicit |
|
virtual |
Build a contact and append it to the list
| params | Contact parameters |
References params().
|
virtual |
Build a contact and append it to the list
| id | The contact's id |
| name | The contact's name |
| uri | Optional contact URI |
|
virtual |
Clear account data directory
| errStr | Optional string to be filled with error string |
|
virtual |
Clear MUC rooms. This method is thread safe
| saved | True to clear saved rooms |
| temp | True to clear temporary rooms |
|
inline |
Retrieve account own contact
Referenced by ClientAccount(), ClientAccount(), destroyed(), and setContact().
|
inline |
Get this account's contacts. The caller should lock the account while browsing the list
|
inline |
Retrieve account data directory
|
protectedvirtual |
|
virtual |
Fill a list used to update a account's list item
| list | Parameter list to fill |
|
virtual |
Find any contact (regular or MUC room) by its id
| id | The id of the desired contact |
| ref | True to obtain a referenced pointer |
References RefObject::ref().
|
virtual |
Find a contact by its id
| id | The id of the desired contact |
| ref | True to obtain a referenced pointer |
References RefObject::ref().
|
virtual |
Find a contact having a given id and resource
| id | The id of the desired contact |
| resid | The id of the desired resource |
| ref | True to obtain a referenced pointer |
References RefObject::ref().
|
virtual |
Find a contact by name and/or uri. Account own contact is ignored
| name | Optional name to check (may be a pointer to an empty string) |
| uri | Optional uri to check (may be a pointer to an empty string) |
| skipId | Optional contact to skip |
| ref | True to obtain a referenced pointer |
References RefObject::ref().
|
virtual |
Find a contact by its URI (build an id from account and uri)
| uri | The contact's uri |
| ref | True to get a referenced pointer |
References RefObject::ref().
Find a MUC room by its id
| id | Room id |
| ref | True to obtain a referenced pointer |
References RefObject::ref().
Find a MUC room by its uri
| uri | Room uri |
| ref | True to obtain a referenced pointer |
References RefObject::ref().
|
inline |
Check if the account's protocol has chat support
References protocol().
|
inline |
Check if the account's protocol has presence support
References protocol().
|
virtual |
Load contacts from configuration file
| cfg | Optional configuration file to load. Load from account's conf file if 0 |
|
virtual |
Load configuration file from data directory
| cfg | Optional configuration file to load. Load account's conf file if 0 |
| file | File name. Defaults to 'account.conf' |
|
inline |
Get this account's muc rooms. The caller should lock the account while browsing the list
|
inline |
Get this account's parameters
Referenced by appendContact(), and ClientAccount().
|
inline |
Retrieve the account's protocol
Referenced by hasChat(), and hasPresence().
|
virtual |
Remove a contact from list. Reset contact's owner
| id | The contact's id |
| delObj | True to delete the object if found |
|
inline |
Get this account's resource
| ClientResource * resource | ( | bool | ref | ) |
| bool save | ( | bool | ok = true, |
| bool | savePwd = true ) |
Save or remove this account to/from client accounts file. Parameters starting with "internal." are not saved
| ok | True to save, false to remove |
| savePwd | True to save the password |
| void setContact | ( | ClientContact * | contact | ) |
Set or reset account own contact
| contact | New account contact (may be NULL to reset it) |
References contact().
| void setResource | ( | ClientResource * | res | ) |
Set this account's resource
| res | The new account's resource (ignored if 0) |
|
virtual |
Set account directory in application data directory. Make sure it exists. Move all files from the old one if changed
| errStr | Optional string to be filled with error string |
| saveAcc | Save data directory parameter in client accounts |
|
inline |
Check if the account should be logged in at startup
Referenced by ClientAccount().
|
inline |
Set the account's startup login flag
| ok | The account's startup login flag value |
References String::boolText().
|
inlinevirtual |
Get a string representation of this object
Reimplemented from GenObject.
|
virtual |
Build a message used to update or query account userdata. Add account MUC rooms if data is 'chatrooms' and update
| update | True to update, false to query |
| data | Data to update or query |
| msg | Optional message name. Default to 'user.data' |
|
virtual |
Build a login/logout message from account's data
| login | True to login, false to logout |
| msg | Optional message name. Default to 'user.login' |