Commit cbe5723e authored by aligungr's avatar aligungr

L3 RRC/NAS developments

parent 4453a90d
......@@ -21,12 +21,22 @@ namespace nr::ue
void NasMm::initialRegistrationRequired(EInitialRegCause cause)
{
if (m_procCtl.initialRegistration == cause)
return;
m_logger->debug("Initial registration required due to [%s]", ToJson(cause).str().c_str());
m_procCtl.initialRegistration = cause;
triggerMmCycle();
}
void NasMm::mobilityUpdatingRequired(ERegUpdateCause cause)
{
if (m_procCtl.mobilityRegistration == cause)
return;
m_logger->debug("Mobility registration updating required due to [%s]", ToJson(cause).str().c_str());
m_procCtl.mobilityRegistration = cause;
triggerMmCycle();
......@@ -47,12 +57,22 @@ void NasMm::serviceRequestRequiredForData()
void NasMm::serviceRequestRequired(EServiceReqCause cause)
{
if (m_procCtl.serviceRequest == cause)
return;
m_logger->debug("Service request required due to [%s]", ToJson(cause).str().c_str());
m_procCtl.serviceRequest = cause;
triggerMmCycle();
}
void NasMm::deregistrationRequired(EDeregCause cause)
{
if (m_procCtl.deregistration == cause)
return;
m_logger->debug("De-registration required due to [%s]", ToJson(cause).str().c_str());
m_procCtl.deregistration = cause;
triggerMmCycle();
}
......
......@@ -93,6 +93,27 @@ Json ToJson(const ECellCategory &v)
}
}
Json ToJson(const EInitialRegCause &v)
{
switch (v)
{
case EInitialRegCause::UNSPECIFIED:
return "UNSPECIFIED";
case EInitialRegCause::EMERGENCY_SERVICES:
return "EMERGENCY_SERVICES";
case EInitialRegCause::MM_DEREG_NORMAL_SERVICE:
return "MM_DEREG_NORMAL_SERVICE";
case EInitialRegCause::T3346_EXPIRY:
return "T3346_EXPIRY";
case EInitialRegCause::DUE_TO_DEREGISTRATION:
return "DUE_TO_DEREGISTRATION";
case EInitialRegCause::DUE_TO_SERVICE_REJECT:
return "DUE_TO_SERVICE_REJECT";
default:
return "?";
}
}
bool operator==(const SingleSlice &lhs, const SingleSlice &rhs)
{
if ((int)lhs.sst != (int)rhs.sst)
......
......@@ -213,6 +213,7 @@ Json ToJson(const NetworkSlice &v);
Json ToJson(const PlmnSupport &v);
Json ToJson(const EDeregCause &v);
Json ToJson(const ECellCategory &v);
Json ToJson(const EInitialRegCause &v);
namespace std
{
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment