diff options
Diffstat (limited to '')
-rw-r--r-- | src/crimson/os/futurized_store.cc | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/crimson/os/futurized_store.cc b/src/crimson/os/futurized_store.cc new file mode 100644 index 000000000..bb73c3478 --- /dev/null +++ b/src/crimson/os/futurized_store.cc @@ -0,0 +1,22 @@ +#include "futurized_store.h" +#include "cyanstore/cyan_store.h" +#include "alienstore/alien_store.h" + +namespace crimson::os { + +std::unique_ptr<FuturizedStore> +FuturizedStore::create(const std::string& type, + const std::string& data, + const ConfigValues& values) +{ + if (type == "memstore") { + return std::make_unique<crimson::os::CyanStore>(data); + } else if (type == "bluestore") { + return std::make_unique<crimson::os::AlienStore>(data, values); + } else { + ceph_abort_msgf("unsupported objectstore type: %s", type.c_str()); + return {}; + } +} + +} |