OLD | NEW |
| (Empty) |
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 | |
3 // found in the LICENSE file. | |
4 | |
5 #include "sync/internal_api/public/events/normal_get_updates_request_event.h" | |
6 | |
7 #include "base/strings/stringprintf.h" | |
8 #include "sync/protocol/proto_value_conversions.h" | |
9 #include "sync/sessions/nudge_tracker.h" | |
10 | |
11 namespace syncer { | |
12 | |
13 NormalGetUpdatesRequestEvent::NormalGetUpdatesRequestEvent( | |
14 base::Time timestamp, | |
15 const sessions::NudgeTracker& nudge_tracker, | |
16 const sync_pb::ClientToServerMessage& request) | |
17 : timestamp_(timestamp), | |
18 nudged_types_(nudge_tracker.GetNudgedTypes()), | |
19 notified_types_(nudge_tracker.GetNotifiedTypes()), | |
20 refresh_requested_types_(nudge_tracker.GetRefreshRequestedTypes()), | |
21 is_retry_(nudge_tracker.IsRetryRequired()), | |
22 request_(request) { } | |
23 | |
24 NormalGetUpdatesRequestEvent::~NormalGetUpdatesRequestEvent() {} | |
25 | |
26 base::Time NormalGetUpdatesRequestEvent::GetTimestamp() const { | |
27 return timestamp_; | |
28 } | |
29 | |
30 std::string NormalGetUpdatesRequestEvent::GetType() const { | |
31 return "Normal GetUpdate request"; | |
32 } | |
33 | |
34 std::string NormalGetUpdatesRequestEvent::GetDetails() const { | |
35 std::string details; | |
36 | |
37 if (!nudged_types_.Empty()) { | |
38 if (!details.empty()) | |
39 details.append("\n"); | |
40 details.append(base::StringPrintf( | |
41 "Nudged types: %s", | |
42 ModelTypeSetToString(nudged_types_).c_str())); | |
43 } | |
44 | |
45 if (!notified_types_.Empty()) { | |
46 if (!details.empty()) | |
47 details.append("\n"); | |
48 details.append(base::StringPrintf( | |
49 "Notified types: %s", | |
50 ModelTypeSetToString(notified_types_).c_str())); | |
51 } | |
52 | |
53 if (!refresh_requested_types_.Empty()) { | |
54 if (!details.empty()) | |
55 details.append("\n"); | |
56 details.append(base::StringPrintf( | |
57 "Refresh requested types: %s", | |
58 ModelTypeSetToString(refresh_requested_types_).c_str())); | |
59 } | |
60 | |
61 if (is_retry_) { | |
62 if (!details.empty()) | |
63 details.append("\n"); | |
64 details.append(base::StringPrintf("Is retry: True")); | |
65 } | |
66 | |
67 return details; | |
68 } | |
69 | |
70 std::unique_ptr<base::DictionaryValue> | |
71 NormalGetUpdatesRequestEvent::GetProtoMessage() const { | |
72 return std::unique_ptr<base::DictionaryValue>( | |
73 ClientToServerMessageToValue(request_, false)); | |
74 } | |
75 | |
76 std::unique_ptr<ProtocolEvent> NormalGetUpdatesRequestEvent::Clone() const { | |
77 return std::unique_ptr<ProtocolEvent>(new NormalGetUpdatesRequestEvent( | |
78 timestamp_, nudged_types_, notified_types_, refresh_requested_types_, | |
79 is_retry_, request_)); | |
80 } | |
81 | |
82 NormalGetUpdatesRequestEvent::NormalGetUpdatesRequestEvent( | |
83 base::Time timestamp, | |
84 ModelTypeSet nudged_types, | |
85 ModelTypeSet notified_types, | |
86 ModelTypeSet refresh_requested_types, | |
87 bool is_retry, | |
88 sync_pb::ClientToServerMessage request) | |
89 : timestamp_(timestamp), | |
90 nudged_types_(nudged_types), | |
91 notified_types_(notified_types), | |
92 refresh_requested_types_(refresh_requested_types), | |
93 is_retry_(is_retry), | |
94 request_(request) {} | |
95 | |
96 } // namespace syncer | |
OLD | NEW |