#include "test/librbd/test_mock_fixture.h"
#include "include/rbd/librbd.hpp"
+#include "librbd/AsioEngine.h"
#include "librbd/DeepCopyRequest.h"
#include "librbd/ImageState.h"
#include "librbd/Operations.h"
librados::snap_t src_snap_id_start,
librados::snap_t src_snap_id_end,
librados::snap_t dst_snap_id_start,
- bool flatten, ContextWQ *work_queue,
+ bool flatten,
+ librbd::asio::ContextWQ *work_queue,
SnapSeqs *snap_seqs, Context *on_finish) {
ceph_assert(s_instance != nullptr);
s_instance->on_finish = on_finish;
librbd::ImageCtx *m_src_image_ctx;
librbd::ImageCtx *m_dst_image_ctx;
- ThreadPool *m_thread_pool;
- ContextWQ *m_work_queue;
+
+ std::shared_ptr<librbd::AsioEngine> m_asio_engine;
+ librbd::asio::ContextWQ *m_work_queue;
void SetUp() override {
TestMockFixture::SetUp();
ASSERT_EQ(0, open_image(m_image_name, &m_dst_image_ctx));
- librbd::ImageCtx::get_thread_pool_instance(m_src_image_ctx->cct,
- &m_thread_pool, &m_work_queue);
+ m_asio_engine = std::make_shared<librbd::AsioEngine>(
+ m_src_image_ctx->md_ctx);
+ m_work_queue = m_asio_engine->get_work_queue();
}
void TearDown() override {