Index: mojo/service_manager/service_manager.cc |
diff --git a/mojo/service_manager/service_manager.cc b/mojo/service_manager/service_manager.cc |
index fe8575dc75543cdd18c5e89f1e22bff1c38dd255..470c3d39d387dcbe25ad995e8ec71ef44c563121 100644 |
--- a/mojo/service_manager/service_manager.cc |
+++ b/mojo/service_manager/service_manager.cc |
@@ -32,6 +32,7 @@ class ServiceManager::ServiceFactory : public Shell, public ErrorHandler { |
url, |
pipe.handle_to_self.Pass()); |
} |
+ |
virtual ~ServiceFactory() {} |
void ConnectToClient(ScopedMessagePipeHandle handle) { |
@@ -88,14 +89,15 @@ ServiceManager* ServiceManager::GetInstance() { |
return &instance.Get(); |
} |
-void ServiceManager::SetLoaderForURL(ServiceLoader* loader, const GURL& gurl) { |
- DCHECK(url_to_loader_.find(gurl) == url_to_loader_.end()); |
- url_to_loader_[gurl] = loader; |
+void ServiceManager::SetLoaderForScheme(ServiceLoader* loader, |
+ const std::string& scheme) { |
+ DCHECK(scheme_to_loader_.find(scheme) == scheme_to_loader_.end()); |
+ scheme_to_loader_[scheme] = loader; |
} |
ServiceLoader* ServiceManager::GetLoaderForURL(const GURL& gurl) { |
- LoaderMap::const_iterator it = url_to_loader_.find(gurl); |
- if (it != url_to_loader_.end()) |
+ LoaderMap::const_iterator it = scheme_to_loader_.find(gurl.scheme()); |
+ if (it != scheme_to_loader_.end()) |
return it->second; |
DCHECK(default_loader_); |
return default_loader_; |