| Index: components/download/internal/proto_conversions.h
|
| diff --git a/components/download/internal/proto_conversions.h b/components/download/internal/proto_conversions.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..4d2e4e53661e5585e58e02de3368634c1c609cee
|
| --- /dev/null
|
| +++ b/components/download/internal/proto_conversions.h
|
| @@ -0,0 +1,64 @@
|
| +// Copyright 2017 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_DOWNLOAD_INTERNAL_PROTO_CONVERSIONS_H_
|
| +#define COMPONENTS_DOWNLOAD_INTERNAL_PROTO_CONVERSIONS_H_
|
| +
|
| +#include "components/download/internal/entry.h"
|
| +#include "components/download/internal/proto/entry.pb.h"
|
| +#include "components/download/internal/proto/request.pb.h"
|
| +#include "components/download/internal/proto/scheduling.pb.h"
|
| +
|
| +namespace download {
|
| +
|
| +class ProtoConversions {
|
| + public:
|
| + static Entry EntryFromProto(const protodb::Entry& proto);
|
| +
|
| + static protodb::Entry EntryToProto(const Entry& entry);
|
| +
|
| + static std::unique_ptr<std::vector<Entry>> EntryVectorFromProto(
|
| + std::unique_ptr<std::vector<protodb::Entry>> proto);
|
| +
|
| + static std::unique_ptr<std::vector<protodb::Entry>> EntryVectorToProto(
|
| + std::unique_ptr<std::vector<Entry>> entries);
|
| +
|
| + protected:
|
| + static protodb::Entry_State RequestStateToProto(Entry::State state);
|
| + static Entry::State RequestStateFromProto(protodb::Entry_State state);
|
| +
|
| + static protodb::DownloadClient DownloadClientToProto(DownloadClient client);
|
| + static DownloadClient DownloadClientFromProto(protodb::DownloadClient client);
|
| +
|
| + static SchedulingParams::NetworkRequirements NetworkRequirementsFromProto(
|
| + protodb::SchedulingParams_NetworkRequirements network_requirements);
|
| + static protodb::SchedulingParams_NetworkRequirements
|
| + NetworkRequirementsToProto(
|
| + SchedulingParams::NetworkRequirements network_requirements);
|
| +
|
| + static SchedulingParams::BatteryRequirements BatteryRequirementsFromProto(
|
| + protodb::SchedulingParams_BatteryRequirements battery_requirements);
|
| + static protodb::SchedulingParams_BatteryRequirements
|
| + BatteryRequirementsToProto(
|
| + SchedulingParams::BatteryRequirements battery_requirements);
|
| +
|
| + static SchedulingParams::Priority SchedulingPriorityFromProto(
|
| + protodb::SchedulingParams_Priority priority);
|
| + static protodb::SchedulingParams_Priority SchedulingPriorityToProto(
|
| + SchedulingParams::Priority priority);
|
| +
|
| + static SchedulingParams SchedulingParamsFromProto(
|
| + const protodb::SchedulingParams& proto);
|
| + static void SchedulingParamsToProto(const SchedulingParams& scheduling_params,
|
| + protodb::SchedulingParams* proto);
|
| +
|
| + static RequestParams RequestParamsFromProto(
|
| + const protodb::RequestParams& proto);
|
| + static void RequestParamsToProto(const RequestParams& request_params,
|
| + protodb::RequestParams* proto);
|
| +};
|
| +
|
| +} // namespace download
|
| +
|
| +#endif // COMPONENTS_DOWNLOAD_INTERNAL_PROTO_CONVERSIONS_H_
|
|
|