Commit 11d0ae93 authored by yangjian's avatar yangjian

Update SdmSubscriptions: add IndividualSdmSubscription and database

parent 85d44561
/** /**
* Nudr_DataRepository API OpenAPI file * Nudr_DataRepository API OpenAPI file
* Unified Data Repository Service. © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. * Unified Data Repository Service. © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved.
* *
* The version of the OpenAPI document: 2.1.2 * The version of the OpenAPI document: 2.1.2
* *
* *
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech * https://openapi-generator.tech
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
/* /*
* SDMSubscriptionDocumentApi.h * SDMSubscriptionDocumentApi.h
* *
* *
*/ */
#ifndef SDMSubscriptionDocumentApi_H_ #ifndef SDMSubscriptionDocumentApi_H_
...@@ -63,7 +63,7 @@ private: ...@@ -63,7 +63,7 @@ private:
/// Modify an individual sdm subscription /// Modify an individual sdm subscription
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// ///
/// </remarks> /// </remarks>
/// <param name="ueId">UE id</param> /// <param name="ueId">UE id</param>
/// <param name="subsId"></param> /// <param name="subsId"></param>
...@@ -75,7 +75,7 @@ private: ...@@ -75,7 +75,7 @@ private:
/// Retrieves a individual sdmSubscription identified by subsId /// Retrieves a individual sdmSubscription identified by subsId
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// ///
/// </remarks> /// </remarks>
/// <param name="ueId"></param> /// <param name="ueId"></param>
/// <param name="subsId">Unique ID of the subscription to retrieve</param> /// <param name="subsId">Unique ID of the subscription to retrieve</param>
...@@ -85,7 +85,7 @@ private: ...@@ -85,7 +85,7 @@ private:
/// Deletes a sdmsubscriptions /// Deletes a sdmsubscriptions
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// ///
/// </remarks> /// </remarks>
/// <param name="ueId"></param> /// <param name="ueId"></param>
/// <param name="subsId">Unique ID of the subscription to remove</param> /// <param name="subsId">Unique ID of the subscription to remove</param>
...@@ -95,12 +95,12 @@ private: ...@@ -95,12 +95,12 @@ private:
/// Update an individual sdm subscriptions of a UE /// Update an individual sdm subscriptions of a UE
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// ///
/// </remarks> /// </remarks>
/// <param name="ueId"></param> /// <param name="ueId"></param>
/// <param name="subsId"></param> /// <param name="subsId"></param>
/// <param name="sdmSubscription"> (optional)</param> /// <param name="sdmSubscription"> (optional)</param>
virtual void updatesdmsubscriptions(const std::string &ueId, const std::string &subsId, const SdmSubscription &sdmSubscription, Pistache::Http::ResponseWriter &response) = 0; virtual void updatesdmsubscriptions(const std::string &ueId, const std::string &subsId, SdmSubscription &sdmSubscription, Pistache::Http::ResponseWriter &response) = 0;
}; };
......
This diff is collapsed.
/** /**
* Nudr_DataRepository API OpenAPI file * Nudr_DataRepository API OpenAPI file
* Unified Data Repository Service. © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. * Unified Data Repository Service. © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved.
* *
* The version of the OpenAPI document: 2.1.2 * The version of the OpenAPI document: 2.1.2
* *
* *
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech * https://openapi-generator.tech
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
/* /*
* SDMSubscriptionDocumentApiImpl.h * SDMSubscriptionDocumentApiImpl.h
* *
* *
*/ */
#ifndef SDM_SUBSCRIPTION_DOCUMENT_API_IMPL_H_ #ifndef SDM_SUBSCRIPTION_DOCUMENT_API_IMPL_H_
...@@ -37,6 +37,8 @@ ...@@ -37,6 +37,8 @@
#include <string> #include <string>
#include <vector> #include <vector>
#include <mysql/mysql.h>
namespace org { namespace org {
namespace openapitools { namespace openapitools {
namespace server { namespace server {
...@@ -46,14 +48,15 @@ using namespace org::openapitools::server::model; ...@@ -46,14 +48,15 @@ using namespace org::openapitools::server::model;
class SDMSubscriptionDocumentApiImpl : public org::openapitools::server::api::SDMSubscriptionDocumentApi { class SDMSubscriptionDocumentApiImpl : public org::openapitools::server::api::SDMSubscriptionDocumentApi {
public: public:
SDMSubscriptionDocumentApiImpl(std::shared_ptr<Pistache::Rest::Router>); SDMSubscriptionDocumentApiImpl(std::shared_ptr<Pistache::Rest::Router>, MYSQL *mysql);
~SDMSubscriptionDocumentApiImpl() {} ~SDMSubscriptionDocumentApiImpl() {}
void modifysdm_subscription(const std::string &ueId, const std::string &subsId, const std::vector<PatchItem> &patchItem, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response); void modifysdm_subscription(const std::string &ueId, const std::string &subsId, const std::vector<PatchItem> &patchItem, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response);
void querysdm_subscription(const std::string &ueId, const std::string &subsId, Pistache::Http::ResponseWriter &response); void querysdm_subscription(const std::string &ueId, const std::string &subsId, Pistache::Http::ResponseWriter &response);
void removesdm_subscriptions(const std::string &ueId, const std::string &subsId, Pistache::Http::ResponseWriter &response); void removesdm_subscriptions(const std::string &ueId, const std::string &subsId, Pistache::Http::ResponseWriter &response);
void updatesdmsubscriptions(const std::string &ueId, const std::string &subsId, const SdmSubscription &sdmSubscription, Pistache::Http::ResponseWriter &response); void updatesdmsubscriptions(const std::string &ueId, const std::string &subsId, SdmSubscription &sdmSubscription, Pistache::Http::ResponseWriter &response);
private:
MYSQL *mysql_WitcommUDRDB;
}; };
} }
......
...@@ -47,7 +47,7 @@ void SMFRegistrationDocumentApiImpl::create_smf_context_non3gpp(const std::strin ...@@ -47,7 +47,7 @@ void SMFRegistrationDocumentApiImpl::create_smf_context_non3gpp(const std::strin
if (mysql_num_rows(res)) if (mysql_num_rows(res))
{ {
query="update SmfRegistrations set smfInstanceId='"+smfRegistration.getSmfInstanceId()+"',"+ \ query="update SmfRegistrations set smfInstanceId='"+smfRegistration.getSmfInstanceId()+"',"+ \
(smfRegistration.smfSetIdIsSet()?"smfSetId='"+smfRegistration.getSupportedFeatures()+"',":"")+ \ (smfRegistration.smfSetIdIsSet()?"smfSetId='"+smfRegistration.getSmfSetId()+"',":"")+ \
(smfRegistration.supportedFeaturesIsSet()?"supportedFeatures='"+smfRegistration.getSupportedFeatures()+"',":"")+ \ (smfRegistration.supportedFeaturesIsSet()?"supportedFeatures='"+smfRegistration.getSupportedFeatures()+"',":"")+ \
(smfRegistration.dnnIsSet()?"dnn='"+smfRegistration.getDnn()+"',":"")+ \ (smfRegistration.dnnIsSet()?"dnn='"+smfRegistration.getDnn()+"',":"")+ \
(smfRegistration.emergencyServicesIsSet()?(smfRegistration.isEmergencyServices()?"emergencyServices=1,":"emergencyServices=0,"):"")+ \ (smfRegistration.emergencyServicesIsSet()?(smfRegistration.isEmergencyServices()?"emergencyServices=1,":"emergencyServices=0,"):"")+ \
...@@ -69,7 +69,7 @@ void SMFRegistrationDocumentApiImpl::create_smf_context_non3gpp(const std::strin ...@@ -69,7 +69,7 @@ void SMFRegistrationDocumentApiImpl::create_smf_context_non3gpp(const std::strin
query="insert into SmfRegistrations set ueid="+ueId+","+ \ query="insert into SmfRegistrations set ueid="+ueId+","+ \
"pduSessionId="+std::to_string(pduSessionId)+","+ \ "pduSessionId="+std::to_string(pduSessionId)+","+ \
"smfInstanceId='"+smfRegistration.getSmfInstanceId()+"',"+ \ "smfInstanceId='"+smfRegistration.getSmfInstanceId()+"',"+ \
(smfRegistration.smfSetIdIsSet()?"smfSetId='"+smfRegistration.getSupportedFeatures()+"',":"")+ \ (smfRegistration.smfSetIdIsSet()?"smfSetId='"+smfRegistration.getSmfSetId()+"',":"")+ \
(smfRegistration.supportedFeaturesIsSet()?"supportedFeatures='"+smfRegistration.getSupportedFeatures()+"',":"")+ \ (smfRegistration.supportedFeaturesIsSet()?"supportedFeatures='"+smfRegistration.getSupportedFeatures()+"',":"")+ \
(smfRegistration.dnnIsSet()?"dnn='"+smfRegistration.getDnn()+"',":"")+ \ (smfRegistration.dnnIsSet()?"dnn='"+smfRegistration.getDnn()+"',":"")+ \
(smfRegistration.emergencyServicesIsSet()?(smfRegistration.isEmergencyServices()?"emergencyServices=1,":"emergencyServices=0,"):"")+ \ (smfRegistration.emergencyServicesIsSet()?(smfRegistration.isEmergencyServices()?"emergencyServices=1,":"emergencyServices=0,"):"")+ \
......
...@@ -303,7 +303,7 @@ int main() { ...@@ -303,7 +303,7 @@ int main() {
QueryODBDataBySUPIOrGPSIDocumentApiserver.init(); QueryODBDataBySUPIOrGPSIDocumentApiserver.init();
RetrievalOfSharedDataApiImpl RetrievalOfSharedDataApiserver(router); RetrievalOfSharedDataApiImpl RetrievalOfSharedDataApiserver(router);
RetrievalOfSharedDataApiserver.init(); RetrievalOfSharedDataApiserver.init();
SDMSubscriptionDocumentApiImpl SDMSubscriptionDocumentApiserver(router); SDMSubscriptionDocumentApiImpl SDMSubscriptionDocumentApiserver(router, &mysql);
SDMSubscriptionDocumentApiserver.init(); SDMSubscriptionDocumentApiserver.init();
SDMSubscriptionsCollectionApiImpl SDMSubscriptionsCollectionApiserver(router); SDMSubscriptionsCollectionApiImpl SDMSubscriptionsCollectionApiserver(router);
SDMSubscriptionsCollectionApiserver.init(); SDMSubscriptionsCollectionApiserver.init();
......
/** /**
* Nudr_DataRepository API OpenAPI file * Nudr_DataRepository API OpenAPI file
* Unified Data Repository Service. © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. * Unified Data Repository Service. © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved.
* *
* The version of the OpenAPI document: 2.1.2 * The version of the OpenAPI document: 2.1.2
* *
* *
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech * https://openapi-generator.tech
...@@ -39,7 +39,7 @@ SdmSubscription::SdmSubscription() ...@@ -39,7 +39,7 @@ SdmSubscription::SdmSubscription()
m_SupportedFeatures = ""; m_SupportedFeatures = "";
m_SupportedFeaturesIsSet = false; m_SupportedFeaturesIsSet = false;
m_ContextInfoIsSet = false; m_ContextInfoIsSet = false;
} }
SdmSubscription::~SdmSubscription() SdmSubscription::~SdmSubscription()
...@@ -88,59 +88,59 @@ void from_json(const nlohmann::json& j, SdmSubscription& o) ...@@ -88,59 +88,59 @@ void from_json(const nlohmann::json& j, SdmSubscription& o)
{ {
j.at("implicitUnsubscribe").get_to(o.m_ImplicitUnsubscribe); j.at("implicitUnsubscribe").get_to(o.m_ImplicitUnsubscribe);
o.m_ImplicitUnsubscribeIsSet = true; o.m_ImplicitUnsubscribeIsSet = true;
} }
if(j.find("expires") != j.end()) if(j.find("expires") != j.end())
{ {
j.at("expires").get_to(o.m_Expires); j.at("expires").get_to(o.m_Expires);
o.m_ExpiresIsSet = true; o.m_ExpiresIsSet = true;
} }
j.at("callbackReference").get_to(o.m_CallbackReference); j.at("callbackReference").get_to(o.m_CallbackReference);
if(j.find("amfServiceName") != j.end()) if(j.find("amfServiceName") != j.end())
{ {
j.at("amfServiceName").get_to(o.m_AmfServiceName); j.at("amfServiceName").get_to(o.m_AmfServiceName);
o.m_AmfServiceNameIsSet = true; o.m_AmfServiceNameIsSet = true;
} }
j.at("monitoredResourceUris").get_to(o.m_MonitoredResourceUris); j.at("monitoredResourceUris").get_to(o.m_MonitoredResourceUris);
if(j.find("singleNssai") != j.end()) if(j.find("singleNssai") != j.end())
{ {
j.at("singleNssai").get_to(o.m_SingleNssai); j.at("singleNssai").get_to(o.m_SingleNssai);
o.m_SingleNssaiIsSet = true; o.m_SingleNssaiIsSet = true;
} }
if(j.find("dnn") != j.end()) if(j.find("dnn") != j.end())
{ {
j.at("dnn").get_to(o.m_Dnn); j.at("dnn").get_to(o.m_Dnn);
o.m_DnnIsSet = true; o.m_DnnIsSet = true;
} }
if(j.find("subscriptionId") != j.end()) if(j.find("subscriptionId") != j.end())
{ {
j.at("subscriptionId").get_to(o.m_SubscriptionId); j.at("subscriptionId").get_to(o.m_SubscriptionId);
o.m_SubscriptionIdIsSet = true; o.m_SubscriptionIdIsSet = true;
} }
if(j.find("plmnId") != j.end()) if(j.find("plmnId") != j.end())
{ {
j.at("plmnId").get_to(o.m_PlmnId); j.at("plmnId").get_to(o.m_PlmnId);
o.m_PlmnIdIsSet = true; o.m_PlmnIdIsSet = true;
} }
if(j.find("immediateReport") != j.end()) if(j.find("immediateReport") != j.end())
{ {
j.at("immediateReport").get_to(o.m_ImmediateReport); j.at("immediateReport").get_to(o.m_ImmediateReport);
o.m_ImmediateReportIsSet = true; o.m_ImmediateReportIsSet = true;
} }
if(j.find("report") != j.end()) if(j.find("report") != j.end())
{ {
j.at("report").get_to(o.m_Report); j.at("report").get_to(o.m_Report);
o.m_ReportIsSet = true; o.m_ReportIsSet = true;
} }
if(j.find("supportedFeatures") != j.end()) if(j.find("supportedFeatures") != j.end())
{ {
j.at("supportedFeatures").get_to(o.m_SupportedFeatures); j.at("supportedFeatures").get_to(o.m_SupportedFeatures);
o.m_SupportedFeaturesIsSet = true; o.m_SupportedFeaturesIsSet = true;
} }
if(j.find("contextInfo") != j.end()) if(j.find("contextInfo") != j.end())
{ {
j.at("contextInfo").get_to(o.m_ContextInfo); j.at("contextInfo").get_to(o.m_ContextInfo);
o.m_ContextInfoIsSet = true; o.m_ContextInfoIsSet = true;
} }
} }
std::string SdmSubscription::getNfInstanceId() const std::string SdmSubscription::getNfInstanceId() const
......
/** /**
* Nudr_DataRepository API OpenAPI file * Nudr_DataRepository API OpenAPI file
* Unified Data Repository Service. © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved. * Unified Data Repository Service. © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC). All rights reserved.
* *
* The version of the OpenAPI document: 2.1.2 * The version of the OpenAPI document: 2.1.2
* *
* *
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech * https://openapi-generator.tech
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
/* /*
* SdmSubscription.h * SdmSubscription.h
* *
* *
*/ */
#ifndef SdmSubscription_H_ #ifndef SdmSubscription_H_
...@@ -34,7 +34,7 @@ namespace server { ...@@ -34,7 +34,7 @@ namespace server {
namespace model { namespace model {
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
class SdmSubscription class SdmSubscription
{ {
...@@ -48,92 +48,92 @@ public: ...@@ -48,92 +48,92 @@ public:
/// SdmSubscription members /// SdmSubscription members
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
std::string getNfInstanceId() const; std::string getNfInstanceId() const;
void setNfInstanceId(std::string const& value); void setNfInstanceId(std::string const& value);
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
bool isImplicitUnsubscribe() const; bool isImplicitUnsubscribe() const;
void setImplicitUnsubscribe(bool const value); void setImplicitUnsubscribe(bool const value);
bool implicitUnsubscribeIsSet() const; bool implicitUnsubscribeIsSet() const;
void unsetImplicitUnsubscribe(); void unsetImplicitUnsubscribe();
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
std::string getExpires() const; std::string getExpires() const;
void setExpires(std::string const& value); void setExpires(std::string const& value);
bool expiresIsSet() const; bool expiresIsSet() const;
void unsetExpires(); void unsetExpires();
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
std::string getCallbackReference() const; std::string getCallbackReference() const;
void setCallbackReference(std::string const& value); void setCallbackReference(std::string const& value);
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
ServiceName getAmfServiceName() const; ServiceName getAmfServiceName() const;
void setAmfServiceName(ServiceName const& value); void setAmfServiceName(ServiceName const& value);
bool amfServiceNameIsSet() const; bool amfServiceNameIsSet() const;
void unsetAmfServiceName(); void unsetAmfServiceName();
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
std::vector<std::string>& getMonitoredResourceUris(); std::vector<std::string>& getMonitoredResourceUris();
void setMonitoredResourceUris(std::vector<std::string> const& value); void setMonitoredResourceUris(std::vector<std::string> const& value);
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
Snssai getSingleNssai() const; Snssai getSingleNssai() const;
void setSingleNssai(Snssai const& value); void setSingleNssai(Snssai const& value);
bool singleNssaiIsSet() const; bool singleNssaiIsSet() const;
void unsetSingleNssai(); void unsetSingleNssai();
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
std::string getDnn() const; std::string getDnn() const;
void setDnn(std::string const& value); void setDnn(std::string const& value);
bool dnnIsSet() const; bool dnnIsSet() const;
void unsetDnn(); void unsetDnn();
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
std::string getSubscriptionId() const; std::string getSubscriptionId() const;
void setSubscriptionId(std::string const& value); void setSubscriptionId(std::string const& value);
bool subscriptionIdIsSet() const; bool subscriptionIdIsSet() const;
void unsetSubscriptionId(); void unsetSubscriptionId();
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
PlmnId getPlmnId() const; PlmnId getPlmnId() const;
void setPlmnId(PlmnId const& value); void setPlmnId(PlmnId const& value);
bool plmnIdIsSet() const; bool plmnIdIsSet() const;
void unsetPlmnId(); void unsetPlmnId();
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
bool isImmediateReport() const; bool isImmediateReport() const;
void setImmediateReport(bool const value); void setImmediateReport(bool const value);
bool immediateReportIsSet() const; bool immediateReportIsSet() const;
void unsetImmediateReport(); void unsetImmediateReport();
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
SubscriptionDataSets getReport() const; SubscriptionDataSets getReport() const;
void setReport(SubscriptionDataSets const& value); void setReport(SubscriptionDataSets const& value);
bool reportIsSet() const; bool reportIsSet() const;
void unsetReport(); void unsetReport();
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
std::string getSupportedFeatures() const; std::string getSupportedFeatures() const;
void setSupportedFeatures(std::string const& value); void setSupportedFeatures(std::string const& value);
bool supportedFeaturesIsSet() const; bool supportedFeaturesIsSet() const;
void unsetSupportedFeatures(); void unsetSupportedFeatures();
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
ContextInfo getContextInfo() const; ContextInfo getContextInfo() const;
void setContextInfo(ContextInfo const& value); void setContextInfo(ContextInfo const& value);
......
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