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