diff --git a/srsgnb/hdr/stack/ric/e2sm.h b/srsgnb/hdr/stack/ric/e2sm.h index 19179610a..e98fdc642 100644 --- a/srsgnb/hdr/stack/ric/e2sm.h +++ b/srsgnb/hdr/stack/ric/e2sm.h @@ -44,6 +44,7 @@ public: virtual bool generate_ran_function_description(RANfunction_description& desc, srsran::unique_byte_buffer_t& buf) = 0; virtual bool process_ric_event_trigger_definition(asn1::e2ap::ricsubscription_request_s subscription_request, RIC_event_trigger_definition& event_def) = 0; + virtual bool process_ric_action_definition(asn1::e2ap::ri_caction_to_be_setup_item_s ric_action) = 0; private: const std::string _short_name; diff --git a/srsgnb/hdr/stack/ric/e2sm_kpm.h b/srsgnb/hdr/stack/ric/e2sm_kpm.h index fcacc8fa4..77b85f008 100644 --- a/srsgnb/hdr/stack/ric/e2sm_kpm.h +++ b/srsgnb/hdr/stack/ric/e2sm_kpm.h @@ -48,7 +48,7 @@ public: virtual bool generate_ran_function_description(RANfunction_description& desc, srsran::unique_byte_buffer_t& buf); virtual bool process_ric_event_trigger_definition(asn1::e2ap::ricsubscription_request_s subscription_request, RIC_event_trigger_definition& event_def); - bool process_ric_action_definition(asn1::e2ap::ri_caction_to_be_setup_item_s ric_action); + virtual bool process_ric_action_definition(asn1::e2ap::ri_caction_to_be_setup_item_s ric_action); bool generate_indication_header(E2SM_KPM_RIC_ind_header hdr, srsran::unique_byte_buffer_t& buf); bool generate_indication_message(E2SM_KPM_RIC_ind_message msg, srsran::unique_byte_buffer_t& buf); diff --git a/srsgnb/src/stack/ric/ric_subscription.cc b/srsgnb/src/stack/ric/ric_subscription.cc index 309a31f5c..09d212783 100644 --- a/srsgnb/src/stack/ric/ric_subscription.cc +++ b/srsgnb/src/stack/ric/ric_subscription.cc @@ -39,14 +39,13 @@ ric_client::ric_subscription::ric_subscription(ric_client* ric_cli } } - e2sm_kpm* sm_kpm_ptr = dynamic_cast(ran_func_desc.sm_ptr); ri_cactions_to_be_setup_list_l& action_list = ric_subscription_request->ricsubscription_details->ric_action_to_be_setup_list; for (uint32_t i = 0; i < action_list.size(); i++) { ri_caction_to_be_setup_item_s action_item = action_list[i]->ri_caction_to_be_setup_item(); - if (sm_kpm_ptr->process_ric_action_definition(action_item)) { + if (ran_func_desc.sm_ptr->process_ric_action_definition(action_item)) { parent->logger.debug("Admitted action %i (type: %i)\n", action_item.ric_action_id, action_item.ric_action_type); admitted_actions.push_back(action_item.ric_action_id);