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/configure_get_updates_request_event.h"
6
7 #include "base/strings/stringprintf.h"
8 #include "sync/protocol/proto_enum_conversions.h"
9 #include "sync/protocol/proto_value_conversions.h"
10
11 namespace syncer {
12
ConfigureGetUpdatesRequestEvent(base::Time timestamp,sync_pb::SyncEnums::GetUpdatesOrigin origin,const sync_pb::ClientToServerMessage & request)13 ConfigureGetUpdatesRequestEvent::ConfigureGetUpdatesRequestEvent(
14 base::Time timestamp,
15 sync_pb::SyncEnums::GetUpdatesOrigin origin,
16 const sync_pb::ClientToServerMessage& request)
17 : timestamp_(timestamp),
18 origin_(origin),
19 request_(request) { }
20
~ConfigureGetUpdatesRequestEvent()21 ConfigureGetUpdatesRequestEvent::~ConfigureGetUpdatesRequestEvent() {}
22
GetTimestamp() const23 base::Time ConfigureGetUpdatesRequestEvent::GetTimestamp() const {
24 return timestamp_;
25 }
26
GetType() const27 std::string ConfigureGetUpdatesRequestEvent::GetType() const {
28 return "Initial GetUpdates";
29 }
30
GetDetails() const31 std::string ConfigureGetUpdatesRequestEvent::GetDetails() const {
32 return base::StringPrintf("Reason: %s", GetUpdatesOriginString(origin_));
33 }
34
35 scoped_ptr<base::DictionaryValue>
GetProtoMessage() const36 ConfigureGetUpdatesRequestEvent::GetProtoMessage() const {
37 return scoped_ptr<base::DictionaryValue>(
38 ClientToServerMessageToValue(request_, false));
39 }
40
Clone() const41 scoped_ptr<ProtocolEvent> ConfigureGetUpdatesRequestEvent::Clone() const {
42 return scoped_ptr<ProtocolEvent>(
43 new ConfigureGetUpdatesRequestEvent(
44 timestamp_,
45 origin_,
46 request_));
47 }
48
49 } // namespace syncer
50