diff --git a/streaming/stream_coordinator.hh b/streaming/stream_coordinator.hh index cacf6280b6..f028786377 100644 --- a/streaming/stream_coordinator.hh +++ b/streaming/stream_coordinator.hh @@ -11,6 +11,7 @@ #pragma once #include "gms/inet_address.hh" +#include "streaming/stream_fwd.hh" #include "streaming/stream_session.hh" #include "streaming/session_info.hh" #include diff --git a/streaming/stream_fwd.hh b/streaming/stream_fwd.hh new file mode 100644 index 0000000000..b5a5d06210 --- /dev/null +++ b/streaming/stream_fwd.hh @@ -0,0 +1,19 @@ +/* + * Copyright (C) 2018-present ScyllaDB + */ + +/* + * SPDX-License-Identifier: AGPL-3.0-or-later + */ + +#pragma once + +namespace streaming { + +class stream_event_handler; +class stream_manager; +class stream_result_future; +class stream_session; +class stream_state; + +} // namespace streaming diff --git a/streaming/stream_manager.hh b/streaming/stream_manager.hh index 72d00d1e10..98a05715ee 100644 --- a/streaming/stream_manager.hh +++ b/streaming/stream_manager.hh @@ -9,6 +9,7 @@ */ #pragma once +#include "streaming/stream_fwd.hh" #include "streaming/progress_info.hh" #include #include @@ -45,9 +46,6 @@ class gossiper; namespace streaming { -class stream_session; -class stream_result_future; - struct stream_bytes { int64_t bytes_sent = 0; int64_t bytes_received = 0; diff --git a/streaming/stream_plan.hh b/streaming/stream_plan.hh index 0024165999..76654cf94f 100644 --- a/streaming/stream_plan.hh +++ b/streaming/stream_plan.hh @@ -16,6 +16,7 @@ #include "gms/inet_address.hh" #include "query-request.hh" #include "dht/i_partitioner.hh" +#include "streaming/stream_fwd.hh" #include "streaming/stream_coordinator.hh" #include "streaming/stream_detail.hh" #include "streaming/stream_reason.hh" @@ -23,9 +24,6 @@ namespace streaming { -class stream_state; -class stream_event_handler; - /** * {@link StreamPlan} is a helper class that builds StreamOperation of given configuration. * diff --git a/streaming/stream_receive_task.hh b/streaming/stream_receive_task.hh index 76437f0190..52b8bc9c45 100644 --- a/streaming/stream_receive_task.hh +++ b/streaming/stream_receive_task.hh @@ -11,13 +11,12 @@ #pragma once #include "utils/UUID.hh" +#include "streaming/stream_fwd.hh" #include "streaming/stream_task.hh" #include namespace streaming { -class stream_session; - /** * Task that manages receiving files for the session for certain ColumnFamily. */ diff --git a/streaming/stream_transfer_task.hh b/streaming/stream_transfer_task.hh index e3183307ab..6edbd0d01b 100644 --- a/streaming/stream_transfer_task.hh +++ b/streaming/stream_transfer_task.hh @@ -11,6 +11,7 @@ #pragma once #include "utils/UUID.hh" +#include "streaming/stream_fwd.hh" #include "streaming/stream_task.hh" #include "streaming/stream_detail.hh" #include @@ -18,7 +19,6 @@ namespace streaming { -class stream_session; class send_info; /**