Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1986)

Unified Diff: content/utility/utility_thread.h

Issue 6995095: Move UtilityProcessHost to content and move the message sending/dispatching to the clients. This... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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_

Powered by Google App Engine
This is Rietveld 408576698