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

Unified Diff: chrome/browser/extensions/api/cloud_print_private/cloud_print_private_api.h

Issue 11037005: New Cloud Print Private API. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 3 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: chrome/browser/extensions/api/cloud_print_private/cloud_print_private_api.h
diff --git a/chrome/browser/extensions/api/cloud_print_private/cloud_print_private_api.h b/chrome/browser/extensions/api/cloud_print_private/cloud_print_private_api.h
index d5c9739a8d0095aa350a6b318b3444af54364e7c..bcbd08363db92bb040739a591c8e7ec8eb4a1c25 100644
--- a/chrome/browser/extensions/api/cloud_print_private/cloud_print_private_api.h
+++ b/chrome/browser/extensions/api/cloud_print_private/cloud_print_private_api.h
@@ -6,23 +6,70 @@
#define CHROME_BROWSER_EXTENSIONS_API_CLOUD_PRINT_PRIVATE_CLOUD_PRINT_PRIVATE_API_H_
#include <string>
+#include <vector>
+
#include "chrome/browser/extensions/extension_function.h"
namespace extensions {
-class CloudPrintSetCredentialsFunction : public AsyncExtensionFunction {
+// For use only in tests.
+class CloudPrintTestsDelegate {
+ public:
+ CloudPrintTestsDelegate();
+ virtual ~CloudPrintTestsDelegate();
+
+ virtual void SetupConnector(
+ const std::string& user_email,
+ const std::string& robot_email,
+ const std::string& credentials,
+ bool connect_new_printers,
+ const base::ListValue* printer_blacklist) = 0;
+
+ virtual std::string GetHostName() = 0;
+
+ virtual std::vector<std::string> GetPrinters() = 0;
+
+ private:
+ DISALLOW_COPY_AND_ASSIGN(CloudPrintTestsDelegate);
+};
+
+class CloudPrintSetupConnectorFunction : public AsyncExtensionFunction {
+ public:
+ DECLARE_EXTENSION_FUNCTION_NAME("cloudPrintPrivate.setupConnector");
+
+ CloudPrintSetupConnectorFunction();
+
+ protected:
+ virtual ~CloudPrintSetupConnectorFunction();
+
+ // ExtensionFunction:
+ virtual bool RunImpl() OVERRIDE;
+};
+
+class CloudPrintGetHostNameFunction : public AsyncExtensionFunction {
public:
- DECLARE_EXTENSION_FUNCTION_NAME("cloudPrintPrivate.setCredentials");
+ DECLARE_EXTENSION_FUNCTION_NAME("cloudPrintPrivate.getHostName");
- CloudPrintSetCredentialsFunction();
+ CloudPrintGetHostNameFunction();
- // For use only in tests - sets a flag that can cause this function to not
- // actually set the credentials but instead simply reflect the passed in
- // arguments appended together as one string back in results_.
- static void SetTestMode(bool test_mode_enabled);
+ protected:
+ virtual ~CloudPrintGetHostNameFunction();
+
+ // ExtensionFunction:
+ virtual bool RunImpl() OVERRIDE;
+};
+
+class CloudPrintGetPrintersFunction : public AsyncExtensionFunction {
+ public:
+ DECLARE_EXTENSION_FUNCTION_NAME("cloudPrintPrivate.getPrinters");
+
+ CloudPrintGetPrintersFunction();
protected:
- virtual ~CloudPrintSetCredentialsFunction();
+ virtual ~CloudPrintGetPrintersFunction();
+
+ void CollectPrinters();
+ void ReturnResult(const base::ListValue* printers);
// ExtensionFunction:
virtual bool RunImpl() OVERRIDE;

Powered by Google App Engine
This is Rietveld 408576698