ssu
Loading...
Searching...
No Matches
Ssu Class Reference
Inheritance diagram for Ssu:

Public Types

enum  RepoFilter {
  UserFilter = 0x1 , BoardFilter = 0x2 , NoFilter = 0x3 , UserBlacklist = 0x4 ,
  Available = 0x8
}
enum  DeviceMode {
  DisableRepoManager = 0x1 , RndMode = 0x2 , ReleaseMode = 0x4 , LenientMode = 0x8 ,
  UpdateMode = 0x10 , AppInstallMode = 0x20
}
enum  DisplayType { DeviceManufacturer = 0 , DeviceModel , DeviceDesignation }
enum  EditMode { Replace = 0x1 , Add = 0x2 , Remove = 0x4 }
enum  ReturnValue { Success = 0 , ErrUpdateMode = -10 }

Public Slots

void sendRegistration (const QString &username, const QString &password)
void updateCredentials (bool force=false)
void updateStoreCredentials ()

Signals

void done ()
void registrationStatusChanged ()
void credentialsChanged ()

Public Member Functions

QPair< QString, QString > credentials (const QString &scope)
QString credentialsScope (const QString &repoName, bool rndRepo=false)
QString credentialsUrl (const QString &scope)
Q_INVOKABLE bool error ()
Q_INVOKABLE QString lastError ()
QString repoUrl (const QString &repoName, bool rndRepo=false, QHash< QString, QString > repoParameters=QHash< QString, QString >(), QHash< QString, QString > parametersOverride=QHash< QString, QString >())
Q_INVOKABLE void unregister ()
Q_INVOKABLE QString flavour ()
 See SsuCoreConfig::flavour.
Q_INVOKABLE DeviceModeFlags deviceMode ()
 See SsuCoreConfig::deviceMode.
Q_INVOKABLE QString domain ()
 See SsuCoreConfig::domain; returns printable version.
Q_INVOKABLE QString brand ()
 See SsuCoreConfig::brand.
Q_INVOKABLE bool isRegistered ()
 See SsuCoreConfig::isRegistered.
Q_INVOKABLE QDateTime lastCredentialsUpdate ()
 See SsuCoreConfig::lastCredentialsUpdate.
Q_INVOKABLE QString release (bool rnd=false)
 See SsuCoreConfig::release.
Q_INVOKABLE void setDeviceMode (DeviceModeFlags mode, enum EditMode editMode=Replace)
 See SsuCoreConfig::setDeviceMode.
Q_INVOKABLE void setFlavour (const QString &flavour)
 See SsuCoreConfig::setFlavour.
Q_INVOKABLE void setRelease (const QString &release, bool rnd=false)
 See SsuCoreConfig::setRelease.
Q_INVOKABLE void setDomain (const QString &domain)
 See SsuCoreConfig::setDomain.
Q_INVOKABLE bool useSslVerify ()
 See SsuCoreConfig::useSslVerify.
Q_INVOKABLE QStringList listDomains ()
Q_INVOKABLE void setDomainConfig (const QString &domain, QVariantMap config)
Q_INVOKABLE QVariantMap getDomainConfig (const QString &domain)

Properties

bool registered
DeviceModeFlags deviceMode
QString domain

Friends

class UrlResolverTest

Detailed Description

Definition at line 36 of file ssu.h.

Member Enumeration Documentation

◆ DeviceMode

List of possible device modes

ReleaseMode is defined to make a switch to allowing RnD and Release repositories on a device at the same time easy, if ever needed. Right now any mode where RndMode is not set is treated as ReleaseMode.

If both UpdateMode and AppInstallMode are specified the device behaves like in AppInstallMode.

Enumerator
DisableRepoManager 

Disable automagic repository management.

RndMode 

Enable RnD mode for device.

ReleaseMode 

Enable Release mode.

LenientMode 

Disable strict mode (i.e., keep unmanaged repositories).

UpdateMode 

Do repo isolation and similar bits important for updating devices.

AppInstallMode 

Do repo isolation, but keep store repository enabled.

Definition at line 67 of file ssu.h.

◆ DisplayType

A list of types ssu provides shiny values suitable for displaying

Enumerator
DeviceManufacturer 

Manufacturer, like ACME Corp. Board mappings key "deviceManufacturer".

DeviceModel 

Marketed device name, like Pogoblaster 3000. Board mappings key "prettyModel".

DeviceDesignation 

Type designation, like NCC-1701. Beard mappings key "deviceDesignation".

Definition at line 82 of file ssu.h.

◆ EditMode

Edit modes for variables containing bitmasks

Enumerator
Replace 

Replace the old value with the new one.

Add 

Make sure the given value is set in the bitmask.

Remove 

Make sure the given value is not set in the bitmask.

Definition at line 91 of file ssu.h.

◆ RepoFilter

Filters to control the output of the repository lookup methods

Enumerator
UserFilter 

Only user configured repositories.

BoardFilter 

Only global repositories.

NoFilter 

All repositories (global | user).

UserBlacklist 

User blacklist applied.

Available 

Include all defined repos, including disabled.

Definition at line 49 of file ssu.h.

◆ ReturnValue

Return codes to signal success or error conditions

Definition at line 100 of file ssu.h.

Constructor & Destructor Documentation

◆ Ssu()

Ssu::Ssu ( )

Definition at line 56 of file ssu.cpp.

Member Function Documentation

◆ brand()

QString Ssu::brand ( )

See SsuCoreConfig::brand.

Definition at line 174 of file ssu.cpp.

◆ credentials()

QPair< QString, QString > Ssu::credentials ( const QString & scope)

Find a username/password pair for the given scope

Returns
a QPair with username and password, or an empty QPair if scope is invalid

Definition at line 95 of file ssu.cpp.

◆ credentialsScope()

QString Ssu::credentialsScope ( const QString & repoName,
bool rndRepo = false )

Get the scope for a repository, taking into account different scopes for release and RnD repositories

Please note that variable scope is not yet implemented – one default scope is read from the configuration file.

Returns
a string containing the scope; it can be used to look up login credentials using credentials()

Definition at line 101 of file ssu.cpp.

◆ credentialsUrl()

QString Ssu::credentialsUrl ( const QString & scope)

Return the URL for which credentials scope is valid

Definition at line 144 of file ssu.cpp.

◆ done

void Ssu::done ( )
signal

Emitted after an asynchronous operation finished

◆ error()

bool Ssu::error ( )

Returns if the last operation was successful

Return values
truelast operation was successful
falselast operation failed, you should check lastError() for details

Definition at line 150 of file ssu.cpp.

◆ flavour()

QString Ssu::flavour ( )

See SsuCoreConfig::flavour.

Definition at line 156 of file ssu.cpp.

◆ getDomainConfig()

QVariantMap Ssu::getDomainConfig ( const QString & domain)

Definition at line 299 of file ssu.cpp.

◆ isRegistered()

bool Ssu::isRegistered ( )

See SsuCoreConfig::isRegistered.

Definition at line 179 of file ssu.cpp.

◆ lastCredentialsUpdate()

QDateTime Ssu::lastCredentialsUpdate ( )

See SsuCoreConfig::lastCredentialsUpdate.

Definition at line 185 of file ssu.cpp.

◆ lastError()

QString Ssu::lastError ( )

Return an error message for the last error encountered. The message will not be cleared, check error() to see if the last operation was successful.

Definition at line 231 of file ssu.cpp.

◆ listDomains()

QStringList Ssu::listDomains ( )

Definition at line 281 of file ssu.cpp.

◆ registrationStatusChanged

void Ssu::registrationStatusChanged ( )
signal

Emitted after the devices registration status has changed

◆ release()

QString Ssu::release ( bool rnd = false)

See SsuCoreConfig::release.

Definition at line 191 of file ssu.cpp.

◆ repoUrl()

QString Ssu::repoUrl ( const QString & repoName,
bool rndRepo = false,
QHash< QString, QString > repoParameters = QHash<QString, QString>(),
QHash< QString, QString > parametersOverride = QHash<QString, QString>() )

Resolve a repository url

Returns
the repository URL on success, an empty string on error

Definition at line 312 of file ssu.cpp.

◆ sendRegistration

void Ssu::sendRegistration ( const QString & username,
const QString & password )
slot

Attempt RND device registration, using username and password supplied

Parameters
usernameJolla username
passwordJolla password

When the operation has finished the done() signal will be sent. You can call error() to check if an error occured, and use lastError() to retrieve the last error message.

Definition at line 409 of file ssu.cpp.

◆ setDeviceMode()

void Ssu::setDeviceMode ( DeviceModeFlags mode,
enum EditMode editMode = Replace )

See SsuCoreConfig::setDeviceMode.

Definition at line 197 of file ssu.cpp.

◆ setDomain()

void Ssu::setDomain ( const QString & domain)

See SsuCoreConfig::setDomain.

Definition at line 215 of file ssu.cpp.

◆ setDomainConfig()

void Ssu::setDomainConfig ( const QString & domain,
QVariantMap config )

Definition at line 287 of file ssu.cpp.

◆ setFlavour()

void Ssu::setFlavour ( const QString & flavour)

See SsuCoreConfig::setFlavour.

Definition at line 203 of file ssu.cpp.

◆ setRelease()

void Ssu::setRelease ( const QString & release,
bool rnd = false )

See SsuCoreConfig::setRelease.

Definition at line 209 of file ssu.cpp.

◆ unregister()

void Ssu::unregister ( )

Unregister a device. This will clean all registration data from a device, though will not touch the information on ssu server; the information there has to be manually cleaned for a device we don't own anymore, but will be overwritten next time the device gets registered

Definition at line 735 of file ssu.cpp.

◆ updateCredentials

void Ssu::updateCredentials ( bool force = false)
slot

Try to update the RND repository credentials. The device needs to be registered for this to work. updateCredentials remembers the time of the last credentials update, and skips updating if only little time has elapsed since the last update. An update may be forced by setting force to true

Parameters
forceforce credentials updating

When the operation has finished the done() signal will be sent. You can call error() to check if an error occured, and use lastError() to retrieve the last error message.

Definition at line 625 of file ssu.cpp.

◆ updateStoreCredentials

void Ssu::updateStoreCredentials ( )
slot

Try to update credentials for (Jolla) store

Definition at line 707 of file ssu.cpp.

◆ useSslVerify()

bool Ssu::useSslVerify ( )

See SsuCoreConfig::useSslVerify.

Definition at line 221 of file ssu.cpp.

◆ UrlResolverTest

friend class UrlResolverTest
friend

Definition at line 40 of file ssu.h.

Property Documentation

◆ deviceMode

Ssu::DeviceModeFlags Ssu::deviceMode
read

Definition at line 43 of file ssu.h.

◆ domain

QString Ssu::domain
read

Definition at line 44 of file ssu.h.

◆ registered

bool Ssu::registered
read

Definition at line 42 of file ssu.h.


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