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

Unified Diff: chrome/default_plugin/plugin_install_job_monitor.h

Issue 8851007: WIP / Do not commit (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years 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
« no previous file with comments | « chrome/default_plugin/plugin_impl_win.cc ('k') | chrome/default_plugin/plugin_install_job_monitor.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/default_plugin/plugin_install_job_monitor.h
diff --git a/chrome/default_plugin/plugin_install_job_monitor.h b/chrome/default_plugin/plugin_install_job_monitor.h
deleted file mode 100644
index 86233bcef166c48f7421860fb87d63011ebf5664..0000000000000000000000000000000000000000
--- a/chrome/default_plugin/plugin_install_job_monitor.h
+++ /dev/null
@@ -1,82 +0,0 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CHROME_DEFAULT_PLUGIN_PLUGIN_INSTALL_JOB_MONITOR_H_
-#define CHROME_DEFAULT_PLUGIN_PLUGIN_INSTALL_JOB_MONITOR_H_
-#pragma once
-
-#include <windows.h>
-
-#include "base/logging.h"
-#include "base/memory/ref_counted.h"
-#include "base/threading/thread.h"
-
-// Provides the plugin installation job monitoring functionality.
-// The PluginInstallationJobMonitorThread class represents a background
-// thread which monitors the install job completion port which is associated
-// with the job when an instance of this class is initialized.
-class PluginInstallationJobMonitorThread :
- public base::Thread,
- public base::RefCountedThreadSafe<PluginInstallationJobMonitorThread> {
-
- public:
- PluginInstallationJobMonitorThread();
-
- // Initializes the plugin install job. This involves creating the job object
- // and starting the thread which monitors the job completion port.
- // Returns true on success.
- bool Initialize();
-
- // Stops job monitoring and invokes the base Stop function.
- void Stop();
-
- // Simple setter/getters for the plugin window handle.
- void set_plugin_window(HWND plugin_window) {
- DCHECK(::IsWindow(plugin_window));
- plugin_window_ = plugin_window;
- }
-
- HWND plugin_window() const {
- return plugin_window_;
- }
-
- // Adds a process to the job object.
- //
- // Parameters:
- // process_handle
- // Handle to the process which is to be added to the plugin install job.
- // Returns true on success.
- bool AssignProcessToJob(HANDLE process_handle);
-
- protected:
- // Installs a task on our thread to call WaitForJobThread(). We
- // can't call it directly since we would deadlock (thread which
- // creates me blocks until Start() returns, and Start() doesn't
- // return until Init() does).
- virtual void Init();
-
- // Blocks on the plugin installation job completion port by invoking the
- // GetQueuedCompletionStatus API.
- // We return from this function when the job monitoring thread is stopped.
- virtual void WaitForJobThread();
-
- private:
- friend class base::RefCountedThreadSafe<PluginInstallationJobMonitorThread>;
-
- virtual ~PluginInstallationJobMonitorThread();
-
- // The install job completion port. Created in Init.
- HANDLE install_job_completion_port_;
- // Indicates that job monitoring is to be stopped
- bool stop_job_monitoring_;
- // The install job. Should be created before the job monitor thread
- // is started.
- HANDLE install_job_;
- // The plugin window handle.
- HWND plugin_window_;
-
- DISALLOW_COPY_AND_ASSIGN(PluginInstallationJobMonitorThread);
-};
-
-#endif // CHROME_DEFAULT_PLUGIN_PLUGIN_INSTALL_JOB_MONITOR_H_
« no previous file with comments | « chrome/default_plugin/plugin_impl_win.cc ('k') | chrome/default_plugin/plugin_install_job_monitor.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698