| Index: content/utility/utility_thread.h
|
| ===================================================================
|
| --- content/utility/utility_thread.h (revision 0)
|
| +++ content/utility/utility_thread.h (working copy)
|
| @@ -2,8 +2,8 @@
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| -#ifndef CHROME_UTILITY_UTILITY_THREAD_H_
|
| -#define CHROME_UTILITY_UTILITY_THREAD_H_
|
| +#ifndef CONTENT_UTILITY_UTILITY_THREAD_H_
|
| +#define CONTENT_UTILITY_UTILITY_THREAD_H_
|
| #pragma once
|
|
|
| #include <string>
|
| @@ -11,107 +11,45 @@
|
|
|
| #include "base/basictypes.h"
|
| #include "base/string16.h"
|
| -#include "base/platform_file.h"
|
| #include "content/common/child_thread.h"
|
|
|
| -class FilePath;
|
| class IndexedDBKey;
|
| class SerializedScriptValue;
|
|
|
| -namespace gfx {
|
| -class Rect;
|
| -}
|
|
|
| -namespace IPC {
|
| -class Message;
|
| -}
|
| -
|
| -namespace printing {
|
| -struct PageRange;
|
| -}
|
| -
|
| // This class represents the background thread where the utility task runs.
|
| class UtilityThread : public ChildThread {
|
| public:
|
| UtilityThread();
|
| virtual ~UtilityThread();
|
|
|
| + // Releases the process if we are not (or no longer) in batch mode.
|
| + void ReleaseProcessIfNeeded();
|
| +
|
| // Returns the one utility thread.
|
| static UtilityThread* current() {
|
| return static_cast<UtilityThread*>(ChildThread::current());
|
| }
|
|
|
| private:
|
| - // IPC messages
|
| + // ChildThread implementation.
|
| virtual bool OnControlMessageReceived(const IPC::Message& msg);
|
| - void OnUnpackExtension(const FilePath& extension_path);
|
|
|
| - // IPC messages for web resource service.
|
| - void OnUnpackWebResource(const std::string& resource_data);
|
| -
|
| - // IPC for parsing an extensions auto-update manifest xml file.
|
| - void OnParseUpdateManifest(const std::string& xml);
|
| -
|
| - // IPC for decoding an image.
|
| - void OnDecodeImage(const std::vector<unsigned char>& encoded_data);
|
| -
|
| - // IPC for decoding an image which is base64 encoded.
|
| - void OnDecodeImageBase64(const std::string& encoded_data);
|
| -
|
| - // IPC to render a PDF into a platform metafile.
|
| - void OnRenderPDFPagesToMetafile(
|
| - base::PlatformFile pdf_file,
|
| - const FilePath& metafile_path,
|
| - const gfx::Rect& render_area,
|
| - int render_dpi,
|
| - const std::vector<printing::PageRange>& page_ranges);
|
| -
|
| -#if defined(OS_WIN)
|
| - // Helper method for Windows.
|
| - // |highest_rendered_page_number| is set to -1 on failure to render any page.
|
| - bool RenderPDFToWinMetafile(
|
| - base::PlatformFile pdf_file,
|
| - const FilePath& metafile_path,
|
| - const gfx::Rect& render_area,
|
| - int render_dpi,
|
| - const std::vector<printing::PageRange>& page_ranges,
|
| - int* highest_rendered_page_number);
|
| -#endif // defined(OS_WIN)
|
| -
|
| - // IPC for extracting IDBKeys from SerializedScriptValues, used by IndexedDB.
|
| + // IPC message handlers.
|
| void OnIDBKeysFromValuesAndKeyPath(
|
| int id,
|
| const std::vector<SerializedScriptValue>& serialized_script_values,
|
| const string16& idb_key_path);
|
| -
|
| - // IPC for injecting an IndexedDB key into a SerializedScriptValue.
|
| void OnInjectIDBKey(const IndexedDBKey& key,
|
| const SerializedScriptValue& value,
|
| const string16& key_path);
|
| -
|
| - // IPC for parsing a string of JSON into a Value.
|
| - void OnParseJSON(const std::string& json);
|
| -
|
| - // IPC to notify we'll be running in batch mode instead of quitting after
|
| - // any of the IPCs above, we'll only quit during OnBatchModeFinished().
|
| void OnBatchModeStarted();
|
| -
|
| - // IPC to notify batch mode has finished and we should now quit.
|
| void OnBatchModeFinished();
|
|
|
| - // IPC to get capabilities and defaults for the specified
|
| - // printer. Used on Windows to isolate the service process from printer driver
|
| - // crashes by executing this in a separate process. This does not run in a
|
| - // sandbox.
|
| - void OnGetPrinterCapsAndDefaults(const std::string& printer_name);
|
| -
|
| - // Releases the process if we are not (or no longer) in batch mode.
|
| - void ReleaseProcessIfNeeded();
|
| -
|
| // True when we're running in batch mode.
|
| bool batch_mode_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(UtilityThread);
|
| };
|
|
|
| -#endif // CHROME_UTILITY_UTILITY_THREAD_H_
|
| +#endif // CONTENT_UTILITY_UTILITY_THREAD_H_
|
|
|