123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved. 223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 323730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)// found in the LICENSE file. 423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 5effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch#include "sync/internal_api/public/events/configure_get_updates_request_event.h" 623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 723730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)#include "base/strings/stringprintf.h" 823730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)#include "sync/protocol/proto_enum_conversions.h" 923730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)#include "sync/protocol/proto_value_conversions.h" 1023730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 1123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)namespace syncer { 1223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 1323730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)ConfigureGetUpdatesRequestEvent::ConfigureGetUpdatesRequestEvent( 1423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) base::Time timestamp, 1523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) sync_pb::SyncEnums::GetUpdatesOrigin origin, 1623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) const sync_pb::ClientToServerMessage& request) 1723730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) : timestamp_(timestamp), 1823730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) origin_(origin), 1923730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) request_(request) { } 2023730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 2123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)ConfigureGetUpdatesRequestEvent::~ConfigureGetUpdatesRequestEvent() {} 2223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 2323730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)base::Time ConfigureGetUpdatesRequestEvent::GetTimestamp() const { 2423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) return timestamp_; 2523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)} 2623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 2723730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)std::string ConfigureGetUpdatesRequestEvent::GetType() const { 2823730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) return "Initial GetUpdates"; 2923730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)} 3023730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 3123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)std::string ConfigureGetUpdatesRequestEvent::GetDetails() const { 3223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) return base::StringPrintf("Reason: %s", GetUpdatesOriginString(origin_)); 3323730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)} 3423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 3523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)scoped_ptr<base::DictionaryValue> 3623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)ConfigureGetUpdatesRequestEvent::GetProtoMessage() const { 3723730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) return scoped_ptr<base::DictionaryValue>( 3823730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) ClientToServerMessageToValue(request_, false)); 3923730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)} 4023730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 4123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)scoped_ptr<ProtocolEvent> ConfigureGetUpdatesRequestEvent::Clone() const { 4223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) return scoped_ptr<ProtocolEvent>( 4323730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) new ConfigureGetUpdatesRequestEvent( 4423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) timestamp_, 4523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) origin_, 4623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) request_)); 4723730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)} 4823730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles) 4923730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)} // namespace syncer 50