aboutsummaryrefslogtreecommitdiff
path: root/lib/service/service.cpp
diff options
context:
space:
mode:
authorghost <andreas.monzner@multimedia-labs.de>2010-11-23 13:58:30 +0100
committerghost <andreas.monzner@multimedia-labs.de>2010-11-23 13:58:30 +0100
commit7b2960a205f3c3e3b421d1664cd38644b3ffb679 (patch)
treed57819fb0ff1eb5e64638bc584c54ae18816043f /lib/service/service.cpp
parentfc83dfbe60f36712953498b20a1c2f10737e7685 (diff)
parent7199d3c37e7e7065bd6943702b5864fa5186b9a8 (diff)
downloadenigma2-7b2960a205f3c3e3b421d1664cd38644b3ffb679.tar.gz
enigma2-7b2960a205f3c3e3b421d1664cd38644b3ffb679.zip
Merge branch 'bug_615_replace_rawfile'
Diffstat (limited to 'lib/service/service.cpp')
-rw-r--r--lib/service/service.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/service/service.cpp b/lib/service/service.cpp
index eb2757ab..8c674c5e 100644
--- a/lib/service/service.cpp
+++ b/lib/service/service.cpp
@@ -201,6 +201,25 @@ RESULT eServiceCenter::removeServiceFactory(int id)
return 0;
}
+RESULT eServiceCenter::addFactoryExtension(int id, const char *extension)
+{
+ std::map<int, std::list<std::string> >::iterator it = extensions.find(id);
+ if (it == extensions.end())
+ return -1;
+ it->second.push_back(extension);
+ return 0;
+}
+
+RESULT eServiceCenter::removeFactoryExtension(int id, const char *extension)
+{
+ std::map<int, std::list<std::string> >::iterator it = extensions.find(id);
+ if (it == extensions.end())
+ return -1;
+ it->second.remove(extension);
+ return 0;
+}
+
+
int eServiceCenter::getServiceTypeForExtension(const char *str)
{
for (std::map<int, std::list<std::string> >::iterator sit(extensions.begin()); sit != extensions.end(); ++sit)