Avi Drissman | 4a8573c | 2022-09-09 19:35:54 | [diff] [blame] | 1 | // Copyright 2021 The Chromium Authors |
Joshua Pawlicki | 58a597ed | 2021-06-10 17:00:52 | [diff] [blame] | 2 | // Use of this source code is governed by a BSD-style license that can be |
| 3 | // found in the LICENSE file. |
| 4 | |
| 5 | #include "chrome/updater/external_constants_default.h" |
| 6 | |
Sorin Jianu | a4b3d38 | 2023-11-10 20:08:46 | [diff] [blame] | 7 | #include <optional> |
| 8 | #include <vector> |
| 9 | |
Joshua Pawlicki | 34aacc1 | 2021-08-24 21:22:21 | [diff] [blame] | 10 | #include "base/memory/scoped_refptr.h" |
Joshua Pawlicki | b24d186 | 2022-06-27 15:05:02 | [diff] [blame] | 11 | #include "base/time/time.h" |
S. Ganesh | 5b7c6a7 | 2022-05-21 01:20:56 | [diff] [blame] | 12 | #include "base/values.h" |
Joshua Pawlicki | 58a597ed | 2021-06-10 17:00:52 | [diff] [blame] | 13 | #include "chrome/updater/constants.h" |
| 14 | #include "chrome/updater/external_constants.h" |
| 15 | #include "chrome/updater/updater_branding.h" |
Joshua Pawlicki | afee8442 | 2022-01-12 20:47:07 | [diff] [blame] | 16 | #include "components/crx_file/crx_verifier.h" |
Joshua Pawlicki | 58a597ed | 2021-06-10 17:00:52 | [diff] [blame] | 17 | #include "url/gurl.h" |
| 18 | |
| 19 | namespace updater { |
| 20 | namespace { |
| 21 | |
| 22 | class DefaultExternalConstants : public ExternalConstants { |
| 23 | public: |
| 24 | DefaultExternalConstants() : ExternalConstants(nullptr) {} |
Joshua Pawlicki | 58a597ed | 2021-06-10 17:00:52 | [diff] [blame] | 25 | |
| 26 | // Overrides of ExternalConstants: |
| 27 | std::vector<GURL> UpdateURL() const override { |
| 28 | return std::vector<GURL>{GURL(UPDATE_CHECK_URL)}; |
| 29 | } |
| 30 | |
Xiaoling Bao | 616a535 | 2023-04-03 22:00:58 | [diff] [blame] | 31 | GURL CrashUploadURL() const override { return GURL(CRASH_UPLOAD_URL); } |
| 32 | |
| 33 | GURL DeviceManagementURL() const override { |
| 34 | return GURL(DEVICE_MANAGEMENT_SERVER_URL); |
| 35 | } |
| 36 | |
Joshua Pawlicki | 58a597ed | 2021-06-10 17:00:52 | [diff] [blame] | 37 | bool UseCUP() const override { return true; } |
| 38 | |
Noah Rose Ledesma | d391ac33 | 2022-12-13 21:09:06 | [diff] [blame] | 39 | base::TimeDelta InitialDelay() const override { return kInitialDelay; } |
Joshua Pawlicki | 58a597ed | 2021-06-10 17:00:52 | [diff] [blame] | 40 | |
Noah Rose Ledesma | d391ac33 | 2022-12-13 21:09:06 | [diff] [blame] | 41 | base::TimeDelta ServerKeepAliveTime() const override { |
| 42 | return kServerKeepAliveTime; |
Joshua Pawlicki | 58a597ed | 2021-06-10 17:00:52 | [diff] [blame] | 43 | } |
Joshua Pawlicki | 34aacc1 | 2021-08-24 21:22:21 | [diff] [blame] | 44 | |
Joshua Pawlicki | afee8442 | 2022-01-12 20:47:07 | [diff] [blame] | 45 | crx_file::VerifierFormat CrxVerifierFormat() const override { |
| 46 | return crx_file::VerifierFormat::CRX3_WITH_PUBLISHER_PROOF; |
| 47 | } |
| 48 | |
Matt Menke | b1732aac | 2022-06-02 13:48:03 | [diff] [blame] | 49 | base::Value::Dict GroupPolicies() const override { |
| 50 | return base::Value::Dict(); |
| 51 | } |
S. Ganesh | 5b7c6a7 | 2022-05-21 01:20:56 | [diff] [blame] | 52 | |
Joshua Pawlicki | b24d186 | 2022-06-27 15:05:02 | [diff] [blame] | 53 | base::TimeDelta OverinstallTimeout() const override { |
| 54 | return base::Minutes(2); |
| 55 | } |
| 56 | |
Joshua Pawlicki | e581259 | 2023-06-12 17:24:54 | [diff] [blame] | 57 | base::TimeDelta IdleCheckPeriod() const override { return base::Minutes(5); } |
| 58 | |
Sorin Jianu | a4b3d38 | 2023-11-10 20:08:46 | [diff] [blame] | 59 | std::optional<bool> IsMachineManaged() const override { return std::nullopt; } |
Xiaoling Bao | bea6946 | 2023-08-01 01:59:03 | [diff] [blame] | 60 | |
Adam Norberg | e158b07 | 2023-10-19 18:55:43 | [diff] [blame] | 61 | bool EnableDiffUpdates() const override { return false; } |
| 62 | |
Joshua Pawlicki | 34aacc1 | 2021-08-24 21:22:21 | [diff] [blame] | 63 | private: |
| 64 | ~DefaultExternalConstants() override = default; |
Joshua Pawlicki | 58a597ed | 2021-06-10 17:00:52 | [diff] [blame] | 65 | }; |
| 66 | |
| 67 | } // namespace |
| 68 | |
Joshua Pawlicki | 34aacc1 | 2021-08-24 21:22:21 | [diff] [blame] | 69 | scoped_refptr<ExternalConstants> CreateDefaultExternalConstants() { |
| 70 | return base::MakeRefCounted<DefaultExternalConstants>(); |
Joshua Pawlicki | 58a597ed | 2021-06-10 17:00:52 | [diff] [blame] | 71 | } |
| 72 | |
| 73 | } // namespace updater |