OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_PRINTING_CLOUD_PRINT_CLOUD_PRINT_PROXY_SERVICE_H_ | 5 #ifndef CHROME_BROWSER_PRINTING_CLOUD_PRINT_CLOUD_PRINT_PROXY_SERVICE_H_ |
6 #define CHROME_BROWSER_PRINTING_CLOUD_PRINT_CLOUD_PRINT_PROXY_SERVICE_H_ | 6 #define CHROME_BROWSER_PRINTING_CLOUD_PRINT_CLOUD_PRINT_PROXY_SERVICE_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
48 const std::string& robot_auth_code, | 48 const std::string& robot_auth_code, |
49 const std::string& robot_email, | 49 const std::string& robot_email, |
50 const std::string& user_email, | 50 const std::string& user_email, |
51 const base::DictionaryValue& user_settings); | 51 const base::DictionaryValue& user_settings); |
52 virtual void DisableForUser(); | 52 virtual void DisableForUser(); |
53 | 53 |
54 // Query the service process for the status of the cloud print proxy and | 54 // Query the service process for the status of the cloud print proxy and |
55 // update the browser prefs. | 55 // update the browser prefs. |
56 void RefreshStatusFromService(); | 56 void RefreshStatusFromService(); |
57 | 57 |
58 // Disable the service if the policy to do so is set, and once the | |
59 // disablement is verified, quit the browser. Returns true if the policy is | |
60 // not set or the connector was not enabled. | |
61 bool EnforceCloudPrintConnectorPolicyAndQuit(); | |
62 | |
63 std::string proxy_id() const { return proxy_id_; } | 58 std::string proxy_id() const { return proxy_id_; } |
64 | 59 |
65 private: | 60 private: |
66 // NotificationDelegate implementation for the token expired notification. | 61 // NotificationDelegate implementation for the token expired notification. |
67 class TokenExpiredNotificationDelegate; | 62 class TokenExpiredNotificationDelegate; |
68 friend class TokenExpiredNotificationDelegate; | 63 friend class TokenExpiredNotificationDelegate; |
69 | 64 |
70 // Methods that send an IPC to the service. | 65 // Methods that send an IPC to the service. |
71 void GetCloudPrintProxyPrinters(const PrintersCallback& callback); | 66 void GetCloudPrintProxyPrinters(const PrintersCallback& callback); |
72 void RefreshCloudPrintProxyStatus(); | 67 void RefreshCloudPrintProxyStatus(); |
(...skipping 19 matching lines...) Expand all Loading... |
92 | 87 |
93 Profile* profile_; | 88 Profile* profile_; |
94 std::string proxy_id_; | 89 std::string proxy_id_; |
95 | 90 |
96 // Virtual for testing. | 91 // Virtual for testing. |
97 virtual ServiceProcessControl* GetServiceProcessControl(); | 92 virtual ServiceProcessControl* GetServiceProcessControl(); |
98 | 93 |
99 // For watching for connector policy changes. | 94 // For watching for connector policy changes. |
100 PrefChangeRegistrar pref_change_registrar_; | 95 PrefChangeRegistrar pref_change_registrar_; |
101 | 96 |
102 // If set, continue trying to disable the connector, and quit the process | |
103 // once successful. | |
104 bool enforcing_connector_policy_; | |
105 | |
106 base::WeakPtrFactory<CloudPrintProxyService> weak_factory_; | 97 base::WeakPtrFactory<CloudPrintProxyService> weak_factory_; |
107 | 98 |
108 DISALLOW_COPY_AND_ASSIGN(CloudPrintProxyService); | 99 DISALLOW_COPY_AND_ASSIGN(CloudPrintProxyService); |
109 }; | 100 }; |
110 | 101 |
111 #endif // CHROME_BROWSER_PRINTING_CLOUD_PRINT_CLOUD_PRINT_PROXY_SERVICE_H_ | 102 #endif // CHROME_BROWSER_PRINTING_CLOUD_PRINT_CLOUD_PRINT_PROXY_SERVICE_H_ |
OLD | NEW |