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 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 21 ConfigureGetUpdatesRequestEvent::~ConfigureGetUpdatesRequestEvent() {} 22 23 base::Time ConfigureGetUpdatesRequestEvent::GetTimestamp() const { 24 return timestamp_; 25 } 26 27 std::string ConfigureGetUpdatesRequestEvent::GetType() const { 28 return "Initial GetUpdates"; 29 } 30 31 std::string ConfigureGetUpdatesRequestEvent::GetDetails() const { 32 return base::StringPrintf("Reason: %s", GetUpdatesOriginString(origin_)); 33 } 34 35 scoped_ptr<base::DictionaryValue> 36 ConfigureGetUpdatesRequestEvent::GetProtoMessage() const { 37 return scoped_ptr<base::DictionaryValue>( 38 ClientToServerMessageToValue(request_, false)); 39 } 40 41 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