blob: 0ad785b51fac8c659fcb38dbb7dc0878fedfc5cd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
|
// Copyright 2015 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.
#include "ios/chrome/browser/component_updater/ios_component_updater_configurator.h"
#include <string>
#include <vector>
#include "base/threading/sequenced_worker_pool.h"
#include "base/version.h"
#include "components/component_updater/configurator_impl.h"
#include "components/update_client/component_patcher_operation.h"
#include "ios/chrome/browser/application_context.h"
#include "ios/chrome/browser/google/google_brand.h"
#include "ios/chrome/common/channel_info.h"
#include "ios/web/public/web_thread.h"
namespace component_updater {
namespace {
class IOSConfigurator : public update_client::Configurator {
public:
IOSConfigurator(const base::CommandLine* cmdline,
net::URLRequestContextGetter* url_request_getter);
// update_client::Configurator overrides.
int InitialDelay() const override;
int NextCheckDelay() const override;
int StepDelay() const override;
int OnDemandDelay() const override;
int UpdateDelay() const override;
std::vector<GURL> UpdateUrl() const override;
std::vector<GURL> PingUrl() const override;
base::Version GetBrowserVersion() const override;
std::string GetChannel() const override;
std::string GetBrand() const override;
std::string GetLang() const override;
std::string GetOSLongName() const override;
std::string ExtraRequestParams() const override;
std::string GetDownloadPreference() const override;
net::URLRequestContextGetter* RequestContext() const override;
scoped_refptr<update_client::OutOfProcessPatcher> CreateOutOfProcessPatcher()
const override;
bool DeltasEnabled() const override;
bool UseBackgroundDownloader() const override;
bool UseCupSigning() const override;
scoped_refptr<base::SequencedTaskRunner> GetSequencedTaskRunner()
const override;
private:
friend class base::RefCountedThreadSafe<IOSConfigurator>;
ConfiguratorImpl configurator_impl_;
~IOSConfigurator() override {}
};
IOSConfigurator::IOSConfigurator(
const base::CommandLine* cmdline,
net::URLRequestContextGetter* url_request_getter)
: configurator_impl_(cmdline, url_request_getter) {}
int IOSConfigurator::InitialDelay() const {
return configurator_impl_.InitialDelay();
}
int IOSConfigurator::NextCheckDelay() const {
return configurator_impl_.NextCheckDelay();
}
int IOSConfigurator::StepDelay() const {
return configurator_impl_.StepDelay();
}
int IOSConfigurator::OnDemandDelay() const {
return configurator_impl_.OnDemandDelay();
}
int IOSConfigurator::UpdateDelay() const {
return configurator_impl_.UpdateDelay();
}
std::vector<GURL> IOSConfigurator::UpdateUrl() const {
return configurator_impl_.UpdateUrl();
}
std::vector<GURL> IOSConfigurator::PingUrl() const {
return configurator_impl_.PingUrl();
}
base::Version IOSConfigurator::GetBrowserVersion() const {
return configurator_impl_.GetBrowserVersion();
}
std::string IOSConfigurator::GetChannel() const {
return GetChannelString();
}
std::string IOSConfigurator::GetBrand() const {
std::string brand;
ios::google_brand::GetBrand(&brand);
return brand;
}
std::string IOSConfigurator::GetLang() const {
return GetApplicationContext()->GetApplicationLocale();
}
std::string IOSConfigurator::GetOSLongName() const {
return configurator_impl_.GetOSLongName();
}
std::string IOSConfigurator::ExtraRequestParams() const {
return configurator_impl_.ExtraRequestParams();
}
std::string IOSConfigurator::GetDownloadPreference() const {
return configurator_impl_.GetDownloadPreference();
}
net::URLRequestContextGetter* IOSConfigurator::RequestContext() const {
return configurator_impl_.RequestContext();
}
scoped_refptr<update_client::OutOfProcessPatcher>
IOSConfigurator::CreateOutOfProcessPatcher() const {
return nullptr;
}
bool IOSConfigurator::DeltasEnabled() const {
return configurator_impl_.DeltasEnabled();
}
bool IOSConfigurator::UseBackgroundDownloader() const {
return configurator_impl_.UseBackgroundDownloader();
}
bool IOSConfigurator::UseCupSigning() const {
return configurator_impl_.UseCupSigning();
}
scoped_refptr<base::SequencedTaskRunner>
IOSConfigurator::GetSequencedTaskRunner() const {
return web::WebThread::GetBlockingPool()
->GetSequencedTaskRunnerWithShutdownBehavior(
web::WebThread::GetBlockingPool()->GetSequenceToken(),
base::SequencedWorkerPool::SKIP_ON_SHUTDOWN);
}
} // namespace
scoped_refptr<update_client::Configurator> MakeIOSComponentUpdaterConfigurator(
const base::CommandLine* cmdline,
net::URLRequestContextGetter* context_getter) {
return new IOSConfigurator(cmdline, context_getter);
}
} // namespace component_updater
|