|
10 | 10 |
|
11 | 11 | #include "cu_cp_impl.h" |
12 | 12 | #include "metrics_handler/metrics_handler_impl.h" |
| 13 | +#include "routines/ue_removal_routine.h" |
13 | 14 | #include "srsran/cu_cp/cu_cp_types.h" |
14 | 15 | #include "srsran/f1ap/cu_cp/f1ap_cu.h" |
15 | 16 | #include "srsran/ngap/ngap_factory.h" |
@@ -51,7 +52,6 @@ cu_cp_impl::cu_cp_impl(const cu_cp_configuration& config_) : |
51 | 52 | conn_notifier, |
52 | 53 | srslog::fetch_basic_logger("CU-CP")}), |
53 | 54 | cu_up_db(cu_up_repository_config{cfg, e1ap_ev_notifier, srslog::fetch_basic_logger("CU-CP")}), |
54 | | - routine_mng(ue_mng.get_task_sched()), |
55 | 55 | controller(routine_mng, cfg.ngap_config, ngap_adapter, cu_up_db), |
56 | 56 | metrics_hdlr(std::make_unique<metrics_handler_impl>(*cfg.cu_cp_executor, *cfg.timers, ue_mng, du_db)) |
57 | 57 | { |
@@ -282,18 +282,19 @@ bool cu_cp_impl::handle_cell_config_update_request(nr_cell_id_t nci, const servi |
282 | 282 | return cell_meas_mng.update_cell_config(nci, serv_cell_cfg); |
283 | 283 | } |
284 | 284 |
|
285 | | -void cu_cp_impl::handle_ue_removal_request(ue_index_t ue_index) |
| 285 | +async_task<void> cu_cp_impl::handle_ue_removal_request(ue_index_t ue_index) |
286 | 286 | { |
287 | 287 | du_index_t du_index = get_du_index_from_ue_index(ue_index); |
288 | 288 | cu_up_index_t cu_up_index = uint_to_cu_up_index(0); // TODO: Update when mapping from UE index to CU-UP exists |
289 | 289 | auto e1_adapter = e1ap_adapters.find(cu_up_index); |
290 | | - routine_mng.start_ue_removal_routine(ue_index, |
291 | | - rrc_du_adapters.at(du_index), |
292 | | - e1_adapter != e1ap_adapters.end() ? &e1_adapter->second : nullptr, |
293 | | - f1ap_adapters.at(du_index), |
294 | | - ngap_adapter, |
295 | | - ue_mng, |
296 | | - logger); |
| 290 | + |
| 291 | + return launch_async<ue_removal_routine>(ue_index, |
| 292 | + rrc_du_adapters.at(du_index), |
| 293 | + e1_adapter != e1ap_adapters.end() ? &e1_adapter->second : nullptr, |
| 294 | + f1ap_adapters.at(du_index), |
| 295 | + ngap_adapter, |
| 296 | + ue_mng, |
| 297 | + logger); |
297 | 298 | } |
298 | 299 |
|
299 | 300 | // private |
|
0 commit comments