diff options
Diffstat (limited to 'sapmanager.cc')
-rw-r--r-- | sapmanager.cc | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/sapmanager.cc b/sapmanager.cc index ab3fcd0..9d72433 100644 --- a/sapmanager.cc +++ b/sapmanager.cc @@ -91,13 +91,13 @@ SAPServiceInfo SAPManager::serviceInfo(int agentId) const return _agents.value(agentId).info; } -QSet<QString> SAPManager::allProfiles() +QSet<QString> SAPManager::allProfiles() const { return QSet<QString>::fromList(_consumerProfiles.keys()) + QSet<QString>::fromList(_providerProfiles.keys()); } -QSet<SAPAgent*> SAPManager::allAgents() +QSet<SAPAgent*> SAPManager::allAgents() const { QSet<SAPAgent*> agents; foreach (const RegisteredAgent &ragent, _agents) { @@ -106,6 +106,32 @@ QSet<SAPAgent*> SAPManager::allAgents() return agents; } +void SAPManager::registerApplicationPackage(const RegisteredApplication &app) +{ + _pkgs.insert(app.package, app); +} + +void SAPManager::registerApplicationPackage(const QString &package, const QString &name, int version, bool preinstalled) +{ + RegisteredApplication app; + app.package = package; + app.name = name; + if (app.name.isEmpty()) app.name = package; + app.version = version; + app.preinstalled = preinstalled; + registerApplicationPackage(app); +} + +void SAPManager::unregisterApplicationPackage(const QString &package) +{ + _pkgs.remove(package); +} + +QList<SAPManager::RegisteredApplication> SAPManager::allPackages() const +{ + return _pkgs.values(); +} + int SAPManager::findUnusedAgentId() const { if (_agents.size() > 20000) { |