23#include <unordered_set>
27#include "cuttlefish/host/commands/cvd/instances/cvd_persistent_data.pb.h"
72 const Filter& filter)
const;
82 const Filter& filter)
const;
89 auto container =
CF_EXPECT(std::move(container_result));
91 "Expected unique result");
92 return *container.begin();
95 static std::vector<LocalInstanceGroup>
FindGroups(
96 const cvd::PersistentData&
data,
const Filter& filter);
Definition: data_viewer.h:40
Definition: instance_database.h:34
Result< std::vector< LocalInstanceGroup > > FindGroups(const Filter &filter) const
Definition: instance_database.cpp:204
Result< void > UpdateInstanceGroup(const LocalInstanceGroup &group)
Definition: instance_database.cpp:172
Result< bool > IsEmpty() const
Definition: instance_database.cpp:103
Result< std::pair< LocalInstance, LocalInstanceGroup > > FindInstanceWithGroup(const Filter &filter) const
Definition: instance_database.cpp:229
Result< void > AddInstanceGroup(LocalInstanceGroup group)
Definition: instance_database.cpp:122
Result< LocalInstanceGroup > FindGroup(const Filter &filter) const
Definition: instance_database.h:78
InstanceDatabase(const std::string &backing_file)
Definition: instance_database.cpp:100
Result< bool > RemoveInstanceGroup(const std::string &group_name)
Definition: instance_database.cpp:189
Result< T > ExactlyOne(Result< std::vector< T > > &&container_result) const
Definition: instance_database.h:88
DataViewer viewer_
Definition: instance_database.h:98
Result< std::vector< LocalInstanceGroup > > Clear()
Definition: instance_database.cpp:109
Result< std::vector< LocalInstanceGroup > > InstanceGroups() const
Definition: instance_database.cpp:288
Result< std::vector< std::pair< LocalInstanceGroup, std::vector< LocalInstance > > > > FindInstances(const Filter &filter) const
Definition: instance_database.cpp:258
Definition: local_instance_group.h:32
#define data
Definition: dict.c:56
#define CF_EXPECT(...)
Definition: expect.h:149
#define CF_EXPECT_EQ(LHS_RESULT, RHS_RESULT,...)
Definition: expect.h:185
std::vector< LocalInstance > Filter(const std::vector< LocalInstance > &instances, std::function< bool(const LocalInstance &)> predicate)
Definition: local_instance_group.cpp:42
Definition: alloc_driver.h:20
tl::expected< T, StackTraceError > Result
Definition: result_type.h:30
Definition: instance_database.h:39
std::unordered_set< std::string > instance_names
Definition: instance_database.h:46
std::optional< unsigned > instance_id
Definition: instance_database.h:40
bool Empty() const
Definition: instance_database.cpp:96
std::optional< std::string > group_name
Definition: instance_database.h:41