accounts-qt  1.16
Manager Class Reference

Manager of accounts, services and providers. More...

#include <Accounts/Manager>

Inherits QObject.

Public Types

enum  Option { DisableNotifications = 0x1 }
 Specifies options for the object. More...
 

Signals

void accountCreated (Accounts::AccountId id)
 The signal is emitted when new account is created. More...
 
void accountRemoved (Accounts::AccountId id)
 The signal is emitted when existing account is removed. More...
 
void accountUpdated (Accounts::AccountId id)
 The signal is emitted when any account property for a particular service is updated. More...
 
void enabledEvent (Accounts::AccountId id)
 If the manager has been created with serviceType, this signal will be emitted when an account (identified by AccountId) has been modified in such a way that the application might be interested to start/stop using it: the "enabled" flag on the account or in some service supported by the account and matching the AgManager::serviceType have changed. More...
 

Public Member Functions

 Manager (QObject *parent=nullptr)
 Constructor. More...
 
 Manager (const QString &serviceType, QObject *parent=nullptr)
 Constructs a manager initialized with service type. More...
 
 Manager (Options options, QObject *parent=nullptr)
 Constructor, allowing option flags to be specified. More...
 
 ~Manager ()
 Destructor.
 
Account * account (const AccountId &id) const
 Loads an account from the database. More...
 
AccountIdList accountList (const QString &serviceType=QString()) const
 Lists the accounts which support the requested service. More...
 
AccountIdList accountListEnabled (const QString &serviceType=QString()) const
 Lists the enabled accounts which support the requested service that also must be enabled. More...
 
Account * createAccount (const QString &providerName)
 Creates a new account. More...
 
Service service (const QString &serviceName) const
 Gets an object representing a service. More...
 
ServiceList serviceList (const QString &serviceType=QString()) const
 Gets the service list. More...
 
ServiceList serviceList (const Application &application) const
 Get the list of services supported by the given application. More...
 
Provider provider (const QString &providerName) const
 Gets an object representing a provider. More...
 
ProviderList providerList () const
 Gets a provider list. More...
 
ServiceType serviceType (const QString &name) const
 Gets an object representing a service type. More...
 
Application application (const QString &applicationName) const
 Get an object representing an application. More...
 
ApplicationList applicationList (const Service &service) const
 List the registered applications which support the given service. More...
 
QString serviceType () const
 Gets the service type if given in manager constructor. More...
 
void setTimeout (quint32 timeout)
 Sets the timeout for database operations. More...
 
quint32 timeout ()
 Gets the database timeout. More...
 
void setAbortOnTimeout (bool abort)
 Sets whether to abort the application when a database timeout occurs. More...
 
bool abortOnTimeout () const
 
Options options () const
 
Error lastError () const
 Gets the last error. More...
 

Detailed Description

Manager of accounts, services and providers.

The Manager offers ways to create accounts, list accounts, services and providers. It also emits signals when accounts are created and removed.

Definition at line 51 of file manager.h.

Member Enumeration Documentation

◆ Option

enum Option

Specifies options for the object.

Enumerator
DisableNotifications 

Disable all inter-process notifications

Definition at line 60 of file manager.h.

Constructor & Destructor Documentation

◆ Manager() [1/3]

Manager ( QObject *  parent = nullptr)

Constructor.

Users should check for manager->lastError() to check if manager construction was fully succesful.

Definition at line 146 of file manager.cpp.

References Error::DatabaseLocked.

◆ Manager() [2/3]

Manager ( const QString &  serviceType,
QObject *  parent = nullptr 
)

Constructs a manager initialized with service type.

This constructor should be used when there is an interest for just one service type. Such a manager has influence on some class methods. When listing the accounts and services only the ones supporting the given service type will be returned. Also the creating account with this manager will affect the acccount class method for listing services in same manner. The signal enabledEvent() will be emitted only when manager is created with this constructor. Users should check for manager->lastError() to check if manager construction was fully succesful.

Definition at line 173 of file manager.cpp.

References Error::DatabaseLocked, and Manager::serviceType().

◆ Manager() [3/3]

Manager ( Options  options,
QObject *  parent = nullptr 
)

Constructor, allowing option flags to be specified.

Users should check for lastError() to check if manager construction was fully succesful.

Definition at line 194 of file manager.cpp.

References Manager::DisableNotifications, and Manager::options().

Member Function Documentation

◆ abortOnTimeout()

bool abortOnTimeout ( ) const
Returns
Whether the application will be aborted when a database timeout occurs.

Definition at line 552 of file manager.cpp.

◆ account()

Account * account ( const AccountId &  id) const

Loads an account from the database.

Parameters
idId of the account to be retrieved.
Returns
Requested account or 0 if not found. If 0 is returned, call lastError() to find out why.
Attention
The objects returned by this method are shared, meaning that calling this method twice with the same id will return the same object. It is recommended that clients do not destroy the objects returned by this method, if there's the possibility that they are still being used in other parts of the application.

Definition at line 245 of file manager.cpp.

◆ accountCreated

accountCreated ( Accounts::AccountId  id)
signal

The signal is emitted when new account is created.

Parameters
idIdentifier of the Account

◆ accountList()

AccountIdList accountList ( const QString &  serviceType = QString()) const

Lists the accounts which support the requested service.

Parameters
serviceTypeType of service that returned accounts must support. If not given and the manager is not constructed with service type, all accounts are returned.
Returns
List of account IDs.

Definition at line 266 of file manager.cpp.

References Manager::serviceType().

◆ accountListEnabled()

AccountIdList accountListEnabled ( const QString &  serviceType = QString()) const

Lists the enabled accounts which support the requested service that also must be enabled.

Parameters
serviceTypeType of service that returned accounts must support. If not given and the manager is not constructed with service type, all enabled accounts are returned.
Returns
List of account IDs.

Definition at line 301 of file manager.cpp.

References Manager::serviceType().

◆ accountRemoved

accountRemoved ( Accounts::AccountId  id)
signal

The signal is emitted when existing account is removed.

Parameters
idIdentifier of the Account

◆ accountUpdated

accountUpdated ( Accounts::AccountId  id)
signal

The signal is emitted when any account property for a particular service is updated.

To receive this notification user has to create accounts manager using Manager(const QString &serviceType, QObject *parent) constructor. Update notification is only emitted when manager is created for particular type of service.

Parameters
idIdentifier of the Account

◆ application()

Application application ( const QString &  applicationName) const

Get an object representing an application.

Parameters
applicationNameName of the application to load.
Returns
The requested Application, or an invalid Application object if not found.

Definition at line 477 of file manager.cpp.

Referenced by Manager::applicationList(), and Manager::serviceList().

◆ applicationList()

ApplicationList applicationList ( const Service service) const

List the registered applications which support the given service.

Parameters
serviceThe service to be supported.
Returns
A list of Application objects.

Definition at line 491 of file manager.cpp.

References Manager::application(), and Manager::service().

◆ createAccount()

Account * createAccount ( const QString &  providerName)

Creates a new account.

Parameters
providerNameName of account provider.
Returns
Created account or NULL if some error occurs.

Definition at line 331 of file manager.cpp.

◆ enabledEvent

enabledEvent ( Accounts::AccountId  id)
signal

If the manager has been created with serviceType, this signal will be emitted when an account (identified by AccountId) has been modified in such a way that the application might be interested to start/stop using it: the "enabled" flag on the account or in some service supported by the account and matching the AgManager::serviceType have changed.

Note
In practice, this signal might be emitted more often than when strictly needed; applications must call Account::enabledServices() to get the current state.
Parameters
ididentifier of the Account

◆ lastError()

Error lastError ( ) const

Gets the last error.

Not all operations set/reset the error; see the individual methods' documentation to see if they set the last error or not. Call this method right after an account operation has failed; if no error occurred, the result of this method are undefined.

Returns
The last error.

Definition at line 583 of file manager.cpp.

◆ options()

Manager::Options options ( ) const
Returns
Configuration options for this object.

Definition at line 560 of file manager.cpp.

References Manager::DisableNotifications.

Referenced by Manager::Manager().

◆ provider()

Provider provider ( const QString &  providerName) const

Gets an object representing a provider.

Parameters
providerNameName of provider to get.
Returns
Requested provider or NULL if not found.

Definition at line 421 of file manager.cpp.

Referenced by Manager::providerList().

◆ providerList()

ProviderList providerList ( ) const

Gets a provider list.

Returns
List of registered providers.

Definition at line 435 of file manager.cpp.

References Manager::provider().

◆ service()

Service service ( const QString &  serviceName) const

Gets an object representing a service.

Parameters
serviceNameName of service to get.
Returns
The requested service or an invalid service if not found.

Definition at line 342 of file manager.cpp.

Referenced by Manager::applicationList(), and Manager::serviceList().

◆ serviceList() [1/2]

ServiceList serviceList ( const Application application) const

Get the list of services supported by the given application.

Parameters
applicationApplication whose services are to be retrieved.
Returns
List of Service objects.

Definition at line 393 of file manager.cpp.

References Manager::application(), and Manager::service().

◆ serviceList() [2/2]

ServiceList serviceList ( const QString &  serviceType = QString()) const

Gets the service list.

If the manager is constructed with given service type only the services which supports the service type will be returned.

Parameters
serviceTypeType of services to be listed. If not given and the manager is not constructed with service type, all services are listed.
Returns
List of Service objects.

Definition at line 360 of file manager.cpp.

References Manager::service(), and Manager::serviceType().

◆ serviceType() [1/2]

QString serviceType ( ) const

Gets the service type if given in manager constructor.

Returns
Service type or NULL if not given.

Definition at line 511 of file manager.cpp.

Referenced by Manager::accountList(), Manager::accountListEnabled(), Manager::Manager(), and Manager::serviceList().

◆ serviceType() [2/2]

ServiceType serviceType ( const QString &  name) const

Gets an object representing a service type.

Parameters
nameName of service type to load.
Returns
Requested service type or NULL if not found.

Definition at line 462 of file manager.cpp.

◆ setAbortOnTimeout()

void setAbortOnTimeout ( bool  abort)

Sets whether to abort the application when a database timeout occurs.

By default the library does not abort the application.

Definition at line 543 of file manager.cpp.

◆ setTimeout()

void setTimeout ( quint32  timeout)

Sets the timeout for database operations.

Parameters
timeoutThe new timeout in milliseconds.

This tells the library how long it is allowed to block while waiting for a locked DB to become accessible. Higher values mean a higher chance of successful reads, but also mean that the execution might be blocked for a longer time. The default is 5 seconds.

Definition at line 525 of file manager.cpp.

References Manager::timeout().

◆ timeout()

quint32 timeout ( )

Gets the database timeout.

Returns
The timeout (in milliseconds) for database operations.

Definition at line 534 of file manager.cpp.

Referenced by Manager::setTimeout().


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