blob: f842ac47ee6b65b0870645a52d44596ef42894c8 [file] [log] [blame]
// Copyright 2018 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef COMPONENTS_SYNC_MODEL_DATA_TYPE_ACTIVATION_REQUEST_H_
#define COMPONENTS_SYNC_MODEL_DATA_TYPE_ACTIVATION_REQUEST_H_
#include <string>
#include "base/time/time.h"
#include "components/sync/base/storage_option.h"
#include "components/sync/model/model_error.h"
namespace syncer {
// The state passed from ModelTypeController to the delegate during DataType
// activation.
struct DataTypeActivationRequest {
DataTypeActivationRequest();
DataTypeActivationRequest(const DataTypeActivationRequest& request);
DataTypeActivationRequest(DataTypeActivationRequest&& request);
~DataTypeActivationRequest();
DataTypeActivationRequest& operator=(
const DataTypeActivationRequest& request);
DataTypeActivationRequest& operator=(DataTypeActivationRequest&& request);
ModelErrorHandler error_handler;
std::string authenticated_account_id;
std::string cache_guid;
StorageOption storage_option = STORAGE_ON_DISK;
// The start time of the confuguration this activation is part of.
base::Time configuration_start_time;
};
} // namespace syncer
#endif // COMPONENTS_SYNC_MODEL_DATA_TYPE_ACTIVATION_REQUEST_H_