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

Side by Side Diff: chrome/browser/google/google_update.h

Issue 8394042: Pass through installer errors from Google Update to the About box. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 9 years, 1 month 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/app/generated_resources.grd ('k') | chrome/browser/google/google_update.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_H_ 5 #ifndef CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_H_
6 #define CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_H_ 6 #define CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_H_
7 #pragma once 7 #pragma once
8 8
9 #include <string>
10
11 #include "base/basictypes.h" 9 #include "base/basictypes.h"
12 #include "base/memory/ref_counted.h" 10 #include "base/memory/ref_counted.h"
11 #include "base/string16.h"
13 #if defined(OS_WIN) 12 #if defined(OS_WIN)
14 #include "google_update_idl.h" 13 #include "google_update_idl.h"
15 #endif 14 #endif
16 15
17 class MessageLoop; 16 class MessageLoop;
18 namespace views { 17 namespace views {
19 class Widget; 18 class Widget;
20 } 19 }
21 20
22 // The status of the upgrade. UPGRADE_STARTED and UPGRADE_CHECK_STARTED are 21 // The status of the upgrade. UPGRADE_STARTED and UPGRADE_CHECK_STARTED are
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 // Updates can not be downloaded because the administrator has disabled them. 59 // Updates can not be downloaded because the administrator has disabled them.
61 GOOGLE_UPDATE_DISABLED_BY_POLICY, 60 GOOGLE_UPDATE_DISABLED_BY_POLICY,
62 }; 61 };
63 62
64 // The GoogleUpdateStatusListener interface is used by components to receive 63 // The GoogleUpdateStatusListener interface is used by components to receive
65 // notifications about the results of an Google Update operation. 64 // notifications about the results of an Google Update operation.
66 class GoogleUpdateStatusListener { 65 class GoogleUpdateStatusListener {
67 public: 66 public:
68 // This function is called when Google Update has finished its operation and 67 // This function is called when Google Update has finished its operation and
69 // wants to notify us about the results. |results| represents what the end 68 // wants to notify us about the results. |results| represents what the end
70 // state is, |error_code| represents what error occurred and |version| 69 // state is, |error_code| represents what error occurred, |error_string| is a
71 // specifies what new version Google Update detected (or installed). This 70 // string version of the same (might be blank) and |version| specifies what
72 // value can be a blank string, if the version tag in the Update{} block 71 // new version Google Update detected (or installed). This value can be a
73 // (in Google Update's server config for Chrome) is blank. 72 // blank string, if the version tag in the Update{} block (in Google Update's
73 // server config for Chrome) is blank.
74 virtual void OnReportResults(GoogleUpdateUpgradeResult results, 74 virtual void OnReportResults(GoogleUpdateUpgradeResult results,
75 GoogleUpdateErrorCode error_code, 75 GoogleUpdateErrorCode error_code,
76 const std::wstring& version) = 0; 76 const string16& error_string,
grt (UTC plus 2) 2011/10/26 14:35:55 nit: is this the same thing that's called |error_m
Finnur 2011/10/26 15:25:11 Good catch.
77 const string16& version) = 0;
77 }; 78 };
78 79
79 //////////////////////////////////////////////////////////////////////////////// 80 ////////////////////////////////////////////////////////////////////////////////
80 // 81 //
81 // The Google Update class is responsible for communicating with Google Update 82 // The Google Update class is responsible for communicating with Google Update
82 // and get it to perform operations on our behalf (for example, CheckForUpdate). 83 // and get it to perform operations on our behalf (for example, CheckForUpdate).
83 // This class will report back to its parent via the GoogleUpdateStatusListener 84 // This class will report back to its parent via the GoogleUpdateStatusListener
84 // interface and will delete itself after reporting back. 85 // interface and will delete itself after reporting back.
85 // 86 //
86 //////////////////////////////////////////////////////////////////////////////// 87 ////////////////////////////////////////////////////////////////////////////////
(...skipping 20 matching lines...) Expand all
107 virtual ~GoogleUpdate(); 108 virtual ~GoogleUpdate();
108 109
109 // The chromeos implementation is in browser/chromeos/google_update.cpp 110 // The chromeos implementation is in browser/chromeos/google_update.cpp
110 111
111 #if defined(OS_WIN) 112 #if defined(OS_WIN)
112 113
113 // This function reports failure from the Google Update operation to the 114 // This function reports failure from the Google Update operation to the
114 // listener. 115 // listener.
115 // Note, after this function completes, this object will have deleted itself. 116 // Note, after this function completes, this object will have deleted itself.
116 bool ReportFailure(HRESULT hr, GoogleUpdateErrorCode error_code, 117 bool ReportFailure(HRESULT hr, GoogleUpdateErrorCode error_code,
117 MessageLoop* main_loop); 118 const string16& error_message, MessageLoop* main_loop);
118 119
119 #endif 120 #endif
120 121
121 // We need to run the update check on another thread than the main thread, and 122 // We need to run the update check on another thread than the main thread, and
122 // therefore CheckForUpdate will delegate to this function. |main_loop| points 123 // therefore CheckForUpdate will delegate to this function. |main_loop| points
123 // to the message loop that we want the response to come from. 124 // to the message loop that we want the response to come from.
124 // |window| should point to a foreground window. This is needed to ensure that 125 // |window| should point to a foreground window. This is needed to ensure that
125 // Vista/Windows 7 UAC prompts show up in the foreground. It may also be null. 126 // Vista/Windows 7 UAC prompts show up in the foreground. It may also be null.
126 void InitiateGoogleUpdateCheck(bool install_if_newer, views::Widget* window, 127 void InitiateGoogleUpdateCheck(bool install_if_newer, views::Widget* window,
127 MessageLoop* main_loop); 128 MessageLoop* main_loop);
128 129
129 // This function reports the results of the GoogleUpdate operation to the 130 // This function reports the results of the GoogleUpdate operation to the
130 // listener. If results indicates an error, the error_code will indicate which 131 // listener. If results indicates an error, the |error_code| and
131 // error occurred. 132 // |error_message| will indicate which error occurred.
132 // Note, after this function completes, this object will have deleted itself. 133 // Note, after this function completes, this object will have deleted itself.
133 void ReportResults(GoogleUpdateUpgradeResult results, 134 void ReportResults(GoogleUpdateUpgradeResult results,
134 GoogleUpdateErrorCode error_code); 135 GoogleUpdateErrorCode error_code,
136 const string16& error_message);
135 137
136 // Which version string Google Update found (if a new one was available). 138 // Which version string Google Update found (if a new one was available).
137 // Otherwise, this will be blank. 139 // Otherwise, this will be blank.
138 std::wstring version_available_; 140 string16 version_available_;
139 141
140 // The listener who is interested in finding out the result of the operation. 142 // The listener who is interested in finding out the result of the operation.
141 GoogleUpdateStatusListener* listener_; 143 GoogleUpdateStatusListener* listener_;
142 144
143 DISALLOW_COPY_AND_ASSIGN(GoogleUpdate); 145 DISALLOW_COPY_AND_ASSIGN(GoogleUpdate);
144 }; 146 };
145 147
146 #endif // CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_H_ 148 #endif // CHROME_BROWSER_GOOGLE_GOOGLE_UPDATE_H_
OLDNEW
« no previous file with comments | « chrome/app/generated_resources.grd ('k') | chrome/browser/google/google_update.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698