OLD | NEW |
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "net/base/net_module.h" | 5 #include "net/base/net_module.h" |
6 | 6 |
7 namespace net { | 7 namespace net { |
8 | 8 |
9 static NetModule::ResourceProvider resource_provider; | 9 static NetModule::ResourceProvider resource_provider; |
10 | 10 |
11 // static | 11 // static |
12 void NetModule::SetResourceProvider(ResourceProvider func) { | 12 void NetModule::SetResourceProvider(ResourceProvider func) { |
13 resource_provider = func; | 13 resource_provider = func; |
14 } | 14 } |
15 | 15 |
16 // static | 16 // static |
17 std::string NetModule::GetResource(int key) { | 17 StringPiece NetModule::GetResource(int key) { |
18 // avoid thread safety issues by copying provider address to a local var | 18 // avoid thread safety issues by copying provider address to a local var |
19 ResourceProvider func = resource_provider; | 19 ResourceProvider func = resource_provider; |
20 return func ? func(key) : std::string(); | 20 return func ? func(key) : StringPiece(); |
21 } | 21 } |
22 | 22 |
23 } // namespace net | 23 } // namespace net |
24 | 24 |
OLD | NEW |