blob: 6283b1dbea1ea180dff8b06319f14ffeeb0f3e98 [file] [log] [blame]
Yifan Hongdaac7322019-11-07 10:48:26 -08001//
2// Copyright (C) 2019 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
17#include <stdint.h>
18
Yifan Hong90965502020-02-19 15:22:47 -080019#include <memory>
Yifan Hongdaac7322019-11-07 10:48:26 -080020#include <string>
21
22#include <base/logging.h>
Kelvin Zhang34618522020-09-28 09:21:02 -040023#include <libsnapshot/cow_writer.h>
Yifan Hongdaac7322019-11-07 10:48:26 -080024
25#include "update_engine/common/dynamic_partition_control_stub.h"
26
27namespace chromeos_update_engine {
28
29FeatureFlag DynamicPartitionControlStub::GetDynamicPartitionsFeatureFlag() {
30 return FeatureFlag(FeatureFlag::Value::NONE);
31}
32
33FeatureFlag DynamicPartitionControlStub::GetVirtualAbFeatureFlag() {
34 return FeatureFlag(FeatureFlag::Value::NONE);
35}
36
Kelvin Zhangda1b3142020-09-24 17:09:02 -040037FeatureFlag DynamicPartitionControlStub::GetVirtualAbCompressionFeatureFlag() {
38 return FeatureFlag(FeatureFlag::Value::NONE);
39}
40
Kelvin Zhang1c4b9812022-04-06 17:29:00 -070041FeatureFlag DynamicPartitionControlStub::GetVirtualAbCompressionXorFeatureFlag() {
42 return FeatureFlag(FeatureFlag::Value::NONE);
43}
44
Yifan Hongf5261562020-03-10 10:28:10 -070045bool DynamicPartitionControlStub::OptimizeOperation(
46 const std::string& partition_name,
47 const InstallOperation& operation,
48 InstallOperation* optimized) {
Alessio Balsini14980e22019-11-26 11:46:06 +000049 return false;
50}
51
Yifan Hongdaac7322019-11-07 10:48:26 -080052void DynamicPartitionControlStub::Cleanup() {}
53
54bool DynamicPartitionControlStub::PreparePartitionsForUpdate(
55 uint32_t source_slot,
56 uint32_t target_slot,
57 const DeltaArchiveManifest& manifest,
Yifan Hongf033ecb2020-01-07 18:13:56 -080058 bool update,
59 uint64_t* required_size) {
Yifan Hongdaac7322019-11-07 10:48:26 -080060 return true;
61}
62
Yifan Hong7b3910a2020-03-24 17:47:32 -070063bool DynamicPartitionControlStub::FinishUpdate(bool powerwash_required) {
Yifan Hongdaac7322019-11-07 10:48:26 -080064 return true;
65}
66
Yifan Hong90965502020-02-19 15:22:47 -080067std::unique_ptr<AbstractAction>
68DynamicPartitionControlStub::GetCleanupPreviousUpdateAction(
69 BootControlInterface* boot_control,
70 PrefsInterface* prefs,
71 CleanupPreviousUpdateActionDelegateInterface* delegate) {
72 return std::make_unique<NoOpAction>();
73}
74
Yifan Hong6a6d0f12020-03-11 13:20:52 -070075bool DynamicPartitionControlStub::ResetUpdate(PrefsInterface* prefs) {
76 return false;
77}
78
Tianjie99d570d2020-06-04 14:57:19 -070079bool DynamicPartitionControlStub::ListDynamicPartitionsForSlot(
Tianjie3a55fc22021-02-13 16:02:22 -080080 uint32_t slot,
81 uint32_t current_slot,
82 std::vector<std::string>* partitions) {
Tianjie99d570d2020-06-04 14:57:19 -070083 return true;
84}
85
86bool DynamicPartitionControlStub::GetDeviceDir(std::string* path) {
87 return true;
88}
89
Tianjie24f96092020-06-30 12:26:25 -070090bool DynamicPartitionControlStub::VerifyExtentsForUntouchedPartitions(
91 uint32_t source_slot,
92 uint32_t target_slot,
93 const std::vector<std::string>& partitions) {
94 return true;
95}
96
Kelvin Zhang34618522020-09-28 09:21:02 -040097std::unique_ptr<android::snapshot::ISnapshotWriter>
98DynamicPartitionControlStub::OpenCowWriter(
99 const std::string& /*unsuffixed_partition_name*/,
100 const std::optional<std::string>& /*source_path*/,
101 bool /*is_append*/) {
102 return nullptr;
103}
104
Kelvin Zhang9d87d6d2020-10-23 17:03:59 -0400105bool DynamicPartitionControlStub::MapAllPartitions() {
106 return false;
107}
108
109bool DynamicPartitionControlStub::UnmapAllPartitions() {
110 return false;
111}
112
Kelvin Zhangeb9de162020-11-16 15:47:28 -0500113bool DynamicPartitionControlStub::IsDynamicPartition(
Kelvin Zhangebd115e2021-03-08 16:10:25 -0500114 const std::string& part_name, uint32_t slot) {
Kelvin Zhangeb9de162020-11-16 15:47:28 -0500115 return false;
116}
117
Yifan Hongb0cbd392021-02-04 11:11:45 -0800118bool DynamicPartitionControlStub::UpdateUsesSnapshotCompression() {
119 return false;
120}
121
Yifan Hongdaac7322019-11-07 10:48:26 -0800122} // namespace chromeos_update_engine