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

Unified Diff: components/copresence/rpc/http_post.h

Issue 469883002: Using API key specified from js (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Adding fingerprint test Created 6 years, 4 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: components/copresence/rpc/http_post.h
diff --git a/components/copresence/rpc/http_post.h b/components/copresence/rpc/http_post.h
index c4c6e7f46943f137869f207f884c652daeabe26f..0df9585239fc821a5d149da0f463a788e54df289 100644
--- a/components/copresence/rpc/http_post.h
+++ b/components/copresence/rpc/http_post.h
@@ -11,6 +11,7 @@
#include "base/macros.h"
#include "base/memory/scoped_ptr.h"
#include "net/url_request/url_fetcher_delegate.h"
+#include "url/gurl.h"
namespace google {
namespace protobuf {
@@ -36,33 +37,44 @@ class HttpPost : public net::URLFetcherDelegate {
typedef base::Callback<void(int, const std::string&)>
ResponseCallback;
- // An id for testing url fetching.
- static const int kUrlFetcherId = 1;
-
- // The query parameter to send Apiary tracing tokens.
- static const char kTracingTokenField[];
-
- // Create a request to the Copresence server. |url_context_getter|
- // is owned by the caller, and the context it provides must be available
- // until the request completes.
+ // Create a request to the Copresence server.
+ // |url_context_getter| is owned by the caller,
+ // and the context it provides must be available until the request completes.
HttpPost(net::URLRequestContextGetter* url_context_getter,
const std::string& server_host,
- const std::string& rpc_name,
- const std::string& tracing_token,
rkc 2014/08/13 21:45:31 Why is this taken out of the constructor?
Charlie 2014/08/13 22:53:37 All parameters to the constructor are now required
rkc 2014/08/13 23:11:36 I am not happy about using mutators instead of pas
xiyuan 2014/08/13 23:15:59 If we decided to add back |request_proto| to ctor,
- const google::protobuf::MessageLite& request_proto);
+ const std::string& rpc_name);
// HTTP requests are cancelled on delete.
virtual ~HttpPost();
+ // Add an Apiary tracing token to the request.
+ void set_tracing_token(const std::string& tracing_token);
+
+ // Add an API key to the request. If none is specified,
+ // we attempt to use Chrome's key.
+ void set_api_key(const std::string& api_key) { api_key_ = api_key; }
+
// Send an HttpPost request.
- void Start(const ResponseCallback& response_callback);
+ void Start(const ResponseCallback& response_callback,
+ const google::protobuf::MessageLite& request_proto);
private:
+ static const int kUrlFetcherId = 1;
+ static const char kApiKeyField[];
+ static const char kTracingTokenField[];
+
+ friend class HttpPostTest;
+
// Overridden from net::URLFetcherDelegate.
virtual void OnURLFetchComplete(const net::URLFetcher* source) OVERRIDE;
+ net::URLRequestContextGetter* url_context_getter_;
+ GURL url_;
+
ResponseCallback response_callback_;
+
scoped_ptr<net::URLFetcher> url_fetcher_;
+ std::string api_key_;
DISALLOW_COPY_AND_ASSIGN(HttpPost);
};

Powered by Google App Engine
This is Rietveld 408576698