1 // Copyright (c) 2011 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 #ifndef CHROME_BROWSER_EXTENSIONS_CONVERT_USER_SCRIPT_H_ 6 #define CHROME_BROWSER_EXTENSIONS_CONVERT_USER_SCRIPT_H_ 7 #pragma once 8 9 #include <string> 10 11 #include "base/memory/ref_counted.h" 12 13 class Extension; 14 class FilePath; 15 class GURL; 16 17 // Wraps the specified user script in an extension. The extension is created 18 // unpacked in the system temp dir. Returns a valid extension that the caller 19 // should take ownership on success, or NULL and |error| on failure. 20 // 21 // NOTE: This function does file IO and should not be called on the UI thread. 22 // NOTE: The caller takes ownership of the directory at extension->path() on the 23 // returned object. 24 scoped_refptr<Extension> ConvertUserScriptToExtension( 25 const FilePath& user_script, const GURL& original_url, std::string* error); 26 27 #endif // CHROME_BROWSER_EXTENSIONS_CONVERT_USER_SCRIPT_H_ 28