blob: f68d96d1816092ce18289510e108eead14f51bd1 [file] [log] [blame]
// Copyright 2017 The Chromium OS 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 MODEMFWD_FIRMWARE_DIRECTORY_STUB_H_
#define MODEMFWD_FIRMWARE_DIRECTORY_STUB_H_
#include <map>
#include <string>
#include <utility>
#include <base/macros.h>
#include "modemfwd/firmware_directory.h"
namespace modemfwd {
class FirmwareDirectoryStub : public FirmwareDirectory {
public:
FirmwareDirectoryStub() = default;
void AddMainFirmware(const std::string& device_id, FirmwareFileInfo info);
void AddCarrierFirmware(const std::string& device_id,
const std::string& carrier_id,
FirmwareFileInfo info);
// modemfwd::FirmwareDirectory overrides.
bool FindMainFirmware(const std::string& device_id,
FirmwareFileInfo* out_info) override;
bool FindCarrierFirmware(const std::string& device_id,
std::string* carrier_id,
FirmwareFileInfo* out_info) override;
private:
std::map<std::string, FirmwareFileInfo> main_fw_info_;
std::map<std::pair<std::string, std::string>,
FirmwareFileInfo> carrier_fw_info_;
DISALLOW_COPY_AND_ASSIGN(FirmwareDirectoryStub);
};
} // namespace modemfwd
#endif // MODEMFWD_FIRMWARE_DIRECTORY_STUB_H_