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

Side by Side Diff: components/cryptauth/cryptauth_client_impl.h

Issue 2888053003: Network traffic annotation added to OAuth2ApiCallFlow and its subclasses. (Closed)
Patch Set: Annotations updated. Created 3 years, 5 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 unified diff | Download patch
« no previous file with comments | « components/cryptauth/cryptauth_client.h ('k') | components/cryptauth/cryptauth_client_impl.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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 COMPONENTS_CRYPTAUTH_CRYPTAUTH_CLIENT_IMPL_H_ 5 #ifndef COMPONENTS_CRYPTAUTH_CRYPTAUTH_CLIENT_IMPL_H_
6 #define COMPONENTS_CRYPTAUTH_CRYPTAUTH_CLIENT_IMPL_H_ 6 #define COMPONENTS_CRYPTAUTH_CRYPTAUTH_CLIENT_IMPL_H_
7 7
8 #include "base/macros.h" 8 #include "base/macros.h"
9 #include "base/memory/weak_ptr.h" 9 #include "base/memory/weak_ptr.h"
10 #include "components/cryptauth/cryptauth_access_token_fetcher.h" 10 #include "components/cryptauth/cryptauth_access_token_fetcher.h"
11 #include "components/cryptauth/cryptauth_api_call_flow.h" 11 #include "components/cryptauth/cryptauth_api_call_flow.h"
12 #include "components/cryptauth/cryptauth_client.h" 12 #include "components/cryptauth/cryptauth_client.h"
13 #include "components/cryptauth/proto/cryptauth_api.pb.h" 13 #include "components/cryptauth/proto/cryptauth_api.pb.h"
14 #include "net/traffic_annotation/network_traffic_annotation.h"
14 #include "net/url_request/url_request_context_getter.h" 15 #include "net/url_request/url_request_context_getter.h"
15 16
16 class OAuth2TokenService; 17 class OAuth2TokenService;
17 18
18 namespace cryptauth { 19 namespace cryptauth {
19 20
20 // Implementation of CryptAuthClient. 21 // Implementation of CryptAuthClient.
21 // Note: There is no need to set the |device_classifier| field in request 22 // Note: There is no need to set the |device_classifier| field in request
22 // messages. CryptAuthClient will fill this field for all requests. 23 // messages. CryptAuthClient will fill this field for all requests.
23 class CryptAuthClientImpl : public CryptAuthClient { 24 class CryptAuthClientImpl : public CryptAuthClient {
24 public: 25 public:
25 typedef base::Callback<void(const std::string&)> ErrorCallback; 26 typedef base::Callback<void(const std::string&)> ErrorCallback;
26 27
27 // Creates the client using |url_request_context| to make the HTTP request 28 // Creates the client using |url_request_context| to make the HTTP request
28 // through |api_call_flow|. CryptAuthClientImpl takes ownership of 29 // through |api_call_flow|. CryptAuthClientImpl takes ownership of
29 // |access_token_fetcher|, which provides the access token authorizing 30 // |access_token_fetcher|, which provides the access token authorizing
30 // CryptAuth requests. The |device_classifier| argument contains basic device 31 // CryptAuth requests. The |device_classifier| argument contains basic device
31 // information of the caller (e.g. version and device type). 32 // information of the caller (e.g. version and device type).
32 CryptAuthClientImpl( 33 CryptAuthClientImpl(
33 std::unique_ptr<CryptAuthApiCallFlow> api_call_flow, 34 std::unique_ptr<CryptAuthApiCallFlow> api_call_flow,
34 std::unique_ptr<CryptAuthAccessTokenFetcher> access_token_fetcher, 35 std::unique_ptr<CryptAuthAccessTokenFetcher> access_token_fetcher,
35 scoped_refptr<net::URLRequestContextGetter> url_request_context, 36 scoped_refptr<net::URLRequestContextGetter> url_request_context,
36 const DeviceClassifier& device_classifier); 37 const DeviceClassifier& device_classifier);
37 ~CryptAuthClientImpl() override; 38 ~CryptAuthClientImpl() override;
38 39
39 // CryptAuthClient: 40 // CryptAuthClient:
40 void GetMyDevices(const GetMyDevicesRequest& request, 41 void GetMyDevices(const GetMyDevicesRequest& request,
41 const GetMyDevicesCallback& callback, 42 const GetMyDevicesCallback& callback,
42 const ErrorCallback& error_callback) override; 43 const ErrorCallback& error_callback,
44 const net::PartialNetworkTrafficAnnotationTag&
45 partial_traffic_annotation) override;
43 void FindEligibleUnlockDevices( 46 void FindEligibleUnlockDevices(
44 const FindEligibleUnlockDevicesRequest& request, 47 const FindEligibleUnlockDevicesRequest& request,
45 const FindEligibleUnlockDevicesCallback& callback, 48 const FindEligibleUnlockDevicesCallback& callback,
46 const ErrorCallback& error_callback) override; 49 const ErrorCallback& error_callback) override;
47 void SendDeviceSyncTickle( 50 void SendDeviceSyncTickle(const SendDeviceSyncTickleRequest& request,
48 const SendDeviceSyncTickleRequest& request, 51 const SendDeviceSyncTickleCallback& callback,
49 const SendDeviceSyncTickleCallback& callback, 52 const ErrorCallback& error_callback,
50 const ErrorCallback& error_callback) override; 53 const net::PartialNetworkTrafficAnnotationTag&
54 partial_traffic_annotation) override;
51 void ToggleEasyUnlock(const ToggleEasyUnlockRequest& request, 55 void ToggleEasyUnlock(const ToggleEasyUnlockRequest& request,
52 const ToggleEasyUnlockCallback& callback, 56 const ToggleEasyUnlockCallback& callback,
53 const ErrorCallback& error_callback) override; 57 const ErrorCallback& error_callback) override;
54 void SetupEnrollment(const SetupEnrollmentRequest& request, 58 void SetupEnrollment(const SetupEnrollmentRequest& request,
55 const SetupEnrollmentCallback& callback, 59 const SetupEnrollmentCallback& callback,
56 const ErrorCallback& error_callback) override; 60 const ErrorCallback& error_callback) override;
57 void FinishEnrollment(const FinishEnrollmentRequest& request, 61 void FinishEnrollment(const FinishEnrollmentRequest& request,
58 const FinishEnrollmentCallback& callback, 62 const FinishEnrollmentCallback& callback,
59 const ErrorCallback& error_callback) override; 63 const ErrorCallback& error_callback) override;
60 std::string GetAccessTokenUsed() override; 64 std::string GetAccessTokenUsed() override;
61 65
62 private: 66 private:
63 // Starts a call to the API given by |request_path|, with the templated 67 // Starts a call to the API given by |request_path|, with the templated
64 // request and response types. The client first fetches the access token and 68 // request and response types. The client first fetches the access token and
65 // then makes the HTTP request. 69 // then makes the HTTP request.
66 template <class RequestProto, class ResponseProto> 70 template <class RequestProto, class ResponseProto>
67 void MakeApiCall( 71 void MakeApiCall(
68 const std::string& request_path, 72 const std::string& request_path,
69 const RequestProto& request_proto, 73 const RequestProto& request_proto,
70 const base::Callback<void(const ResponseProto&)>& response_callback, 74 const base::Callback<void(const ResponseProto&)>& response_callback,
71 const ErrorCallback& error_callback); 75 const ErrorCallback& error_callback,
76 const net::PartialNetworkTrafficAnnotationTag&
77 partial_traffic_annotation);
72 78
73 // Called when the access token is obtained so the API request can be made. 79 // Called when the access token is obtained so the API request can be made.
74 template <class ResponseProto> 80 template <class ResponseProto>
75 void OnAccessTokenFetched( 81 void OnAccessTokenFetched(
76 const std::string& serialized_request, 82 const std::string& serialized_request,
77 const base::Callback<void(const ResponseProto&)>& response_callback, 83 const base::Callback<void(const ResponseProto&)>& response_callback,
78 const std::string& access_token); 84 const std::string& access_token);
79 85
80 // Called with CryptAuthApiCallFlow completes successfully to deserialize and 86 // Called with CryptAuthApiCallFlow completes successfully to deserialize and
81 // return the result. 87 // return the result.
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
141 const std::string account_id_; 147 const std::string account_id_;
142 const scoped_refptr<net::URLRequestContextGetter> url_request_context_; 148 const scoped_refptr<net::URLRequestContextGetter> url_request_context_;
143 const DeviceClassifier device_classifier_; 149 const DeviceClassifier device_classifier_;
144 150
145 DISALLOW_COPY_AND_ASSIGN(CryptAuthClientFactoryImpl); 151 DISALLOW_COPY_AND_ASSIGN(CryptAuthClientFactoryImpl);
146 }; 152 };
147 153
148 } // namespace cryptauth 154 } // namespace cryptauth
149 155
150 #endif // COMPONENTS_CRYPTAUTH_CRYPTAUTH_CLIENT_IMPL_H_ 156 #endif // COMPONENTS_CRYPTAUTH_CRYPTAUTH_CLIENT_IMPL_H_
OLDNEW
« no previous file with comments | « components/cryptauth/cryptauth_client.h ('k') | components/cryptauth/cryptauth_client_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698