OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "shell/application_manager/fetcher.h" | 5 #include "shell/application_manager/fetcher.h" |
6 | 6 |
7 #include "url/gurl.h" | 7 #include "url/gurl.h" |
8 | 8 |
9 namespace mojo { | 9 namespace mojo { |
| 10 namespace shell { |
10 | 11 |
11 const char Fetcher::kMojoMagic[] = "#!mojo "; | 12 const char Fetcher::kMojoMagic[] = "#!mojo "; |
12 const size_t Fetcher::kMaxShebangLength = 2048; | 13 const size_t Fetcher::kMaxShebangLength = 2048; |
13 | 14 |
14 Fetcher::Fetcher(const FetchCallback& loader_callback) | 15 Fetcher::Fetcher(const FetchCallback& loader_callback) |
15 : loader_callback_(loader_callback) { | 16 : loader_callback_(loader_callback) { |
16 } | 17 } |
17 | 18 |
18 Fetcher::~Fetcher() { | 19 Fetcher::~Fetcher() { |
19 } | 20 } |
20 | 21 |
21 bool Fetcher::PeekContentHandler(std::string* mojo_shebang, | 22 bool Fetcher::PeekContentHandler(std::string* mojo_shebang, |
22 GURL* mojo_content_handler_url) { | 23 GURL* mojo_content_handler_url) { |
23 // TODO(aa): I guess this should just go in ApplicationManager now. | 24 // TODO(aa): I guess this should just go in ApplicationManager now. |
24 std::string shebang; | 25 std::string shebang; |
25 if (HasMojoMagic() && PeekFirstLine(&shebang)) { | 26 if (HasMojoMagic() && PeekFirstLine(&shebang)) { |
26 GURL url(shebang.substr(arraysize(kMojoMagic) - 1, std::string::npos)); | 27 GURL url(shebang.substr(arraysize(kMojoMagic) - 1, std::string::npos)); |
27 if (url.is_valid()) { | 28 if (url.is_valid()) { |
28 *mojo_shebang = shebang; | 29 *mojo_shebang = shebang; |
29 *mojo_content_handler_url = url; | 30 *mojo_content_handler_url = url; |
30 return true; | 31 return true; |
31 } | 32 } |
32 } | 33 } |
33 return false; | 34 return false; |
34 } | 35 } |
35 | 36 |
| 37 } // namespace shell |
36 } // namespace mojo | 38 } // namespace mojo |
OLD | NEW |