12345678910111213141516171819202122232425262728293031 |
- // Copyright 2019 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_UPDATE_CLIENT_PATCH_IN_PROCESS_PATCHER_H_
- #define COMPONENTS_UPDATE_CLIENT_PATCH_IN_PROCESS_PATCHER_H_
- #include "base/memory/scoped_refptr.h"
- #include "components/update_client/patcher.h"
- namespace update_client {
- // Creates an in-process patcher. It doesn't use Mojo abstractions and calls
- // Courgette lib APIs directly. This should only be used for testing
- // environments or other runtimes where multiprocess is infeasible, such as iOS,
- // Android WebView or Content dependencies are not allowed.
- class InProcessPatcherFactory : public PatcherFactory {
- public:
- InProcessPatcherFactory();
- InProcessPatcherFactory(const InProcessPatcherFactory&) = delete;
- InProcessPatcherFactory& operator=(const InProcessPatcherFactory&) = delete;
- scoped_refptr<Patcher> Create() const override;
- protected:
- ~InProcessPatcherFactory() override;
- };
- } // namespace update_client
- #endif // COMPONENTS_UPDATE_CLIENT_PATCH_IN_PROCESS_PATCHER_H_
|