Commit f431d19b authored by Tien-Thinh Nguyen's avatar Tien-Thinh Nguyen

Update API Server

parent 6f3b1832
#!/bin/bash
THIS_SCRIPT_PATH=$(dirname $(readlink -f $0))
#export OPENXGUDR_DIR=${THIS_SCRIPT_PATH%/*}
OPENXGUDR_DIR=${THIS_SCRIPT_PATH%/*}
OPENXGUDR_DIR=${OPENXGUDR_DIR%/*}
###############################
## echo and family
###############################
black='\E[30m'
red='\E[31m'
green='\E[32m'
yellow='\E[33m'
blue='\E[1;34m'
magenta='\E[35m'
cyan='\E[36m'
white='\E[37m'
reset_color='\E[00m'
COLORIZE=1
#-------------------------------------------------------------------------------
cecho()
{
# Color-echo
# arg1 = message
# arg2 = color
local default_msg="No Message."
message=${1:-$default_msg}
color=${2:-$green}
[ "$COLORIZE" = "1" ] && message="$color$message$reset_color"
echo -e "$message"
return
}
echo_error() { cecho "$*" $red ;}
echo_fatal() { cecho "$*" $red; exit -1 ;}
echo_warning() { cecho "$*" $yellow ;}
echo_success() { cecho "$*" $green ;}
echo_info() { cecho "$*" $blue ;}
function help()
{
echo_error " "
echo_error "Usage: build_udr [OPTION]..."
echo_error "Build the UDR executable."
echo_error " "
echo_error "Options:"
echo_error "Mandatory arguments to long options are mandatory for short options too."
echo_error " -b, --build-type Build type as defined in cmake, allowed values are: Debug Release"
echo_error " -c, --clean Clean the build generated files: config, object, executable files (build from scratch)"
echo_error " -h, --help Print this help."
echo_error " -j, --jobs Multiple jobs for compiling."
}
function main()
{
local -i install_deps=0
local -i debug=0
local -i clean=0
local -i jobs=0
until [ -z "$1" ]
do
case "$1" in
-b | --build-type)
if [[ "$2" -eq "Debug" ]]; then
debug=1
elif [[ "$2" -eq "Release" ]]; then
debug=2
else
help
return 0
fi
shift 2;
;;
-c | --clean)
clean=1
echo "clean generated files ($OPENXGUDR_DIR/build/UDR)"
shift;
;;
-j | --jobs)
jobs=1
shift;
;;
-I | --install-deps)
install_deps=1
shift;
;;
-h | --help)
help
shift;
return 0
;;
*)
echo "Unknown option $1"
help
return 1
;;
esac
done
if [ ! -d "$OPENXGUDR_DIR/build" ]; then
echo "Unknown path $OPENXGUDR_DIR/build"
return 0
fi
if [[ $install_deps -ne 0 ]]; then
apt-get install cmake make libconfig++-dev mysql-server mysql-client libmysqlclient-dev -y
if [ ! -d "$OPENXGUDR_DIR/build/ext/json/build" ]; then
mkdir $OPENXGUDR_DIR/build/ext/json/build
fi
cd $OPENXGUDR_DIR/build/ext/json/build
cmake ..
make
make install
echo "install successful!"
return 0
fi
if [[ $clean -ne 0 ]]; then
rm -rf $OPENXGUDR_DIR/build/UDR
fi
if [ ! -d "$OPENXGUDR_DIR/build/UDR" ]; then
mkdir $OPENXGUDR_DIR/build/UDR
cd $OPENXGUDR_DIR/build/UDR
if [[ $debug -eq 1 ]]; then
cmake $OPENXGUDR_DIR/src/udr_app/ -DCMAKE_OPENXGUDR_DIR=$OPENXGUDR_DIR -DCMAKE_OPENXGUDR_BUILD_TYPE=Debug
else
cmake $OPENXGUDR_DIR/src/udr_app/ -DCMAKE_OPENXGUDR_DIR=$OPENXGUDR_DIR
fi
fi
cd $OPENXGUDR_DIR/build/UDR
if [[ $jobs -ne 0 ]]; then
make -j4
else
make
fi
}
main $@
...@@ -10,7 +10,7 @@ UDR = ...@@ -10,7 +10,7 @@ UDR =
{ {
INTERFACE_NAME = "ens32"; # YOUR NETWORK CONFIG HERE INTERFACE_NAME = "ens32"; # YOUR NETWORK CONFIG HERE
IPV4_ADDRESS = "192.168.2.35"; IPV4_ADDRESS = "192.168.2.35";
PORT = 8081; # YOUR NETWORK CONFIG HERE PORT = 8081; # YOUR NETWORK CONFIG HERE
}; };
}; };
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "AMF3GPPAccessRegistrationDocumentApi.h" #include "AMF3GPPAccessRegistrationDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
#include "logger.hpp" #include "logger.hpp"
...@@ -165,4 +166,4 @@ void AMF3GPPAccessRegistrationDocumentApi:: ...@@ -165,4 +166,4 @@ void AMF3GPPAccessRegistrationDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* AMF3GPPAccessRegistrationDocumentApi.h * AMF3GPPAccessRegistrationDocumentApi.h
* *
...@@ -18,80 +19,92 @@ ...@@ -18,80 +19,92 @@
#ifndef AMF3GPPAccessRegistrationDocumentApi_H_ #ifndef AMF3GPPAccessRegistrationDocumentApi_H_
#define AMF3GPPAccessRegistrationDocumentApi_H_ #define AMF3GPPAccessRegistrationDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include <vector>
#include "Amf3GppAccessRegistration.h" #include "Amf3GppAccessRegistration.h"
#include "PatchItem.h" #include "PatchItem.h"
#include "PatchResult.h" #include "PatchResult.h"
#include "ProblemDetails.h" #include "ProblemDetails.h"
#include <string>
#include <vector>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class AMF3GPPAccessRegistrationDocumentApi { class AMF3GPPAccessRegistrationDocumentApi {
public: public:
AMF3GPPAccessRegistrationDocumentApi(std::shared_ptr<Pistache::Rest::Router>); AMF3GPPAccessRegistrationDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AMF3GPPAccessRegistrationDocumentApi() {} virtual ~AMF3GPPAccessRegistrationDocumentApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void amf_context3gpp_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void amf_context3gpp_handler(const Pistache::Rest::Request &request,
void create_amf_context3gpp_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void query_amf_context3gpp_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void create_amf_context3gpp_handler(const Pistache::Rest::Request &request,
void amf3_gpp_access_registration_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void query_amf_context3gpp_handler(const Pistache::Rest::Request &request,
std::shared_ptr<Pistache::Rest::Router> router; Pistache::Http::ResponseWriter response);
void amf3_gpp_access_registration_document_api_default_handler(
/// <summary> const Pistache::Rest::Request &request,
/// To modify the AMF context data of a UE using 3gpp access in the UDR Pistache::Http::ResponseWriter response);
/// </summary>
/// <remarks> std::shared_ptr<Pistache::Rest::Router> router;
///
/// </remarks> /// <summary>
/// <param name="ueId">UE id</param> /// To modify the AMF context data of a UE using 3gpp access in the UDR
/// <param name="patchItem"></param> /// </summary>
/// <param name="supportedFeatures">Features required to be supported by the target NF (optional, default to &quot;&quot;)</param> /// <remarks>
virtual void amf_context3gpp(const std::string &ueId, const std::vector<PatchItem> &patchItem, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; ///
/// </remarks>
/// <summary> /// <param name="ueId">UE id</param>
/// To store the AMF context data of a UE using 3gpp access in the UDR /// <param name="patchItem"></param>
/// </summary> /// <param name="supportedFeatures">Features required to be supported by the
/// <remarks> /// target NF (optional, default to &quot;&quot;)</param>
/// virtual void amf_context3gpp(
/// </remarks> const std::string &ueId, const std::vector<PatchItem> &patchItem,
/// <param name="ueId">UE id</param> const Pistache::Optional<std::string> &supportedFeatures,
/// <param name="amf3GppAccessRegistration"> (optional)</param> Pistache::Http::ResponseWriter &response) = 0;
virtual void create_amf_context3gpp(const std::string &ueId, Amf3GppAccessRegistration &amf3GppAccessRegistration, Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// <summary> /// To store the AMF context data of a UE using 3gpp access in the UDR
/// Retrieves the AMF context data of a UE using 3gpp access /// </summary>
/// </summary> /// <remarks>
/// <remarks> ///
/// /// </remarks>
/// </remarks> /// <param name="ueId">UE id</param>
/// <param name="ueId">UE id</param> /// <param name="amf3GppAccessRegistration"> (optional)</param>
/// <param name="fields">attributes to be retrieved (optional, default to std::vector&lt;std::string&gt;())</param> virtual void create_amf_context3gpp(
/// <param name="supportedFeatures">Supported Features (optional, default to &quot;&quot;)</param> const std::string &ueId,
virtual void query_amf_context3gpp(const std::string &ueId, const Pistache::Optional<std::vector<std::string>> &fields, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; Amf3GppAccessRegistration &amf3GppAccessRegistration,
Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Retrieves the AMF context data of a UE using 3gpp access
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="fields">attributes to be retrieved (optional, default to
/// std::vector&lt;std::string&gt;())</param> <param
/// name="supportedFeatures">Supported Features (optional, default to
/// &quot;&quot;)</param>
virtual void query_amf_context3gpp(
const std::string &ueId,
const Pistache::Optional<std::vector<std::string>> &fields,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* AMF3GPPAccessRegistrationDocumentApi_H_ */ #endif /* AMF3GPPAccessRegistrationDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "AMFNon3GPPAccessRegistrationDocumentApi.h" #include "AMFNon3GPPAccessRegistrationDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -36,18 +37,18 @@ void AMFNon3GPPAccessRegistrationDocumentApi::setupRoutes() { ...@@ -36,18 +37,18 @@ void AMFNon3GPPAccessRegistrationDocumentApi::setupRoutes() {
Routes::bind( Routes::bind(
&AMFNon3GPPAccessRegistrationDocumentApi::amf_context_non3gpp_handler, &AMFNon3GPPAccessRegistrationDocumentApi::amf_context_non3gpp_handler,
this)); this));
Routes::Put(*router, Routes::Put(
base + *router,
"/subscription-data/:ueId/context-data/amf-non-3gpp-access", base + "/subscription-data/:ueId/context-data/amf-non-3gpp-access",
Routes::bind(&AMFNon3GPPAccessRegistrationDocumentApi:: Routes::bind(&AMFNon3GPPAccessRegistrationDocumentApi::
create_amf_context_non3gpp_handler, create_amf_context_non3gpp_handler,
this)); this));
Routes::Get(*router, Routes::Get(
base + *router,
"/subscription-data/:ueId/context-data/amf-non-3gpp-access", base + "/subscription-data/:ueId/context-data/amf-non-3gpp-access",
Routes::bind(&AMFNon3GPPAccessRegistrationDocumentApi:: Routes::bind(&AMFNon3GPPAccessRegistrationDocumentApi::
query_amf_context_non3gpp_handler, query_amf_context_non3gpp_handler,
this)); this));
// Default handler, called when a route is not found // Default handler, called when a route is not found
router->addCustomHandler(Routes::bind( router->addCustomHandler(Routes::bind(
...@@ -167,4 +168,4 @@ void AMFNon3GPPAccessRegistrationDocumentApi:: ...@@ -167,4 +168,4 @@ void AMFNon3GPPAccessRegistrationDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* AMFNon3GPPAccessRegistrationDocumentApi.h * AMFNon3GPPAccessRegistrationDocumentApi.h
* *
* *
*/ */
#ifndef AMFNon3GPPAccessRegistrationDocumentApi_H_ #ifndef AMFNon3GPPAccessRegistrationDocumentApi_H_
#define AMFNon3GPPAccessRegistrationDocumentApi_H_ #define AMFNon3GPPAccessRegistrationDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include <vector>
#include "Amf3GppAccessRegistration.h" #include "Amf3GppAccessRegistration.h"
#include "AmfNon3GppAccessRegistration.h" #include "AmfNon3GppAccessRegistration.h"
#include "PatchItem.h" #include "PatchItem.h"
#include "PatchResult.h" #include "PatchResult.h"
#include "ProblemDetails.h" #include "ProblemDetails.h"
#include <string>
#include <vector>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class AMFNon3GPPAccessRegistrationDocumentApi { class AMFNon3GPPAccessRegistrationDocumentApi {
public: public:
AMFNon3GPPAccessRegistrationDocumentApi(std::shared_ptr<Pistache::Rest::Router>); AMFNon3GPPAccessRegistrationDocumentApi(
virtual ~AMFNon3GPPAccessRegistrationDocumentApi() {} std::shared_ptr<Pistache::Rest::Router>);
void init(); virtual ~AMFNon3GPPAccessRegistrationDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes(); private:
void setupRoutes();
void amf_context_non3gpp_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void create_amf_context_non3gpp_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void amf_context_non3gpp_handler(const Pistache::Rest::Request &request,
void query_amf_context_non3gpp_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void amf_non3_gpp_access_registration_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void create_amf_context_non3gpp_handler(
const Pistache::Rest::Request &request,
std::shared_ptr<Pistache::Rest::Router> router; Pistache::Http::ResponseWriter response);
void query_amf_context_non3gpp_handler(
/// <summary> const Pistache::Rest::Request &request,
/// To modify the AMF context data of a UE using non 3gpp access in the UDR Pistache::Http::ResponseWriter response);
/// </summary> void amf_non3_gpp_access_registration_document_api_default_handler(
/// <remarks> const Pistache::Rest::Request &request,
/// Pistache::Http::ResponseWriter response);
/// </remarks>
/// <param name="ueId">UE id</param> std::shared_ptr<Pistache::Rest::Router> router;
/// <param name="patchItem"></param>
/// <param name="supportedFeatures">Features required to be supported by the target NF (optional, default to &quot;&quot;)</param> /// <summary>
virtual void amf_context_non3gpp(const std::string &ueId, const std::vector<PatchItem> &patchItem, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; /// To modify the AMF context data of a UE using non 3gpp access in the UDR
/// </summary>
/// <summary> /// <remarks>
/// To store the AMF context data of a UE using non-3gpp access in the UDR ///
/// </summary> /// </remarks>
/// <remarks> /// <param name="ueId">UE id</param>
/// /// <param name="patchItem"></param>
/// </remarks> /// <param name="supportedFeatures">Features required to be supported by the
/// <param name="ueId">UE id</param> /// target NF (optional, default to &quot;&quot;)</param>
/// <param name="amfNon3GppAccessRegistration"> (optional)</param> virtual void amf_context_non3gpp(
virtual void create_amf_context_non3gpp(const std::string &ueId, const AmfNon3GppAccessRegistration &amfNon3GppAccessRegistration, Pistache::Http::ResponseWriter &response) = 0; const std::string &ueId, const std::vector<PatchItem> &patchItem,
const Pistache::Optional<std::string> &supportedFeatures,
/// <summary> Pistache::Http::ResponseWriter &response) = 0;
/// Retrieves the AMF context data of a UE using non-3gpp access
/// </summary> /// <summary>
/// <remarks> /// To store the AMF context data of a UE using non-3gpp access in the UDR
/// /// </summary>
/// </remarks> /// <remarks>
/// <param name="ueId">UE id</param> ///
/// <param name="fields">attributes to be retrieved (optional, default to std::vector&lt;std::string&gt;())</param> /// </remarks>
/// <param name="supportedFeatures">Supported Features (optional, default to &quot;&quot;)</param> /// <param name="ueId">UE id</param>
virtual void query_amf_context_non3gpp(const std::string &ueId, const Pistache::Optional<std::vector<std::string>> &fields, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; /// <param name="amfNon3GppAccessRegistration"> (optional)</param>
virtual void create_amf_context_non3gpp(
const std::string &ueId,
const AmfNon3GppAccessRegistration &amfNon3GppAccessRegistration,
Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Retrieves the AMF context data of a UE using non-3gpp access
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="fields">attributes to be retrieved (optional, default to
/// std::vector&lt;std::string&gt;())</param> <param
/// name="supportedFeatures">Supported Features (optional, default to
/// &quot;&quot;)</param>
virtual void query_amf_context_non3gpp(
const std::string &ueId,
const Pistache::Optional<std::vector<std::string>> &fields,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* AMFNon3GPPAccessRegistrationDocumentApi_H_ */ #endif /* AMFNon3GPPAccessRegistrationDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "AccessAndMobilityDataApi.h" #include "AccessAndMobilityDataApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -170,4 +171,4 @@ void AccessAndMobilityDataApi::access_and_mobility_data_api_default_handler( ...@@ -170,4 +171,4 @@ void AccessAndMobilityDataApi::access_and_mobility_data_api_default_handler(
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* AccessAndMobilityDataApi.h * AccessAndMobilityDataApi.h
* *
* *
*/ */
#ifndef AccessAndMobilityDataApi_H_ #ifndef AccessAndMobilityDataApi_H_
#define AccessAndMobilityDataApi_H_ #define AccessAndMobilityDataApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "AccessAndMobilityData.h" #include "AccessAndMobilityData.h"
#include "ProblemDetails.h" #include "ProblemDetails.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class AccessAndMobilityDataApi { class AccessAndMobilityDataApi {
public: public:
AccessAndMobilityDataApi(std::shared_ptr<Pistache::Rest::Router>); AccessAndMobilityDataApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AccessAndMobilityDataApi() {} virtual ~AccessAndMobilityDataApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void create_or_replace_access_and_mobility_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void create_or_replace_access_and_mobility_data_handler(
void delete_access_and_mobility_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); const Pistache::Rest::Request &request,
void query_access_and_mobility_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void update_access_and_mobility_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void delete_access_and_mobility_data_handler(
void access_and_mobility_data_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router; void query_access_and_mobility_data_handler(
const Pistache::Rest::Request &request,
/// <summary> Pistache::Http::ResponseWriter response);
/// Creates and updates the access and mobility exposure data for a UE void update_access_and_mobility_data_handler(
/// </summary> const Pistache::Rest::Request &request,
/// <remarks> Pistache::Http::ResponseWriter response);
/// void access_and_mobility_data_api_default_handler(
/// </remarks> const Pistache::Rest::Request &request,
/// <param name="ueId">UE id</param> Pistache::Http::ResponseWriter response);
/// <param name="accessAndMobilityData"></param>
virtual void create_or_replace_access_and_mobility_data(const std::string &ueId, const AccessAndMobilityData &accessAndMobilityData, Pistache::Http::ResponseWriter &response) = 0; std::shared_ptr<Pistache::Rest::Router> router;
/// <summary> /// <summary>
/// Deletes the access and mobility exposure data for a UE /// Creates and updates the access and mobility exposure data for a UE
/// </summary> /// </summary>
/// <remarks> /// <remarks>
/// ///
/// </remarks> /// </remarks>
/// <param name="ueId">UE id</param> /// <param name="ueId">UE id</param>
virtual void delete_access_and_mobility_data(const std::string &ueId, Pistache::Http::ResponseWriter &response) = 0; /// <param name="accessAndMobilityData"></param>
virtual void create_or_replace_access_and_mobility_data(
/// <summary> const std::string &ueId,
/// Retrieves the access and mobility exposure data for a UE const AccessAndMobilityData &accessAndMobilityData,
/// </summary> Pistache::Http::ResponseWriter &response) = 0;
/// <remarks>
/// /// <summary>
/// </remarks> /// Deletes the access and mobility exposure data for a UE
/// <param name="ueId">UE id</param> /// </summary>
/// <param name="suppFeat">Supported Features (optional, default to &quot;&quot;)</param> /// <remarks>
virtual void query_access_and_mobility_data(const std::string &ueId, const Pistache::Optional<std::string> &suppFeat, Pistache::Http::ResponseWriter &response) = 0; ///
/// </remarks>
/// <summary> /// <param name="ueId">UE id</param>
/// Updates the access and mobility exposure data for a UE virtual void delete_access_and_mobility_data(
/// </summary> const std::string &ueId, Pistache::Http::ResponseWriter &response) = 0;
/// <remarks>
/// /// <summary>
/// </remarks> /// Retrieves the access and mobility exposure data for a UE
/// <param name="ueId">UE id</param> /// </summary>
/// <param name="accessAndMobilityData"></param> /// <remarks>
virtual void update_access_and_mobility_data(const std::string &ueId, const AccessAndMobilityData &accessAndMobilityData, Pistache::Http::ResponseWriter &response) = 0; ///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="suppFeat">Supported Features (optional, default to
/// &quot;&quot;)</param>
virtual void query_access_and_mobility_data(
const std::string &ueId, const Pistache::Optional<std::string> &suppFeat,
Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Updates the access and mobility exposure data for a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="accessAndMobilityData"></param>
virtual void update_access_and_mobility_data(
const std::string &ueId,
const AccessAndMobilityData &accessAndMobilityData,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* AccessAndMobilityDataApi_H_ */ #endif /* AccessAndMobilityDataApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "AccessAndMobilityPolicyDataDocumentApi.h" #include "AccessAndMobilityPolicyDataDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -72,4 +73,4 @@ void AccessAndMobilityPolicyDataDocumentApi:: ...@@ -72,4 +73,4 @@ void AccessAndMobilityPolicyDataDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* AccessAndMobilityPolicyDataDocumentApi.h * AccessAndMobilityPolicyDataDocumentApi.h
* *
* *
*/ */
#ifndef AccessAndMobilityPolicyDataDocumentApi_H_ #ifndef AccessAndMobilityPolicyDataDocumentApi_H_
#define AccessAndMobilityPolicyDataDocumentApi_H_ #define AccessAndMobilityPolicyDataDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "AmPolicyData.h" #include "AmPolicyData.h"
#include "ProblemDetails.h" #include "ProblemDetails.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class AccessAndMobilityPolicyDataDocumentApi { class AccessAndMobilityPolicyDataDocumentApi {
public: public:
AccessAndMobilityPolicyDataDocumentApi(std::shared_ptr<Pistache::Rest::Router>); AccessAndMobilityPolicyDataDocumentApi(
virtual ~AccessAndMobilityPolicyDataDocumentApi() {} std::shared_ptr<Pistache::Rest::Router>);
void init(); virtual ~AccessAndMobilityPolicyDataDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes(); private:
void setupRoutes();
void read_access_and_mobility_policy_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void access_and_mobility_policy_data_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void read_access_and_mobility_policy_data_handler(
const Pistache::Rest::Request &request,
std::shared_ptr<Pistache::Rest::Router> router; Pistache::Http::ResponseWriter response);
void access_and_mobility_policy_data_document_api_default_handler(
/// <summary> const Pistache::Rest::Request &request,
/// Retrieves the access and mobility policy data for a subscriber Pistache::Http::ResponseWriter response);
/// </summary>
/// <remarks> std::shared_ptr<Pistache::Rest::Router> router;
///
/// </remarks> /// <summary>
/// <param name="ueId"></param> /// Retrieves the access and mobility policy data for a subscriber
virtual void read_access_and_mobility_policy_data(const std::string &ueId, Pistache::Http::ResponseWriter &response) = 0; /// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId"></param>
virtual void read_access_and_mobility_policy_data(
const std::string &ueId, Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* AccessAndMobilityPolicyDataDocumentApi_H_ */ #endif /* AccessAndMobilityPolicyDataDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "AccessAndMobilitySubscriptionDataDocumentApi.h" #include "AccessAndMobilitySubscriptionDataDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
#include "logger.hpp" #include "logger.hpp"
...@@ -102,4 +103,4 @@ void AccessAndMobilitySubscriptionDataDocumentApi:: ...@@ -102,4 +103,4 @@ void AccessAndMobilitySubscriptionDataDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* AccessAndMobilitySubscriptionDataDocumentApi.h * AccessAndMobilitySubscriptionDataDocumentApi.h
* *
* *
*/ */
#ifndef AccessAndMobilitySubscriptionDataDocumentApi_H_ #ifndef AccessAndMobilitySubscriptionDataDocumentApi_H_
#define AccessAndMobilitySubscriptionDataDocumentApi_H_ #define AccessAndMobilitySubscriptionDataDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "AccessAndMobilitySubscriptionData.h" #include "AccessAndMobilitySubscriptionData.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class AccessAndMobilitySubscriptionDataDocumentApi { class AccessAndMobilitySubscriptionDataDocumentApi {
public: public:
AccessAndMobilitySubscriptionDataDocumentApi(std::shared_ptr<Pistache::Rest::Router>); AccessAndMobilitySubscriptionDataDocumentApi(
virtual ~AccessAndMobilitySubscriptionDataDocumentApi() {} std::shared_ptr<Pistache::Rest::Router>);
void init(); virtual ~AccessAndMobilitySubscriptionDataDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes(); private:
void setupRoutes();
void query_am_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void access_and_mobility_subscription_data_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void query_am_data_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router; void access_and_mobility_subscription_data_document_api_default_handler(
const Pistache::Rest::Request &request,
/// <summary> Pistache::Http::ResponseWriter response);
/// Retrieves the access and mobility subscription data of a UE
/// </summary> std::shared_ptr<Pistache::Rest::Router> router;
/// <remarks>
/// /// <summary>
/// </remarks> /// Retrieves the access and mobility subscription data of a UE
/// <param name="ueId">UE id</param> /// </summary>
/// <param name="servingPlmnId">PLMN ID</param> /// <remarks>
/// <param name="fields">attributes to be retrieved (optional, default to std::vector&lt;std::string&gt;())</param> ///
/// <param name="supportedFeatures">Supported Features (optional, default to &quot;&quot;)</param> /// </remarks>
/// <param name="ifNoneMatch">Validator for conditional requests, as described in RFC 7232, 3.2 (optional, default to &quot;&quot;)</param> /// <param name="ueId">UE id</param>
/// <param name="ifModifiedSince">Validator for conditional requests, as described in RFC 7232, 3.3 (optional, default to &quot;&quot;)</param> /// <param name="servingPlmnId">PLMN ID</param>
virtual void query_am_data(const std::string &ueId, const std::string &servingPlmnId, const Pistache::Optional<std::vector<std::string>> &fields, const Pistache::Optional<std::string> &supportedFeatures, const Pistache::Optional<Pistache::Http::Header::Raw> &ifNoneMatch, const Pistache::Optional<Pistache::Http::Header::Raw> &ifModifiedSince, Pistache::Http::ResponseWriter &response) = 0; /// <param name="fields">attributes to be retrieved (optional, default to
/// std::vector&lt;std::string&gt;())</param> <param
/// name="supportedFeatures">Supported Features (optional, default to
/// &quot;&quot;)</param> <param name="ifNoneMatch">Validator for conditional
/// requests, as described in RFC 7232, 3.2 (optional, default to
/// &quot;&quot;)</param> <param name="ifModifiedSince">Validator for
/// conditional requests, as described in RFC 7232, 3.3 (optional, default to
/// &quot;&quot;)</param>
virtual void query_am_data(
const std::string &ueId, const std::string &servingPlmnId,
const Pistache::Optional<std::vector<std::string>> &fields,
const Pistache::Optional<std::string> &supportedFeatures,
const Pistache::Optional<Pistache::Http::Header::Raw> &ifNoneMatch,
const Pistache::Optional<Pistache::Http::Header::Raw> &ifModifiedSince,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* AccessAndMobilitySubscriptionDataDocumentApi_H_ */ #endif /* AccessAndMobilitySubscriptionDataDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "AmfSubscriptionInfoDocumentApi.h" #include "AmfSubscriptionInfoDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -31,8 +32,9 @@ void AmfSubscriptionInfoDocumentApi::setupRoutes() { ...@@ -31,8 +32,9 @@ void AmfSubscriptionInfoDocumentApi::setupRoutes() {
Routes::Patch( Routes::Patch(
*router, *router,
base + "/subscription-data/:ueId/context-data/ee-subscriptions/:subsId/" base +
"amf-subscriptions", "/subscription-data/:ueId/context-data/ee-subscriptions/:subsId/"
"amf-subscriptions",
Routes::bind( Routes::bind(
&AmfSubscriptionInfoDocumentApi::modify_amf_subscription_info_handler, &AmfSubscriptionInfoDocumentApi::modify_amf_subscription_info_handler,
this)); this));
...@@ -90,4 +92,4 @@ void AmfSubscriptionInfoDocumentApi:: ...@@ -90,4 +92,4 @@ void AmfSubscriptionInfoDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* AmfSubscriptionInfoDocumentApi.h * AmfSubscriptionInfoDocumentApi.h
* *
* *
*/ */
#ifndef _AmfSubscriptionInfoDocumentApi_H_ #ifndef _AmfSubscriptionInfoDocumentApi_H_
#define _AmfSubscriptionInfoDocumentApi_H_ #define _AmfSubscriptionInfoDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include <vector>
#include "PatchItem.h" #include "PatchItem.h"
#include "PatchResult.h" #include "PatchResult.h"
#include "ProblemDetails.h" #include "ProblemDetails.h"
#include <string>
#include <vector>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class AmfSubscriptionInfoDocumentApi { class AmfSubscriptionInfoDocumentApi {
public: public:
AmfSubscriptionInfoDocumentApi(std::shared_ptr<Pistache::Rest::Router>); AmfSubscriptionInfoDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AmfSubscriptionInfoDocumentApi() {} virtual ~AmfSubscriptionInfoDocumentApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void modify_amf_subscription_info_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void modify_amf_subscription_info_handler(
void amf_subscription_info_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router; void amf_subscription_info_document_api_default_handler(
const Pistache::Rest::Request &request,
/// <summary> Pistache::Http::ResponseWriter response);
/// modify the AMF Subscription Info
/// </summary> std::shared_ptr<Pistache::Rest::Router> router;
/// <remarks>
/// /// <summary>
/// </remarks> /// modify the AMF Subscription Info
/// <param name="ueId"></param> /// </summary>
/// <param name="subsId"></param> /// <remarks>
/// <param name="patchItem"></param> ///
/// <param name="supportedFeatures">Features required to be supported by the target NF (optional, default to &quot;&quot;)</param> /// </remarks>
virtual void modify_amf_subscription_info(const std::string &ueId, const std::string &subsId, const std::vector<PatchItem> &patchItem, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; /// <param name="ueId"></param>
/// <param name="subsId"></param>
/// <param name="patchItem"></param>
/// <param name="supportedFeatures">Features required to be supported by the
/// target NF (optional, default to &quot;&quot;)</param>
virtual void modify_amf_subscription_info(
const std::string &ueId, const std::string &subsId,
const std::vector<PatchItem> &patchItem,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* AmfSubscriptionInfoDocumentApi_H_ */ #endif /* AmfSubscriptionInfoDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "ApplicationDataSubscriptionsCollectionApi.h" #include "ApplicationDataSubscriptionsCollectionApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -52,7 +53,6 @@ void ApplicationDataSubscriptionsCollectionApi:: ...@@ -52,7 +53,6 @@ void ApplicationDataSubscriptionsCollectionApi::
create_individual_application_data_subscription_handler( create_individual_application_data_subscription_handler(
const Pistache::Rest::Request &request, const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) { Pistache::Http::ResponseWriter response) {
// Getting the body param // Getting the body param
ApplicationDataSubs applicationDataSubs; ApplicationDataSubs applicationDataSubs;
...@@ -78,7 +78,6 @@ void ApplicationDataSubscriptionsCollectionApi:: ...@@ -78,7 +78,6 @@ void ApplicationDataSubscriptionsCollectionApi::
read_application_data_change_subscriptions_handler( read_application_data_change_subscriptions_handler(
const Pistache::Rest::Request &request, const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) { Pistache::Http::ResponseWriter response) {
// Getting the query params // Getting the query params
auto dataFilterQuery = request.query().get("data-filter"); auto dataFilterQuery = request.query().get("data-filter");
Pistache::Optional<DataFilter> dataFilter; Pistache::Optional<DataFilter> dataFilter;
...@@ -113,4 +112,4 @@ void ApplicationDataSubscriptionsCollectionApi:: ...@@ -113,4 +112,4 @@ void ApplicationDataSubscriptionsCollectionApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* ApplicationDataSubscriptionsCollectionApi.h * ApplicationDataSubscriptionsCollectionApi.h
* *
* *
*/ */
#ifndef ApplicationDataSubscriptionsCollectionApi_H_ #ifndef ApplicationDataSubscriptionsCollectionApi_H_
#define ApplicationDataSubscriptionsCollectionApi_H_ #define ApplicationDataSubscriptionsCollectionApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include "ApplicationDataSubs.h" #include "ApplicationDataSubs.h"
#include "DataFilter.h" #include "DataFilter.h"
...@@ -33,47 +32,54 @@ namespace oai::udr::api { ...@@ -33,47 +32,54 @@ namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class ApplicationDataSubscriptionsCollectionApi { class ApplicationDataSubscriptionsCollectionApi {
public: public:
ApplicationDataSubscriptionsCollectionApi(std::shared_ptr<Pistache::Rest::Router>); ApplicationDataSubscriptionsCollectionApi(
virtual ~ApplicationDataSubscriptionsCollectionApi() {} std::shared_ptr<Pistache::Rest::Router>);
void init(); virtual ~ApplicationDataSubscriptionsCollectionApi() {}
void init();
const std::string base = "/nudr-dr/v2";
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes(); private:
void setupRoutes();
void create_individual_application_data_subscription_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void read_application_data_change_subscriptions_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void create_individual_application_data_subscription_handler(
void application_data_subscriptions_collection_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router; void read_application_data_change_subscriptions_handler(
const Pistache::Rest::Request &request,
/// <summary> Pistache::Http::ResponseWriter response);
/// Create a subscription to receive notification of application data changes void application_data_subscriptions_collection_api_default_handler(
/// </summary> const Pistache::Rest::Request &request,
/// <remarks> Pistache::Http::ResponseWriter response);
///
/// </remarks> std::shared_ptr<Pistache::Rest::Router> router;
/// <param name="applicationDataSubs"></param>
virtual void create_individual_application_data_subscription(const ApplicationDataSubs &applicationDataSubs, Pistache::Http::ResponseWriter &response) = 0; /// <summary>
/// Create a subscription to receive notification of application data changes
/// <summary> /// </summary>
/// Read Application Data change Subscriptions /// <remarks>
/// </summary> ///
/// <remarks> /// </remarks>
/// /// <param name="applicationDataSubs"></param>
/// </remarks> virtual void create_individual_application_data_subscription(
/// <param name="dataFilter">The data filter for the query. (optional, default to DataFilter())</param> const ApplicationDataSubs &applicationDataSubs,
virtual void read_application_data_change_subscriptions(const Pistache::Optional<DataFilter> &dataFilter, Pistache::Http::ResponseWriter &response) = 0; Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Read Application Data change Subscriptions
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="dataFilter">The data filter for the query. (optional, default
/// to DataFilter())</param>
virtual void read_application_data_change_subscriptions(
const Pistache::Optional<DataFilter> &dataFilter,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* ApplicationDataSubscriptionsCollectionApi_H_ */ #endif /* ApplicationDataSubscriptionsCollectionApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "AuthenticationSoRDocumentApi.h" #include "AuthenticationSoRDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -125,4 +126,4 @@ void AuthenticationSoRDocumentApi:: ...@@ -125,4 +126,4 @@ void AuthenticationSoRDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* AuthenticationSoRDocumentApi.h * AuthenticationSoRDocumentApi.h
* *
* *
*/ */
#ifndef AuthenticationSoRDocumentApi_H_ #ifndef AuthenticationSoRDocumentApi_H_
#define AuthenticationSoRDocumentApi_H_ #define AuthenticationSoRDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "SorData.h" #include "SorData.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class AuthenticationSoRDocumentApi { class AuthenticationSoRDocumentApi {
public: public:
AuthenticationSoRDocumentApi(std::shared_ptr<Pistache::Rest::Router>); AuthenticationSoRDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AuthenticationSoRDocumentApi() {} virtual ~AuthenticationSoRDocumentApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void create_authentication_so_r_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void create_authentication_so_r_handler(
void query_auth_so_r_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); const Pistache::Rest::Request &request,
void authentication_so_r_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void query_auth_so_r_handler(const Pistache::Rest::Request &request,
std::shared_ptr<Pistache::Rest::Router> router; Pistache::Http::ResponseWriter response);
void authentication_so_r_document_api_default_handler(
/// <summary> const Pistache::Rest::Request &request,
/// To store the SoR acknowledgement information of a UE Pistache::Http::ResponseWriter response);
/// </summary>
/// <remarks> std::shared_ptr<Pistache::Rest::Router> router;
///
/// </remarks> /// <summary>
/// <param name="ueId">UE id</param> /// To store the SoR acknowledgement information of a UE
/// <param name="supportedFeatures">Supported Features (optional, default to &quot;&quot;)</param> /// </summary>
/// <param name="sorData"> (optional)</param> /// <remarks>
virtual void create_authentication_so_r(const std::string &ueId, const Pistache::Optional<std::string> &supportedFeatures, const SorData &sorData, Pistache::Http::ResponseWriter &response) = 0; ///
/// </remarks>
/// <summary> /// <param name="ueId">UE id</param>
/// Retrieves the SoR acknowledgement information of a UE /// <param name="supportedFeatures">Supported Features (optional, default to
/// </summary> /// &quot;&quot;)</param> <param name="sorData"> (optional)</param>
/// <remarks> virtual void create_authentication_so_r(
/// const std::string &ueId,
/// </remarks> const Pistache::Optional<std::string> &supportedFeatures,
/// <param name="ueId">UE id</param> const SorData &sorData, Pistache::Http::ResponseWriter &response) = 0;
/// <param name="supportedFeatures">Supported Features (optional, default to &quot;&quot;)</param>
virtual void query_auth_so_r(const std::string &ueId, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; /// <summary>
/// Retrieves the SoR acknowledgement information of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="supportedFeatures">Supported Features (optional, default to
/// &quot;&quot;)</param>
virtual void query_auth_so_r(
const std::string &ueId,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* AuthenticationSoRDocumentApi_H_ */ #endif /* AuthenticationSoRDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "AuthenticationStatusDocumentApi.h" #include "AuthenticationStatusDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
#include "logger.hpp" #include "logger.hpp"
...@@ -162,4 +163,4 @@ void AuthenticationStatusDocumentApi:: ...@@ -162,4 +163,4 @@ void AuthenticationStatusDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* AuthenticationStatusDocumentApi.h * AuthenticationStatusDocumentApi.h
* *
...@@ -18,58 +19,67 @@ ...@@ -18,58 +19,67 @@
#ifndef AuthenticationStatusDocumentApi_H_ #ifndef AuthenticationStatusDocumentApi_H_
#define AuthenticationStatusDocumentApi_H_ #define AuthenticationStatusDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "AuthEvent.h" #include "AuthEvent.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class AuthenticationStatusDocumentApi { class AuthenticationStatusDocumentApi {
public: public:
AuthenticationStatusDocumentApi(std::shared_ptr<Pistache::Rest::Router>); AuthenticationStatusDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AuthenticationStatusDocumentApi() {} virtual ~AuthenticationStatusDocumentApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void create_authentication_status_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void create_authentication_status_handler(
const Pistache::Rest::Request &request,
void delete_authentication_status_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void query_authentication_status_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void delete_authentication_status_handler(
void authentication_status_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router; void query_authentication_status_handler(
const Pistache::Rest::Request &request,
/// <summary> Pistache::Http::ResponseWriter response);
/// To store the Authentication Status data of a UE
/// </summary> void authentication_status_document_api_default_handler(
/// <remarks> const Pistache::Rest::Request &request,
/// Pistache::Http::ResponseWriter response);
/// </remarks>
/// <param name="ueId">UE id</param> std::shared_ptr<Pistache::Rest::Router> router;
/// <param name="authEvent"> (optional)</param>
virtual void create_authentication_status(const std::string &ueId, const AuthEvent &authEvent, Pistache::Http::ResponseWriter &response) = 0; /// <summary>
virtual void delete_authentication_status(const std::string &ueId, Pistache::Http::ResponseWriter &response) = 0; /// To store the Authentication Status data of a UE
virtual void query_authentication_status(const std::string &ueId, const Pistache::Optional<std::vector<std::string>> &fields, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; /// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="authEvent"> (optional)</param>
virtual void create_authentication_status(
const std::string &ueId, const AuthEvent &authEvent,
Pistache::Http::ResponseWriter &response) = 0;
virtual void delete_authentication_status(
const std::string &ueId, Pistache::Http::ResponseWriter &response) = 0;
virtual void query_authentication_status(
const std::string &ueId,
const Pistache::Optional<std::vector<std::string>> &fields,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* AuthenticationStatusDocumentApi_H_ */ #endif /* AuthenticationStatusDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "AuthenticationSubscriptionDocumentApi.h" #include "AuthenticationSubscriptionDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
#include "logger.hpp" #include "logger.hpp"
...@@ -31,14 +32,16 @@ void AuthenticationSubscriptionDocumentApi::setupRoutes() { ...@@ -31,14 +32,16 @@ void AuthenticationSubscriptionDocumentApi::setupRoutes() {
using namespace Pistache::Rest; using namespace Pistache::Rest;
Routes::Get(*router, Routes::Get(*router,
base + "/subscription-data/:ueId/authentication-data/" base +
"authentication-subscription", "/subscription-data/:ueId/authentication-data/"
"authentication-subscription",
Routes::bind(&AuthenticationSubscriptionDocumentApi:: Routes::bind(&AuthenticationSubscriptionDocumentApi::
read_authentication_subscription_handler, read_authentication_subscription_handler,
this)); this));
Routes::Patch(*router, Routes::Patch(*router,
base + "/subscription-data/:ueId/authentication-data/" base +
"authentication-subscription", "/subscription-data/:ueId/authentication-data/"
"authentication-subscription",
Routes::bind(&AuthenticationSubscriptionDocumentApi:: Routes::bind(&AuthenticationSubscriptionDocumentApi::
modify_authentication_subscription_handler, modify_authentication_subscription_handler,
this)); this));
...@@ -132,4 +135,4 @@ void AuthenticationSubscriptionDocumentApi:: ...@@ -132,4 +135,4 @@ void AuthenticationSubscriptionDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* AuthenticationSubscriptionDocumentApi.h * AuthenticationSubscriptionDocumentApi.h
* *
* *
*/ */
#ifndef AuthenticationSubscriptionDocumentApi_H_ #ifndef AuthenticationSubscriptionDocumentApi_H_
#define AuthenticationSubscriptionDocumentApi_H_ #define AuthenticationSubscriptionDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include <vector>
#include "PatchItem.h" #include "PatchItem.h"
#include "PatchResult.h" #include "PatchResult.h"
#include "ProblemDetails.h" #include "ProblemDetails.h"
#include <string>
#include <vector>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class AuthenticationSubscriptionDocumentApi { class AuthenticationSubscriptionDocumentApi {
public: public:
AuthenticationSubscriptionDocumentApi(std::shared_ptr<Pistache::Rest::Router>); AuthenticationSubscriptionDocumentApi(
virtual ~AuthenticationSubscriptionDocumentApi() {} std::shared_ptr<Pistache::Rest::Router>);
void init(); virtual ~AuthenticationSubscriptionDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes(); private:
void setupRoutes();
void modify_authentication_subscription_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void read_authentication_subscription_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void modify_authentication_subscription_handler(
void authentication_subscription_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router; void read_authentication_subscription_handler(
const Pistache::Rest::Request &request,
/// <summary> Pistache::Http::ResponseWriter response);
/// modify the authentication subscription data of a UE void authentication_subscription_document_api_default_handler(
/// </summary> const Pistache::Rest::Request &request,
/// <remarks> Pistache::Http::ResponseWriter response);
///
/// </remarks> std::shared_ptr<Pistache::Rest::Router> router;
/// <param name="ueId">UE id</param>
/// <param name="patchItem"></param> /// <summary>
/// <param name="supportedFeatures">Features required to be supported by the target NF (optional, default to &quot;&quot;)</param> /// modify the authentication subscription data of a UE
virtual void modify_authentication_subscription(const std::string &ueId, const std::vector<PatchItem> &patchItem, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; /// </summary>
virtual void read_authentication_subscription(const std::string &ueId, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; /// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="patchItem"></param>
/// <param name="supportedFeatures">Features required to be supported by the
/// target NF (optional, default to &quot;&quot;)</param>
virtual void modify_authentication_subscription(
const std::string &ueId, const std::vector<PatchItem> &patchItem,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
virtual void read_authentication_subscription(
const std::string &ueId,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* AuthenticationSubscriptionDocumentApi_H_ */ #endif /* AuthenticationSubscriptionDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "AuthenticationUPUDocumentApi.h" #include "AuthenticationUPUDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -124,4 +125,4 @@ void AuthenticationUPUDocumentApi:: ...@@ -124,4 +125,4 @@ void AuthenticationUPUDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* AuthenticationUPUDocumentApi.h * AuthenticationUPUDocumentApi.h
* *
* *
*/ */
#ifndef AuthenticationUPUDocumentApi_H_ #ifndef AuthenticationUPUDocumentApi_H_
#define AuthenticationUPUDocumentApi_H_ #define AuthenticationUPUDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "UpuData.h" #include "UpuData.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class AuthenticationUPUDocumentApi { class AuthenticationUPUDocumentApi {
public: public:
AuthenticationUPUDocumentApi(std::shared_ptr<Pistache::Rest::Router>); AuthenticationUPUDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AuthenticationUPUDocumentApi() {} virtual ~AuthenticationUPUDocumentApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void create_authentication_upu_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void create_authentication_upu_handler(
void query_auth_upu_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); const Pistache::Rest::Request &request,
void authentication_upu_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void query_auth_upu_handler(const Pistache::Rest::Request &request,
std::shared_ptr<Pistache::Rest::Router> router; Pistache::Http::ResponseWriter response);
void authentication_upu_document_api_default_handler(
/// <summary> const Pistache::Rest::Request &request,
/// To store the UPU acknowledgement information of a UE Pistache::Http::ResponseWriter response);
/// </summary>
/// <remarks> std::shared_ptr<Pistache::Rest::Router> router;
///
/// </remarks> /// <summary>
/// <param name="ueId">UE id</param> /// To store the UPU acknowledgement information of a UE
/// <param name="supportedFeatures">Supported Features (optional, default to &quot;&quot;)</param> /// </summary>
/// <param name="upuData"> (optional)</param> /// <remarks>
virtual void create_authentication_upu(const std::string &ueId, const Pistache::Optional<std::string> &supportedFeatures, const UpuData &upuData, Pistache::Http::ResponseWriter &response) = 0; ///
/// </remarks>
/// <summary> /// <param name="ueId">UE id</param>
/// Retrieves the UPU acknowledgement information of a UE /// <param name="supportedFeatures">Supported Features (optional, default to
/// </summary> /// &quot;&quot;)</param> <param name="upuData"> (optional)</param>
/// <remarks> virtual void create_authentication_upu(
/// const std::string &ueId,
/// </remarks> const Pistache::Optional<std::string> &supportedFeatures,
/// <param name="ueId">UE id</param> const UpuData &upuData, Pistache::Http::ResponseWriter &response) = 0;
/// <param name="supportedFeatures">Supported Features (optional, default to &quot;&quot;)</param>
virtual void query_auth_upu(const std::string &ueId, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; /// <summary>
/// Retrieves the UPU acknowledgement information of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="supportedFeatures">Supported Features (optional, default to
/// &quot;&quot;)</param>
virtual void query_auth_upu(
const std::string &ueId,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* AuthenticationUPUDocumentApi_H_ */ #endif /* AuthenticationUPUDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "BdtDataStoreApi.h" #include "BdtDataStoreApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -39,7 +40,6 @@ void BdtDataStoreApi::setupRoutes() { ...@@ -39,7 +40,6 @@ void BdtDataStoreApi::setupRoutes() {
void BdtDataStoreApi::read_bdt_data_handler( void BdtDataStoreApi::read_bdt_data_handler(
const Pistache::Rest::Request &request, const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) { Pistache::Http::ResponseWriter response) {
// Getting the query params // Getting the query params
auto bdtRefIdsQuery = request.query().get("bdt-ref-ids"); auto bdtRefIdsQuery = request.query().get("bdt-ref-ids");
Pistache::Optional<std::vector<std::string>> bdtRefIds; Pistache::Optional<std::vector<std::string>> bdtRefIds;
...@@ -80,4 +80,4 @@ void BdtDataStoreApi::bdt_data_store_api_default_handler( ...@@ -80,4 +80,4 @@ void BdtDataStoreApi::bdt_data_store_api_default_handler(
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* BdtDataStoreApi.h * BdtDataStoreApi.h
* *
* *
*/ */
#ifndef BdtDataStoreApi_H_ #ifndef BdtDataStoreApi_H_
#define BdtDataStoreApi_H_ #define BdtDataStoreApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "BdtData.h" #include "BdtData.h"
#include "ProblemDetails.h" #include "ProblemDetails.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class BdtDataStoreApi { class BdtDataStoreApi {
public: public:
BdtDataStoreApi(std::shared_ptr<Pistache::Rest::Router>); BdtDataStoreApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~BdtDataStoreApi() {} virtual ~BdtDataStoreApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void read_bdt_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void read_bdt_data_handler(const Pistache::Rest::Request &request,
void bdt_data_store_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void bdt_data_store_api_default_handler(
std::shared_ptr<Pistache::Rest::Router> router; const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
/// <summary>
/// Retrieves the BDT data collection std::shared_ptr<Pistache::Rest::Router> router;
/// </summary>
/// <remarks> /// <summary>
/// /// Retrieves the BDT data collection
/// </remarks> /// </summary>
/// <param name="bdtRefIds">List of the BDT reference identifiers. (optional, default to std::vector&lt;std::string&gt;())</param> /// <remarks>
/// <param name="suppFeat">Supported Features (optional, default to &quot;&quot;)</param> ///
virtual void read_bdt_data(const Pistache::Optional<std::vector<std::string>> &bdtRefIds, const Pistache::Optional<std::string> &suppFeat, Pistache::Http::ResponseWriter &response) = 0; /// </remarks>
/// <param name="bdtRefIds">List of the BDT reference identifiers. (optional,
/// default to std::vector&lt;std::string&gt;())</param> <param
/// name="suppFeat">Supported Features (optional, default to
/// &quot;&quot;)</param>
virtual void read_bdt_data(
const Pistache::Optional<std::vector<std::string>> &bdtRefIds,
const Pistache::Optional<std::string> &suppFeat,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* BdtDataStoreApi_H_ */ #endif /* BdtDataStoreApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "BdtPolicyDataStoreApi.h" #include "BdtPolicyDataStoreApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -41,7 +42,6 @@ void BdtPolicyDataStoreApi::setupRoutes() { ...@@ -41,7 +42,6 @@ void BdtPolicyDataStoreApi::setupRoutes() {
void BdtPolicyDataStoreApi::read_bdt_policy_data_handler( void BdtPolicyDataStoreApi::read_bdt_policy_data_handler(
const Pistache::Rest::Request &request, const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) { Pistache::Http::ResponseWriter response) {
// Getting the query params // Getting the query params
auto bdtPolicyIdsQuery = request.query().get("bdt-policy-ids"); auto bdtPolicyIdsQuery = request.query().get("bdt-policy-ids");
Pistache::Optional<std::vector<std::string>> bdtPolicyIds; Pistache::Optional<std::vector<std::string>> bdtPolicyIds;
...@@ -90,4 +90,4 @@ void BdtPolicyDataStoreApi::bdt_policy_data_store_api_default_handler( ...@@ -90,4 +90,4 @@ void BdtPolicyDataStoreApi::bdt_policy_data_store_api_default_handler(
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* BdtPolicyDataStoreApi.h * BdtPolicyDataStoreApi.h
* *
* *
*/ */
#ifndef BdtPolicyDataStoreApi_H_ #ifndef BdtPolicyDataStoreApi_H_
#define BdtPolicyDataStoreApi_H_ #define BdtPolicyDataStoreApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "BdtPolicyData.h" #include "BdtPolicyData.h"
#include "ProblemDetails.h" #include "ProblemDetails.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class BdtPolicyDataStoreApi { class BdtPolicyDataStoreApi {
public: public:
BdtPolicyDataStoreApi(std::shared_ptr<Pistache::Rest::Router>); BdtPolicyDataStoreApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~BdtPolicyDataStoreApi() {} virtual ~BdtPolicyDataStoreApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void read_bdt_policy_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void read_bdt_policy_data_handler(const Pistache::Rest::Request &request,
void bdt_policy_data_store_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void bdt_policy_data_store_api_default_handler(
std::shared_ptr<Pistache::Rest::Router> router; const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
/// <summary>
/// Retrieve applied BDT Policy Data std::shared_ptr<Pistache::Rest::Router> router;
/// </summary>
/// <remarks> /// <summary>
/// /// Retrieve applied BDT Policy Data
/// </remarks> /// </summary>
/// <param name="bdtPolicyIds">Each element identifies a service. (optional, default to std::vector&lt;std::string&gt;())</param> /// <remarks>
/// <param name="internalGroupIds">Each element identifies a group of users. (optional, default to std::vector&lt;std::string&gt;())</param> ///
/// <param name="supis">Each element identifies the user. (optional, default to std::vector&lt;std::string&gt;())</param> /// </remarks>
virtual void read_bdt_policy_data(const Pistache::Optional<std::vector<std::string>> &bdtPolicyIds, const Pistache::Optional<std::vector<std::string>> &internalGroupIds, const Pistache::Optional<std::vector<std::string>> &supis, Pistache::Http::ResponseWriter &response) = 0; /// <param name="bdtPolicyIds">Each element identifies a service. (optional,
/// default to std::vector&lt;std::string&gt;())</param> <param
/// name="internalGroupIds">Each element identifies a group of users.
/// (optional, default to std::vector&lt;std::string&gt;())</param> <param
/// name="supis">Each element identifies the user. (optional, default to
/// std::vector&lt;std::string&gt;())</param>
virtual void read_bdt_policy_data(
const Pistache::Optional<std::vector<std::string>> &bdtPolicyIds,
const Pistache::Optional<std::vector<std::string>> &internalGroupIds,
const Pistache::Optional<std::vector<std::string>> &supis,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* BdtPolicyDataStoreApi_H_ */ #endif /* BdtPolicyDataStoreApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "CAGACKDocumentApi.h" #include "CAGACKDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -78,4 +79,4 @@ void CAGACKDocumentApi::cagack_document_api_default_handler( ...@@ -78,4 +79,4 @@ void CAGACKDocumentApi::cagack_document_api_default_handler(
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* CAGACKDocumentApi.h * CAGACKDocumentApi.h
* *
* *
*/ */
#ifndef CAGACKDocumentApi_H_ #ifndef CAGACKDocumentApi_H_
#define CAGACKDocumentApi_H_ #define CAGACKDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "CagAckData.h" #include "CagAckData.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class CAGACKDocumentApi { class CAGACKDocumentApi {
public: public:
CAGACKDocumentApi(std::shared_ptr<Pistache::Rest::Router>); CAGACKDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~CAGACKDocumentApi() {} virtual ~CAGACKDocumentApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void query_cag_ack_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void query_cag_ack_handler(const Pistache::Rest::Request &request,
void cagack_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void cagack_document_api_default_handler(
std::shared_ptr<Pistache::Rest::Router> router; const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
/// <summary>
/// Retrieves the CAG acknowledgement information of a UE std::shared_ptr<Pistache::Rest::Router> router;
/// </summary>
/// <remarks> /// <summary>
/// /// Retrieves the CAG acknowledgement information of a UE
/// </remarks> /// </summary>
/// <param name="ueId">UE id</param> /// <remarks>
/// <param name="supportedFeatures">Supported Features (optional, default to &quot;&quot;)</param> ///
virtual void query_cag_ack(const std::string &ueId, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; /// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="supportedFeatures">Supported Features (optional, default to
/// &quot;&quot;)</param>
virtual void query_cag_ack(
const std::string &ueId,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* CAGACKDocumentApi_H_ */ #endif /* CAGACKDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "CAGUpdateAckDocumentApi.h" #include "CAGUpdateAckDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -85,4 +86,4 @@ void CAGUpdateAckDocumentApi::cag_update_ack_document_api_default_handler( ...@@ -85,4 +86,4 @@ void CAGUpdateAckDocumentApi::cag_update_ack_document_api_default_handler(
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* CAGUpdateAckDocumentApi.h * CAGUpdateAckDocumentApi.h
* *
* *
*/ */
#ifndef CAGUpdateAckDocumentApi_H_ #ifndef CAGUpdateAckDocumentApi_H_
#define CAGUpdateAckDocumentApi_H_ #define CAGUpdateAckDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "CagAckData.h" #include "CagAckData.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class CAGUpdateAckDocumentApi { class CAGUpdateAckDocumentApi {
public: public:
CAGUpdateAckDocumentApi(std::shared_ptr<Pistache::Rest::Router>); CAGUpdateAckDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~CAGUpdateAckDocumentApi() {} virtual ~CAGUpdateAckDocumentApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void create_cag_update_ack_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void create_cag_update_ack_handler(const Pistache::Rest::Request &request,
void cag_update_ack_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void cag_update_ack_document_api_default_handler(
std::shared_ptr<Pistache::Rest::Router> router; const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
/// <summary>
/// To store the CAG update acknowledgement information of a UE std::shared_ptr<Pistache::Rest::Router> router;
/// </summary>
/// <remarks> /// <summary>
/// /// To store the CAG update acknowledgement information of a UE
/// </remarks> /// </summary>
/// <param name="ueId">UE id</param> /// <remarks>
/// <param name="supportedFeatures">Supported Features (optional, default to &quot;&quot;)</param> ///
/// <param name="cagAckData"> (optional)</param> /// </remarks>
virtual void create_cag_update_ack(const std::string &ueId, const Pistache::Optional<std::string> &supportedFeatures, const CagAckData &cagAckData, Pistache::Http::ResponseWriter &response) = 0; /// <param name="ueId">UE id</param>
/// <param name="supportedFeatures">Supported Features (optional, default to
/// &quot;&quot;)</param> <param name="cagAckData"> (optional)</param>
virtual void create_cag_update_ack(
const std::string &ueId,
const Pistache::Optional<std::string> &supportedFeatures,
const CagAckData &cagAckData,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* CAGUpdateAckDocumentApi_H_ */ #endif /* CAGUpdateAckDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "Class5GVNGroupsInternalDocumentApi.h" #include "Class5GVNGroupsInternalDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -45,7 +46,6 @@ void Class5GVNGroupsInternalDocumentApi::setupRoutes() { ...@@ -45,7 +46,6 @@ void Class5GVNGroupsInternalDocumentApi::setupRoutes() {
void Class5GVNGroupsInternalDocumentApi::query5_g_vn_group_internal_handler( void Class5GVNGroupsInternalDocumentApi::query5_g_vn_group_internal_handler(
const Pistache::Rest::Request &request, const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) { Pistache::Http::ResponseWriter response) {
// Getting the query params // Getting the query params
auto internalGroupIdsQuery = request.query().get("internal-group-ids"); auto internalGroupIdsQuery = request.query().get("internal-group-ids");
Pistache::Optional<std::vector<std::string>> internalGroupIds; Pistache::Optional<std::vector<std::string>> internalGroupIds;
...@@ -80,4 +80,4 @@ void Class5GVNGroupsInternalDocumentApi:: ...@@ -80,4 +80,4 @@ void Class5GVNGroupsInternalDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* Class5GVNGroupsInternalDocumentApi.h * Class5GVNGroupsInternalDocumentApi.h
* *
* *
*/ */
#ifndef Class5GVNGroupsInternalDocumentApi_H_ #ifndef Class5GVNGroupsInternalDocumentApi_H_
#define Class5GVNGroupsInternalDocumentApi_H_ #define Class5GVNGroupsInternalDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "5GVnGroupConfiguration.h" #include "5GVnGroupConfiguration.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class Class5GVNGroupsInternalDocumentApi { class Class5GVNGroupsInternalDocumentApi {
public: public:
Class5GVNGroupsInternalDocumentApi(std::shared_ptr<Pistache::Rest::Router>); Class5GVNGroupsInternalDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~Class5GVNGroupsInternalDocumentApi() {} virtual ~Class5GVNGroupsInternalDocumentApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void query5_g_vn_group_internal_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void query5_g_vn_group_internal_handler(
void class5_gvn_groups_internal_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router; void class5_gvn_groups_internal_document_api_default_handler(
const Pistache::Rest::Request &request,
/// <summary> Pistache::Http::ResponseWriter response);
/// Retrieves the data of 5G VN Group
/// </summary> std::shared_ptr<Pistache::Rest::Router> router;
/// <remarks>
/// /// <summary>
/// </remarks> /// Retrieves the data of 5G VN Group
/// <param name="internalGroupIds">List of Internal Group IDs</param> /// </summary>
virtual void query5_g_vn_group_internal(const Pistache::Optional<std::vector<std::string>> &internalGroupIds, Pistache::Http::ResponseWriter &response) = 0; /// <remarks>
///
/// </remarks>
/// <param name="internalGroupIds">List of Internal Group IDs</param>
virtual void query5_g_vn_group_internal(
const Pistache::Optional<std::vector<std::string>> &internalGroupIds,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* Class5GVNGroupsInternalDocumentApi_H_ */ #endif /* Class5GVNGroupsInternalDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "Class5GVNGroupsStoreApi.h" #include "Class5GVNGroupsStoreApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -42,7 +43,6 @@ void Class5GVNGroupsStoreApi::setupRoutes() { ...@@ -42,7 +43,6 @@ void Class5GVNGroupsStoreApi::setupRoutes() {
void Class5GVNGroupsStoreApi::query5_g_vn_group_handler( void Class5GVNGroupsStoreApi::query5_g_vn_group_handler(
const Pistache::Rest::Request &request, const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) { Pistache::Http::ResponseWriter response) {
// Getting the query params // Getting the query params
auto gpsisQuery = request.query().get("gpsis"); auto gpsisQuery = request.query().get("gpsis");
Pistache::Optional<std::vector<std::string>> gpsis; Pistache::Optional<std::vector<std::string>> gpsis;
...@@ -75,4 +75,4 @@ void Class5GVNGroupsStoreApi::class5_gvn_groups_store_api_default_handler( ...@@ -75,4 +75,4 @@ void Class5GVNGroupsStoreApi::class5_gvn_groups_store_api_default_handler(
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* Class5GVNGroupsStoreApi.h * Class5GVNGroupsStoreApi.h
* *
* *
*/ */
#ifndef Class5GVNGroupsStoreApi_H_ #ifndef Class5GVNGroupsStoreApi_H_
#define Class5GVNGroupsStoreApi_H_ #define Class5GVNGroupsStoreApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "5GVnGroupConfiguration.h" #include "5GVnGroupConfiguration.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class Class5GVNGroupsStoreApi { class Class5GVNGroupsStoreApi {
public: public:
Class5GVNGroupsStoreApi(std::shared_ptr<Pistache::Rest::Router>); Class5GVNGroupsStoreApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~Class5GVNGroupsStoreApi() {} virtual ~Class5GVNGroupsStoreApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void query5_g_vn_group_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void query5_g_vn_group_handler(const Pistache::Rest::Request &request,
void class5_gvn_groups_store_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void class5_gvn_groups_store_api_default_handler(
std::shared_ptr<Pistache::Rest::Router> router; const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
/// <summary>
/// Retrieves the data of a 5G VN Group std::shared_ptr<Pistache::Rest::Router> router;
/// </summary>
/// <remarks> /// <summary>
/// /// Retrieves the data of a 5G VN Group
/// </remarks> /// </summary>
/// <param name="gpsis">List of GPSIs (optional, default to std::vector&lt;std::string&gt;())</param> /// <remarks>
virtual void query5_g_vn_group(const Pistache::Optional<std::vector<std::string>> &gpsis, Pistache::Http::ResponseWriter &response) = 0; ///
/// </remarks>
/// <param name="gpsis">List of GPSIs (optional, default to
/// std::vector&lt;std::string&gt;())</param>
virtual void query5_g_vn_group(
const Pistache::Optional<std::vector<std::string>> &gpsis,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* Class5GVNGroupsStoreApi_H_ */ #endif /* Class5GVNGroupsStoreApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "Class5GVnGroupConfigurationDocumentApi.h" #include "Class5GVnGroupConfigurationDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -79,4 +80,4 @@ void Class5GVnGroupConfigurationDocumentApi:: ...@@ -79,4 +80,4 @@ void Class5GVnGroupConfigurationDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* Class5GVnGroupConfigurationDocumentApi.h * Class5GVnGroupConfigurationDocumentApi.h
* *
* *
*/ */
#ifndef Class5GVnGroupConfigurationDocumentApi_H_ #ifndef Class5GVnGroupConfigurationDocumentApi_H_
#define Class5GVnGroupConfigurationDocumentApi_H_ #define Class5GVnGroupConfigurationDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "5GVnGroupConfiguration.h" #include "5GVnGroupConfiguration.h"
#include "ProblemDetails.h" #include "ProblemDetails.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class Class5GVnGroupConfigurationDocumentApi { class Class5GVnGroupConfigurationDocumentApi {
public: public:
Class5GVnGroupConfigurationDocumentApi(std::shared_ptr<Pistache::Rest::Router>); Class5GVnGroupConfigurationDocumentApi(
virtual ~Class5GVnGroupConfigurationDocumentApi() {} std::shared_ptr<Pistache::Rest::Router>);
void init(); virtual ~Class5GVnGroupConfigurationDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes(); private:
void setupRoutes();
void create5_g_vn_group_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void class5_g_vn_group_configuration_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void create5_g_vn_group_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router; void class5_g_vn_group_configuration_document_api_default_handler(
const Pistache::Rest::Request &request,
/// <summary> Pistache::Http::ResponseWriter response);
/// Create an individual 5G VN Grouop
/// </summary> std::shared_ptr<Pistache::Rest::Router> router;
/// <remarks>
/// /// <summary>
/// </remarks> /// Create an individual 5G VN Grouop
/// <param name="externalGroupId"></param> /// </summary>
/// <param name="r_5GVnGroupConfiguration"></param> /// <remarks>
virtual void create5_g_vn_group(const std::string &externalGroupId, const _5GVnGroupConfiguration &r_5GVnGroupConfiguration, Pistache::Http::ResponseWriter &response) = 0; ///
/// </remarks>
/// <param name="externalGroupId"></param>
/// <param name="r_5GVnGroupConfiguration"></param>
virtual void create5_g_vn_group(
const std::string &externalGroupId,
const _5GVnGroupConfiguration &r_5GVnGroupConfiguration,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* Class5GVnGroupConfigurationDocumentApi_H_ */ #endif /* Class5GVnGroupConfigurationDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "ContextDataDocumentApi.h" #include "ContextDataDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -78,4 +79,4 @@ void ContextDataDocumentApi::context_data_document_api_default_handler( ...@@ -78,4 +79,4 @@ void ContextDataDocumentApi::context_data_document_api_default_handler(
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* ContextDataDocumentApi.h * ContextDataDocumentApi.h
* *
* *
*/ */
#ifndef ContextDataDocumentApi_H_ #ifndef ContextDataDocumentApi_H_
#define ContextDataDocumentApi_H_ #define ContextDataDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include "ContextDataSetName.h" #include "ContextDataSetName.h"
#include "ContextDataSets.h" #include "ContextDataSets.h"
...@@ -34,38 +33,38 @@ namespace oai::udr::api { ...@@ -34,38 +33,38 @@ namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class ContextDataDocumentApi { class ContextDataDocumentApi {
public: public:
ContextDataDocumentApi(std::shared_ptr<Pistache::Rest::Router>); ContextDataDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~ContextDataDocumentApi() {} virtual ~ContextDataDocumentApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void query_context_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void query_context_data_handler(const Pistache::Rest::Request &request,
void context_data_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void context_data_document_api_default_handler(
std::shared_ptr<Pistache::Rest::Router> router; const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
/// <summary>
/// Retrieve multiple context data sets of a UE std::shared_ptr<Pistache::Rest::Router> router;
/// </summary>
/// <remarks> /// <summary>
/// /// Retrieve multiple context data sets of a UE
/// </remarks> /// </summary>
/// <param name="ueId">UE id</param> /// <remarks>
/// <param name="contextDatasetNames">List of context dataset names</param> ///
// virtual void query_context_data(const std::string &ueId, const Pistache::Optional<Set<ContextDataSetName>> &contextDatasetNames, Pistache::Http::ResponseWriter &response) = 0; /// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="contextDatasetNames">List of context dataset names</param>
// virtual void query_context_data(const std::string &ueId, const
// Pistache::Optional<Set<ContextDataSetName>> &contextDatasetNames,
// Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* ContextDataDocumentApi_H_ */ #endif /* ContextDataDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "Delete5GVnGroupApi.h" #include "Delete5GVnGroupApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -66,4 +67,4 @@ void Delete5GVnGroupApi::delete5_g_vn_group_api_default_handler( ...@@ -66,4 +67,4 @@ void Delete5GVnGroupApi::delete5_g_vn_group_api_default_handler(
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* Delete5GVnGroupApi.h * Delete5GVnGroupApi.h
* *
* *
*/ */
#ifndef Delete5GVnGroupApi_H_ #ifndef Delete5GVnGroupApi_H_
#define Delete5GVnGroupApi_H_ #define Delete5GVnGroupApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <nlohmann/json.hpp> #include <pistache/router.h>
#include <nlohmann/json.hpp>
#include <string> #include <string>
namespace oai::udr::api { namespace oai::udr::api {
class Delete5GVnGroupApi {
public:
class Delete5GVnGroupApi { Delete5GVnGroupApi(std::shared_ptr<Pistache::Rest::Router>);
public: virtual ~Delete5GVnGroupApi() {}
Delete5GVnGroupApi(std::shared_ptr<Pistache::Rest::Router>); void init();
virtual ~Delete5GVnGroupApi() {}
void init(); const std::string base = "/nudr-dr/v2";
const std::string base = "/nudr-dr/v2"; private:
void setupRoutes();
private:
void setupRoutes(); void delete5_g_vn_group_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void delete5_g_vn_group_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void delete5_g_vn_group_api_default_handler(
void delete5_g_vn_group_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Deletes the 5GVnGroup /// <summary>
/// </summary> /// Deletes the 5GVnGroup
/// <remarks> /// </summary>
/// /// <remarks>
/// </remarks> ///
/// <param name="externalGroupId"></param> /// </remarks>
virtual void delete5_g_vn_group(const std::string &externalGroupId, Pistache::Http::ResponseWriter &response) = 0; /// <param name="externalGroupId"></param>
virtual void delete5_g_vn_group(const std::string &externalGroupId,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* Delete5GVnGroupApi_H_ */ #endif /* Delete5GVnGroupApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "EnhancedCoverageRestrictionDataApi.h" #include "EnhancedCoverageRestrictionDataApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -88,4 +89,4 @@ void EnhancedCoverageRestrictionDataApi:: ...@@ -88,4 +89,4 @@ void EnhancedCoverageRestrictionDataApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* EnhancedCoverageRestrictionDataApi.h * EnhancedCoverageRestrictionDataApi.h
* *
* *
*/ */
#ifndef EnhancedCoverageRestrictionDataApi_H_ #ifndef EnhancedCoverageRestrictionDataApi_H_
#define EnhancedCoverageRestrictionDataApi_H_ #define EnhancedCoverageRestrictionDataApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "EnhancedCoverageRestrictionData.h" #include "EnhancedCoverageRestrictionData.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class EnhancedCoverageRestrictionDataApi { class EnhancedCoverageRestrictionDataApi {
public: public:
EnhancedCoverageRestrictionDataApi(std::shared_ptr<Pistache::Rest::Router>); EnhancedCoverageRestrictionDataApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~EnhancedCoverageRestrictionDataApi() {} virtual ~EnhancedCoverageRestrictionDataApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void query_coverage_restriction_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void query_coverage_restriction_data_handler(
void enhanced_coverage_restriction_data_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router; void enhanced_coverage_restriction_data_api_default_handler(
const Pistache::Rest::Request &request,
/// <summary> Pistache::Http::ResponseWriter response);
/// Retrieves the subscribed enhanced Coverage Restriction Data of a UE
/// </summary> std::shared_ptr<Pistache::Rest::Router> router;
/// <remarks>
/// /// <summary>
/// </remarks> /// Retrieves the subscribed enhanced Coverage Restriction Data of a UE
/// <param name="ueId">UE id</param> /// </summary>
/// <param name="supportedFeatures">Supported Features (optional, default to &quot;&quot;)</param> /// <remarks>
/// <param name="ifNoneMatch">Validator for conditional requests, as described in RFC 7232, 3.2 (optional, default to &quot;&quot;)</param> ///
/// <param name="ifModifiedSince">Validator for conditional requests, as described in RFC 7232, 3.3 (optional, default to &quot;&quot;)</param> /// </remarks>
virtual void query_coverage_restriction_data(const std::string &ueId, const Pistache::Optional<std::string> &supportedFeatures, const Pistache::Optional<Pistache::Http::Header::Raw> &ifNoneMatch, const Pistache::Optional<Pistache::Http::Header::Raw> &ifModifiedSince, Pistache::Http::ResponseWriter &response) = 0; /// <param name="ueId">UE id</param>
/// <param name="supportedFeatures">Supported Features (optional, default to
/// &quot;&quot;)</param> <param name="ifNoneMatch">Validator for conditional
/// requests, as described in RFC 7232, 3.2 (optional, default to
/// &quot;&quot;)</param> <param name="ifModifiedSince">Validator for
/// conditional requests, as described in RFC 7232, 3.3 (optional, default to
/// &quot;&quot;)</param>
virtual void query_coverage_restriction_data(
const std::string &ueId,
const Pistache::Optional<std::string> &supportedFeatures,
const Pistache::Optional<Pistache::Http::Header::Raw> &ifNoneMatch,
const Pistache::Optional<Pistache::Http::Header::Raw> &ifModifiedSince,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* EnhancedCoverageRestrictionDataApi_H_ */ #endif /* EnhancedCoverageRestrictionDataApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "EventAMFSubscriptionInfoDocumentApi.h" #include "EventAMFSubscriptionInfoDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -29,8 +30,9 @@ void EventAMFSubscriptionInfoDocumentApi::setupRoutes() { ...@@ -29,8 +30,9 @@ void EventAMFSubscriptionInfoDocumentApi::setupRoutes() {
using namespace Pistache::Rest; using namespace Pistache::Rest;
Routes::Delete(*router, Routes::Delete(*router,
base + "/subscription-data/:ueId/context-data/" base +
"ee-subscriptions/:subsId/amf-subscriptions", "/subscription-data/:ueId/context-data/"
"ee-subscriptions/:subsId/amf-subscriptions",
Routes::bind(&EventAMFSubscriptionInfoDocumentApi:: Routes::bind(&EventAMFSubscriptionInfoDocumentApi::
remove_amf_subscriptions_info_handler, remove_amf_subscriptions_info_handler,
this)); this));
...@@ -73,4 +75,4 @@ void EventAMFSubscriptionInfoDocumentApi:: ...@@ -73,4 +75,4 @@ void EventAMFSubscriptionInfoDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* EventAMFSubscriptionInfoDocumentApi.h * EventAMFSubscriptionInfoDocumentApi.h
* *
* *
*/ */
#ifndef EventAMFSubscriptionInfoDocumentApi_H_ #ifndef EventAMFSubscriptionInfoDocumentApi_H_
#define EventAMFSubscriptionInfoDocumentApi_H_ #define EventAMFSubscriptionInfoDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <nlohmann/json.hpp> #include <pistache/router.h>
#include <nlohmann/json.hpp>
#include <string> #include <string>
namespace oai::udr::api { namespace oai::udr::api {
class EventAMFSubscriptionInfoDocumentApi {
public:
class EventAMFSubscriptionInfoDocumentApi { EventAMFSubscriptionInfoDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
public: virtual ~EventAMFSubscriptionInfoDocumentApi() {}
EventAMFSubscriptionInfoDocumentApi(std::shared_ptr<Pistache::Rest::Router>); void init();
virtual ~EventAMFSubscriptionInfoDocumentApi() {}
void init(); const std::string base = "/nudr-dr/v2";
const std::string base = "/nudr-dr/v2"; private:
void setupRoutes();
private:
void setupRoutes(); void remove_amf_subscriptions_info_handler(
const Pistache::Rest::Request &request,
void remove_amf_subscriptions_info_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void event_amf_subscription_info_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void event_amf_subscription_info_document_api_default_handler(
const Pistache::Rest::Request &request,
std::shared_ptr<Pistache::Rest::Router> router; Pistache::Http::ResponseWriter response);
/// <summary> std::shared_ptr<Pistache::Rest::Router> router;
/// Deletes AMF Subscription Info for an eeSubscription
/// </summary> /// <summary>
/// <remarks> /// Deletes AMF Subscription Info for an eeSubscription
/// /// </summary>
/// </remarks> /// <remarks>
/// <param name="ueId"></param> ///
/// <param name="subsId"></param> /// </remarks>
virtual void remove_amf_subscriptions_info(const std::string &ueId, const std::string &subsId, Pistache::Http::ResponseWriter &response) = 0; /// <param name="ueId"></param>
/// <param name="subsId"></param>
virtual void remove_amf_subscriptions_info(
const std::string &ueId, const std::string &subsId,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* EventAMFSubscriptionInfoDocumentApi_H_ */ #endif /* EventAMFSubscriptionInfoDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "EventExposureDataDocumentApi.h" #include "EventExposureDataDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -88,4 +89,4 @@ void EventExposureDataDocumentApi:: ...@@ -88,4 +89,4 @@ void EventExposureDataDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* EventExposureDataDocumentApi.h * EventExposureDataDocumentApi.h
* *
* *
*/ */
#ifndef EventExposureDataDocumentApi_H_ #ifndef EventExposureDataDocumentApi_H_
#define EventExposureDataDocumentApi_H_ #define EventExposureDataDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "EeProfileData.h" #include "EeProfileData.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class EventExposureDataDocumentApi { class EventExposureDataDocumentApi {
public: public:
EventExposureDataDocumentApi(std::shared_ptr<Pistache::Rest::Router>); EventExposureDataDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~EventExposureDataDocumentApi() {} virtual ~EventExposureDataDocumentApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void query_ee_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void query_ee_data_handler(const Pistache::Rest::Request &request,
void event_exposure_data_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void event_exposure_data_document_api_default_handler(
std::shared_ptr<Pistache::Rest::Router> router; const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
/// <summary>
/// Retrieves the ee profile data of a UE std::shared_ptr<Pistache::Rest::Router> router;
/// </summary>
/// <remarks> /// <summary>
/// /// Retrieves the ee profile data of a UE
/// </remarks> /// </summary>
/// <param name="ueId">UE id</param> /// <remarks>
/// <param name="fields">attributes to be retrieved (optional, default to std::vector&lt;std::string&gt;())</param> ///
/// <param name="supportedFeatures">Supported Features (optional, default to &quot;&quot;)</param> /// </remarks>
virtual void query_ee_data(const std::string &ueId, const Pistache::Optional<std::vector<std::string>> &fields, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; /// <param name="ueId">UE id</param>
/// <param name="fields">attributes to be retrieved (optional, default to
/// std::vector&lt;std::string&gt;())</param> <param
/// name="supportedFeatures">Supported Features (optional, default to
/// &quot;&quot;)</param>
virtual void query_ee_data(
const std::string &ueId,
const Pistache::Optional<std::vector<std::string>> &fields,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* EventExposureDataDocumentApi_H_ */ #endif /* EventExposureDataDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "EventExposureGroupSubscriptionDocumentApi.h" #include "EventExposureGroupSubscriptionDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -188,4 +189,4 @@ void EventExposureGroupSubscriptionDocumentApi:: ...@@ -188,4 +189,4 @@ void EventExposureGroupSubscriptionDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* EventExposureGroupSubscriptionDocumentApi.h * EventExposureGroupSubscriptionDocumentApi.h
* *
* *
*/ */
#ifndef EventExposureGroupSubscriptionDocumentApi_H_ #ifndef EventExposureGroupSubscriptionDocumentApi_H_
#define EventExposureGroupSubscriptionDocumentApi_H_ #define EventExposureGroupSubscriptionDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include "EeSubscription.h" #include "EeSubscription.h"
//#include "Object.h" //#include "Object.h"
#include <string>
#include <vector>
#include "PatchItem.h" #include "PatchItem.h"
#include "PatchResult.h" #include "PatchResult.h"
#include "ProblemDetails.h" #include "ProblemDetails.h"
#include <string>
#include <vector>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class EventExposureGroupSubscriptionDocumentApi { class EventExposureGroupSubscriptionDocumentApi {
public: public:
EventExposureGroupSubscriptionDocumentApi(std::shared_ptr<Pistache::Rest::Router>); EventExposureGroupSubscriptionDocumentApi(
virtual ~EventExposureGroupSubscriptionDocumentApi() {} std::shared_ptr<Pistache::Rest::Router>);
void init(); virtual ~EventExposureGroupSubscriptionDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes(); private:
void setupRoutes();
void modify_ee_group_subscription_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void query_ee_group_subscription_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void modify_ee_group_subscription_handler(
void remove_ee_group_subscriptions_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); const Pistache::Rest::Request &request,
void update_ee_group_subscriptions_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void event_exposure_group_subscription_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void query_ee_group_subscription_handler(
const Pistache::Rest::Request &request,
std::shared_ptr<Pistache::Rest::Router> router; Pistache::Http::ResponseWriter response);
void remove_ee_group_subscriptions_handler(
/// <summary> const Pistache::Rest::Request &request,
/// Modify an individual ee subscription for a group of a UEs Pistache::Http::ResponseWriter response);
/// </summary> void update_ee_group_subscriptions_handler(
/// <remarks> const Pistache::Rest::Request &request,
/// Pistache::Http::ResponseWriter response);
/// </remarks> void event_exposure_group_subscription_document_api_default_handler(
/// <param name="ueGroupId"></param> const Pistache::Rest::Request &request,
/// <param name="subsId"></param> Pistache::Http::ResponseWriter response);
/// <param name="patchItem"></param>
/// <param name="supportedFeatures">Features required to be supported by the target NF (optional, default to &quot;&quot;)</param> std::shared_ptr<Pistache::Rest::Router> router;
virtual void modify_ee_group_subscription(const std::string &ueGroupId, const std::string &subsId, const std::vector<PatchItem> &patchItem, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// <summary> /// Modify an individual ee subscription for a group of a UEs
/// Retrieve a individual eeSubscription for a group of UEs or any UE /// </summary>
/// </summary> /// <remarks>
/// <remarks> ///
/// /// </remarks>
/// </remarks> /// <param name="ueGroupId"></param>
/// <param name="ueGroupId"></param> /// <param name="subsId"></param>
/// <param name="subsId">Unique ID of the subscription to remove</param> /// <param name="patchItem"></param>
virtual void query_ee_group_subscription(const std::string &ueGroupId, const std::string &subsId, Pistache::Http::ResponseWriter &response) = 0; /// <param name="supportedFeatures">Features required to be supported by the
/// target NF (optional, default to &quot;&quot;)</param>
/// <summary> virtual void modify_ee_group_subscription(
/// Deletes a eeSubscription for a group of UEs or any UE const std::string &ueGroupId, const std::string &subsId,
/// </summary> const std::vector<PatchItem> &patchItem,
/// <remarks> const Pistache::Optional<std::string> &supportedFeatures,
/// Pistache::Http::ResponseWriter &response) = 0;
/// </remarks>
/// <param name="ueGroupId"></param> /// <summary>
/// <param name="subsId">Unique ID of the subscription to remove</param> /// Retrieve a individual eeSubscription for a group of UEs or any UE
virtual void remove_ee_group_subscriptions(const std::string &ueGroupId, const std::string &subsId, Pistache::Http::ResponseWriter &response) = 0; /// </summary>
/// <remarks>
/// <summary> ///
/// Update an individual ee subscription of a group of UEs or any UE /// </remarks>
/// </summary> /// <param name="ueGroupId"></param>
/// <remarks> /// <param name="subsId">Unique ID of the subscription to remove</param>
/// virtual void query_ee_group_subscription(
/// </remarks> const std::string &ueGroupId, const std::string &subsId,
/// <param name="ueGroupId"></param> Pistache::Http::ResponseWriter &response) = 0;
/// <param name="subsId"></param>
/// <param name="eeSubscription"> (optional)</param> /// <summary>
virtual void update_ee_group_subscriptions(const std::string &ueGroupId, const std::string &subsId, const EeSubscription &eeSubscription, Pistache::Http::ResponseWriter &response) = 0; /// Deletes a eeSubscription for a group of UEs or any UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueGroupId"></param>
/// <param name="subsId">Unique ID of the subscription to remove</param>
virtual void remove_ee_group_subscriptions(
const std::string &ueGroupId, const std::string &subsId,
Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Update an individual ee subscription of a group of UEs or any UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueGroupId"></param>
/// <param name="subsId"></param>
/// <param name="eeSubscription"> (optional)</param>
virtual void update_ee_group_subscriptions(
const std::string &ueGroupId, const std::string &subsId,
const EeSubscription &eeSubscription,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* EventExposureGroupSubscriptionDocumentApi_H_ */ #endif /* EventExposureGroupSubscriptionDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "EventExposureGroupSubscriptionsCollectionApi.h" #include "EventExposureGroupSubscriptionsCollectionApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -30,18 +31,18 @@ void EventExposureGroupSubscriptionsCollectionApi::init() { setupRoutes(); } ...@@ -30,18 +31,18 @@ void EventExposureGroupSubscriptionsCollectionApi::init() { setupRoutes(); }
void EventExposureGroupSubscriptionsCollectionApi::setupRoutes() { void EventExposureGroupSubscriptionsCollectionApi::setupRoutes() {
using namespace Pistache::Rest; using namespace Pistache::Rest;
Routes::Post(*router, Routes::Post(
base + *router,
"/subscription-data/group-data/:ueGroupId/ee-subscriptions", base + "/subscription-data/group-data/:ueGroupId/ee-subscriptions",
Routes::bind(&EventExposureGroupSubscriptionsCollectionApi:: Routes::bind(&EventExposureGroupSubscriptionsCollectionApi::
create_ee_group_subscriptions_handler, create_ee_group_subscriptions_handler,
this)); this));
Routes::Get(*router, Routes::Get(
base + *router,
"/subscription-data/group-data/:ueGroupId/ee-subscriptions", base + "/subscription-data/group-data/:ueGroupId/ee-subscriptions",
Routes::bind(&EventExposureGroupSubscriptionsCollectionApi:: Routes::bind(&EventExposureGroupSubscriptionsCollectionApi::
query_ee_group_subscriptions_handler, query_ee_group_subscriptions_handler,
this)); this));
// Default handler, called when a route is not found // Default handler, called when a route is not found
router->addCustomHandler(Routes::bind( router->addCustomHandler(Routes::bind(
...@@ -118,4 +119,4 @@ void EventExposureGroupSubscriptionsCollectionApi:: ...@@ -118,4 +119,4 @@ void EventExposureGroupSubscriptionsCollectionApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* EventExposureGroupSubscriptionsCollectionApi.h * EventExposureGroupSubscriptionsCollectionApi.h
* *
* *
*/ */
#ifndef EventExposureGroupSubscriptionsCollectionApi_H_ #ifndef EventExposureGroupSubscriptionsCollectionApi_H_
#define EventExposureGroupSubscriptionsCollectionApi_H_ #define EventExposureGroupSubscriptionsCollectionApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "EeSubscription.h" #include "EeSubscription.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class EventExposureGroupSubscriptionsCollectionApi { class EventExposureGroupSubscriptionsCollectionApi {
public: public:
EventExposureGroupSubscriptionsCollectionApi(std::shared_ptr<Pistache::Rest::Router>); EventExposureGroupSubscriptionsCollectionApi(
virtual ~EventExposureGroupSubscriptionsCollectionApi() {} std::shared_ptr<Pistache::Rest::Router>);
void init(); virtual ~EventExposureGroupSubscriptionsCollectionApi() {}
void init();
const std::string base = "/nudr-dr/v2";
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes(); private:
void setupRoutes();
void create_ee_group_subscriptions_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void query_ee_group_subscriptions_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void create_ee_group_subscriptions_handler(
void event_exposure_group_subscriptions_collection_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router; void query_ee_group_subscriptions_handler(
const Pistache::Rest::Request &request,
/// <summary> Pistache::Http::ResponseWriter response);
/// Create individual EE subscription for a group of UEs or any UE void event_exposure_group_subscriptions_collection_api_default_handler(
/// </summary> const Pistache::Rest::Request &request,
/// <remarks> Pistache::Http::ResponseWriter response);
///
/// </remarks> std::shared_ptr<Pistache::Rest::Router> router;
/// <param name="ueGroupId">Group of UEs or any UE</param>
/// <param name="eeSubscription"></param> /// <summary>
virtual void create_ee_group_subscriptions(const std::string &ueGroupId, const EeSubscription &eeSubscription, Pistache::Http::ResponseWriter &response) = 0; /// Create individual EE subscription for a group of UEs or any UE
/// </summary>
/// <summary> /// <remarks>
/// Retrieves the ee subscriptions of a group of UEs or any UE ///
/// </summary> /// </remarks>
/// <remarks> /// <param name="ueGroupId">Group of UEs or any UE</param>
/// /// <param name="eeSubscription"></param>
/// </remarks> virtual void create_ee_group_subscriptions(
/// <param name="ueGroupId">Group of UEs or any UE</param> const std::string &ueGroupId, const EeSubscription &eeSubscription,
/// <param name="supportedFeatures">Supported Features (optional, default to &quot;&quot;)</param> Pistache::Http::ResponseWriter &response) = 0;
virtual void query_ee_group_subscriptions(const std::string &ueGroupId, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Retrieves the ee subscriptions of a group of UEs or any UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueGroupId">Group of UEs or any UE</param>
/// <param name="supportedFeatures">Supported Features (optional, default to
/// &quot;&quot;)</param>
virtual void query_ee_group_subscriptions(
const std::string &ueGroupId,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* EventExposureGroupSubscriptionsCollectionApi_H_ */ #endif /* EventExposureGroupSubscriptionsCollectionApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "EventExposureSubscriptionDocumentApi.h" #include "EventExposureSubscriptionDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -178,4 +179,4 @@ void EventExposureSubscriptionDocumentApi:: ...@@ -178,4 +179,4 @@ void EventExposureSubscriptionDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* EventExposureSubscriptionDocumentApi.h * EventExposureSubscriptionDocumentApi.h
* *
* *
*/ */
#ifndef EventExposureSubscriptionDocumentApi_H_ #ifndef EventExposureSubscriptionDocumentApi_H_
#define EventExposureSubscriptionDocumentApi_H_ #define EventExposureSubscriptionDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include "EeSubscription.h" #include "EeSubscription.h"
//#include "Object.h" //#include "Object.h"
#include <string>
#include <vector>
#include "PatchItem.h" #include "PatchItem.h"
#include "PatchResult.h" #include "PatchResult.h"
#include "ProblemDetails.h" #include "ProblemDetails.h"
#include <string>
#include <vector>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class EventExposureSubscriptionDocumentApi { class EventExposureSubscriptionDocumentApi {
public: public:
EventExposureSubscriptionDocumentApi(std::shared_ptr<Pistache::Rest::Router>); EventExposureSubscriptionDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~EventExposureSubscriptionDocumentApi() {} virtual ~EventExposureSubscriptionDocumentApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void modify_eesubscription_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void modify_eesubscription_handler(const Pistache::Rest::Request &request,
void queryee_subscription_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void removeee_subscriptions_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void queryee_subscription_handler(const Pistache::Rest::Request &request,
void update_eesubscriptions_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void event_exposure_subscription_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void removeee_subscriptions_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router; void update_eesubscriptions_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
/// <summary> void event_exposure_subscription_document_api_default_handler(
/// Modify an individual ee subscription of a UE const Pistache::Rest::Request &request,
/// </summary> Pistache::Http::ResponseWriter response);
/// <remarks>
/// std::shared_ptr<Pistache::Rest::Router> router;
/// </remarks>
/// <param name="ueId">UE id</param> /// <summary>
/// <param name="subsId"></param> /// Modify an individual ee subscription of a UE
/// <param name="patchItem"></param> /// </summary>
/// <param name="supportedFeatures">Features required to be supported by the target NF (optional, default to &quot;&quot;)</param> /// <remarks>
virtual void modify_eesubscription(const std::string &ueId, const std::string &subsId, const std::vector<PatchItem> &patchItem, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; ///
/// </remarks>
/// <summary> /// <param name="ueId">UE id</param>
/// Retrieve a eeSubscription /// <param name="subsId"></param>
/// </summary> /// <param name="patchItem"></param>
/// <remarks> /// <param name="supportedFeatures">Features required to be supported by the
/// /// target NF (optional, default to &quot;&quot;)</param>
/// </remarks> virtual void modify_eesubscription(
/// <param name="ueId"></param> const std::string &ueId, const std::string &subsId,
/// <param name="subsId">Unique ID of the subscription to remove</param> const std::vector<PatchItem> &patchItem,
virtual void queryee_subscription(const std::string &ueId, const std::string &subsId, Pistache::Http::ResponseWriter &response) = 0; const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Deletes a eeSubscription /// <summary>
/// </summary> /// Retrieve a eeSubscription
/// <remarks> /// </summary>
/// /// <remarks>
/// </remarks> ///
/// <param name="ueId"></param> /// </remarks>
/// <param name="subsId">Unique ID of the subscription to remove</param> /// <param name="ueId"></param>
virtual void removeee_subscriptions(const std::string &ueId, const std::string &subsId, Pistache::Http::ResponseWriter &response) = 0; /// <param name="subsId">Unique ID of the subscription to remove</param>
virtual void queryee_subscription(
/// <summary> const std::string &ueId, const std::string &subsId,
/// Update an individual ee subscriptions of a UE Pistache::Http::ResponseWriter &response) = 0;
/// </summary>
/// <remarks> /// <summary>
/// /// Deletes a eeSubscription
/// </remarks> /// </summary>
/// <param name="ueId"></param> /// <remarks>
/// <param name="subsId"></param> ///
/// <param name="eeSubscription"> (optional)</param> /// </remarks>
virtual void update_eesubscriptions(const std::string &ueId, const std::string &subsId, const EeSubscription &eeSubscription, Pistache::Http::ResponseWriter &response) = 0; /// <param name="ueId"></param>
/// <param name="subsId">Unique ID of the subscription to remove</param>
virtual void removeee_subscriptions(
const std::string &ueId, const std::string &subsId,
Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Update an individual ee subscriptions of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId"></param>
/// <param name="subsId"></param>
/// <param name="eeSubscription"> (optional)</param>
virtual void update_eesubscriptions(
const std::string &ueId, const std::string &subsId,
const EeSubscription &eeSubscription,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* EventExposureSubscriptionDocumentApi_H_ */ #endif /* EventExposureSubscriptionDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "EventExposureSubscriptionsCollectionApi.h" #include "EventExposureSubscriptionsCollectionApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -114,4 +115,4 @@ void EventExposureSubscriptionsCollectionApi:: ...@@ -114,4 +115,4 @@ void EventExposureSubscriptionsCollectionApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* EventExposureSubscriptionsCollectionApi.h * EventExposureSubscriptionsCollectionApi.h
* *
* *
*/ */
#ifndef EventExposureSubscriptionsCollectionApi_H_ #ifndef EventExposureSubscriptionsCollectionApi_H_
#define EventExposureSubscriptionsCollectionApi_H_ #define EventExposureSubscriptionsCollectionApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "EeSubscription.h" #include "EeSubscription.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class EventExposureSubscriptionsCollectionApi { class EventExposureSubscriptionsCollectionApi {
public: public:
EventExposureSubscriptionsCollectionApi(std::shared_ptr<Pistache::Rest::Router>); EventExposureSubscriptionsCollectionApi(
virtual ~EventExposureSubscriptionsCollectionApi() {} std::shared_ptr<Pistache::Rest::Router>);
void init(); virtual ~EventExposureSubscriptionsCollectionApi() {}
void init();
const std::string base = "/nudr-dr/v2";
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes(); private:
void setupRoutes();
void create_ee_subscriptions_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void queryeesubscriptions_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void create_ee_subscriptions_handler(const Pistache::Rest::Request &request,
void event_exposure_subscriptions_collection_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void queryeesubscriptions_handler(const Pistache::Rest::Request &request,
std::shared_ptr<Pistache::Rest::Router> router; Pistache::Http::ResponseWriter response);
void event_exposure_subscriptions_collection_api_default_handler(
/// <summary> const Pistache::Rest::Request &request,
/// Create individual EE subscription Pistache::Http::ResponseWriter response);
/// </summary>
/// <remarks> std::shared_ptr<Pistache::Rest::Router> router;
///
/// </remarks> /// <summary>
/// <param name="ueId">UE ID</param> /// Create individual EE subscription
/// <param name="eeSubscription"></param> /// </summary>
virtual void create_ee_subscriptions(const std::string &ueId, const EeSubscription &eeSubscription, Pistache::Http::ResponseWriter &response) = 0; /// <remarks>
///
/// <summary> /// </remarks>
/// Retrieves the ee subscriptions of a UE /// <param name="ueId">UE ID</param>
/// </summary> /// <param name="eeSubscription"></param>
/// <remarks> virtual void create_ee_subscriptions(
/// const std::string &ueId, const EeSubscription &eeSubscription,
/// </remarks> Pistache::Http::ResponseWriter &response) = 0;
/// <param name="ueId">UE id</param>
/// <param name="supportedFeatures">Supported Features (optional, default to &quot;&quot;)</param> /// <summary>
virtual void queryeesubscriptions(const std::string &ueId, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; /// Retrieves the ee subscriptions of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="supportedFeatures">Supported Features (optional, default to
/// &quot;&quot;)</param>
virtual void queryeesubscriptions(
const std::string &ueId,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* EventExposureSubscriptionsCollectionApi_H_ */ #endif /* EventExposureSubscriptionsCollectionApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "ExposureDataSubscriptionsCollectionApi.h" #include "ExposureDataSubscriptionsCollectionApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -46,7 +47,6 @@ void ExposureDataSubscriptionsCollectionApi:: ...@@ -46,7 +47,6 @@ void ExposureDataSubscriptionsCollectionApi::
create_individual_exposure_data_subscription_handler( create_individual_exposure_data_subscription_handler(
const Pistache::Rest::Request &request, const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) { Pistache::Http::ResponseWriter response) {
// Getting the body param // Getting the body param
ExposureDataSubscription exposureDataSubscription; ExposureDataSubscription exposureDataSubscription;
...@@ -77,4 +77,4 @@ void ExposureDataSubscriptionsCollectionApi:: ...@@ -77,4 +77,4 @@ void ExposureDataSubscriptionsCollectionApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* ExposureDataSubscriptionsCollectionApi.h * ExposureDataSubscriptionsCollectionApi.h
* *
* *
*/ */
#ifndef ExposureDataSubscriptionsCollectionApi_H_ #ifndef ExposureDataSubscriptionsCollectionApi_H_
#define ExposureDataSubscriptionsCollectionApi_H_ #define ExposureDataSubscriptionsCollectionApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include "ExposureDataSubscription.h" #include "ExposureDataSubscription.h"
#include "ProblemDetails.h" #include "ProblemDetails.h"
...@@ -32,37 +31,39 @@ namespace oai::udr::api { ...@@ -32,37 +31,39 @@ namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class ExposureDataSubscriptionsCollectionApi { class ExposureDataSubscriptionsCollectionApi {
public: public:
ExposureDataSubscriptionsCollectionApi(std::shared_ptr<Pistache::Rest::Router>); ExposureDataSubscriptionsCollectionApi(
virtual ~ExposureDataSubscriptionsCollectionApi() {} std::shared_ptr<Pistache::Rest::Router>);
void init(); virtual ~ExposureDataSubscriptionsCollectionApi() {}
void init();
const std::string base = "/nudr-dr/v2";
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes(); private:
void setupRoutes();
void create_individual_exposure_data_subscription_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void exposure_data_subscriptions_collection_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void create_individual_exposure_data_subscription_handler(
const Pistache::Rest::Request &request,
std::shared_ptr<Pistache::Rest::Router> router; Pistache::Http::ResponseWriter response);
void exposure_data_subscriptions_collection_api_default_handler(
/// <summary> const Pistache::Rest::Request &request,
/// Create a subscription to receive notification of exposure data changes Pistache::Http::ResponseWriter response);
/// </summary>
/// <remarks> std::shared_ptr<Pistache::Rest::Router> router;
///
/// </remarks> /// <summary>
/// <param name="exposureDataSubscription"></param> /// Create a subscription to receive notification of exposure data changes
virtual void create_individual_exposure_data_subscription(const ExposureDataSubscription &exposureDataSubscription, Pistache::Http::ResponseWriter &response) = 0; /// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="exposureDataSubscription"></param>
virtual void create_individual_exposure_data_subscription(
const ExposureDataSubscription &exposureDataSubscription,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* ExposureDataSubscriptionsCollectionApi_H_ */ #endif /* ExposureDataSubscriptionsCollectionApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "GroupIdentifiersApi.h" #include "GroupIdentifiersApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -41,7 +42,6 @@ void GroupIdentifiersApi::setupRoutes() { ...@@ -41,7 +42,6 @@ void GroupIdentifiersApi::setupRoutes() {
void GroupIdentifiersApi::get_group_identifiers_handler( void GroupIdentifiersApi::get_group_identifiers_handler(
const Pistache::Rest::Request &request, const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) { Pistache::Http::ResponseWriter response) {
// Getting the query params // Getting the query params
auto extGroupIdQuery = request.query().get("ext-group-id"); auto extGroupIdQuery = request.query().get("ext-group-id");
Pistache::Optional<std::string> extGroupId; Pistache::Optional<std::string> extGroupId;
...@@ -99,4 +99,4 @@ void GroupIdentifiersApi::group_identifiers_api_default_handler( ...@@ -99,4 +99,4 @@ void GroupIdentifiersApi::group_identifiers_api_default_handler(
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* GroupIdentifiersApi.h * GroupIdentifiersApi.h
* *
* *
*/ */
#ifndef GroupIdentifiersApi_H_ #ifndef GroupIdentifiersApi_H_
#define GroupIdentifiersApi_H_ #define GroupIdentifiersApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "GroupIdentifiers.h" #include "GroupIdentifiers.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class GroupIdentifiersApi { class GroupIdentifiersApi {
public: public:
GroupIdentifiersApi(std::shared_ptr<Pistache::Rest::Router>); GroupIdentifiersApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~GroupIdentifiersApi() {} virtual ~GroupIdentifiersApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void get_group_identifiers_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void get_group_identifiers_handler(const Pistache::Rest::Request &request,
void group_identifiers_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void group_identifiers_api_default_handler(
std::shared_ptr<Pistache::Rest::Router> router; const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
/// <summary>
/// Mapping of Group Identifiers std::shared_ptr<Pistache::Rest::Router> router;
/// </summary>
/// <remarks> /// <summary>
/// /// Mapping of Group Identifiers
/// </remarks> /// </summary>
/// <param name="extGroupId">External Group Identifier (optional, default to &quot;&quot;)</param> /// <remarks>
/// <param name="intGroupId">Internal Group Identifier (optional, default to &quot;&quot;)</param> ///
/// <param name="ueIdInd">Indication whether UE identifiers are required or not (optional, default to false)</param> /// </remarks>
/// <param name="supportedFeatures">Supported Features (optional, default to &quot;&quot;)</param> /// <param name="extGroupId">External Group Identifier (optional, default to
virtual void get_group_identifiers(const Pistache::Optional<std::string> &extGroupId, const Pistache::Optional<std::string> &intGroupId, const Pistache::Optional<bool> &ueIdInd, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; /// &quot;&quot;)</param> <param name="intGroupId">Internal Group Identifier
/// (optional, default to &quot;&quot;)</param> <param
/// name="ueIdInd">Indication whether UE identifiers are required or not
/// (optional, default to false)</param> <param
/// name="supportedFeatures">Supported Features (optional, default to
/// &quot;&quot;)</param>
virtual void get_group_identifiers(
const Pistache::Optional<std::string> &extGroupId,
const Pistache::Optional<std::string> &intGroupId,
const Pistache::Optional<bool> &ueIdInd,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* GroupIdentifiersApi_H_ */ #endif /* GroupIdentifiersApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "IPSMGWRegistrationDocumentApi.h" #include "IPSMGWRegistrationDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -177,4 +178,4 @@ void IPSMGWRegistrationDocumentApi:: ...@@ -177,4 +178,4 @@ void IPSMGWRegistrationDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* IPSMGWRegistrationDocumentApi.h * IPSMGWRegistrationDocumentApi.h
* *
* *
*/ */
#ifndef IPSMGWRegistrationDocumentApi_H_ #ifndef IPSMGWRegistrationDocumentApi_H_
#define IPSMGWRegistrationDocumentApi_H_ #define IPSMGWRegistrationDocumentApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include <vector>
#include "IpSmGwRegistration.h" #include "IpSmGwRegistration.h"
#include "PatchItem.h" #include "PatchItem.h"
#include "ProblemDetails.h" #include "ProblemDetails.h"
#include <string>
#include <vector>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class IPSMGWRegistrationDocumentApi { class IPSMGWRegistrationDocumentApi {
public: public:
IPSMGWRegistrationDocumentApi(std::shared_ptr<Pistache::Rest::Router>); IPSMGWRegistrationDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~IPSMGWRegistrationDocumentApi() {} virtual ~IPSMGWRegistrationDocumentApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void create_ip_sm_gw_context_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void create_ip_sm_gw_context_handler(const Pistache::Rest::Request &request,
void delete_ip_sm_gw_context_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void modify_ip_sm_gw_context_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void delete_ip_sm_gw_context_handler(const Pistache::Rest::Request &request,
void query_ip_sm_gw_context_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); Pistache::Http::ResponseWriter response);
void ipsmgw_registration_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void modify_ip_sm_gw_context_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router; void query_ip_sm_gw_context_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
/// <summary> void ipsmgw_registration_document_api_default_handler(
/// Create the IP-SM-GW context data of a UE const Pistache::Rest::Request &request,
/// </summary> Pistache::Http::ResponseWriter response);
/// <remarks>
/// std::shared_ptr<Pistache::Rest::Router> router;
/// </remarks>
/// <param name="ueId">UE id</param> /// <summary>
/// <param name="ipSmGwRegistration"> (optional)</param> /// Create the IP-SM-GW context data of a UE
virtual void create_ip_sm_gw_context(const std::string &ueId, const IpSmGwRegistration &ipSmGwRegistration, Pistache::Http::ResponseWriter &response) = 0; /// </summary>
/// <remarks>
/// <summary> ///
/// To remove the IP-SM-GW context data of a UE /// </remarks>
/// </summary> /// <param name="ueId">UE id</param>
/// <remarks> /// <param name="ipSmGwRegistration"> (optional)</param>
/// virtual void create_ip_sm_gw_context(
/// </remarks> const std::string &ueId, const IpSmGwRegistration &ipSmGwRegistration,
/// <param name="ueId">UE id</param> Pistache::Http::ResponseWriter &response) = 0;
virtual void delete_ip_sm_gw_context(const std::string &ueId, Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// <summary> /// To remove the IP-SM-GW context data of a UE
/// Modify the IP-SM-GW context data of a UE /// </summary>
/// </summary> /// <remarks>
/// <remarks> ///
/// /// </remarks>
/// </remarks> /// <param name="ueId">UE id</param>
/// <param name="ueId">UE id</param> virtual void delete_ip_sm_gw_context(
/// <param name="patchItem"></param> const std::string &ueId, Pistache::Http::ResponseWriter &response) = 0;
virtual void modify_ip_sm_gw_context(const std::string &ueId, const std::vector<PatchItem> &patchItem, Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// <summary> /// Modify the IP-SM-GW context data of a UE
/// Retrieves the IP-SM-GW context data of a UE /// </summary>
/// </summary> /// <remarks>
/// <remarks> ///
/// /// </remarks>
/// </remarks> /// <param name="ueId">UE id</param>
/// <param name="ueId">UE id</param> /// <param name="patchItem"></param>
/// <param name="fields">attributes to be retrieved (optional, default to std::vector&lt;std::string&gt;())</param> virtual void modify_ip_sm_gw_context(
/// <param name="supportedFeatures">Supported Features (optional, default to &quot;&quot;)</param> const std::string &ueId, const std::vector<PatchItem> &patchItem,
virtual void query_ip_sm_gw_context(const std::string &ueId, const Pistache::Optional<std::vector<std::string>> &fields, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0; Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Retrieves the IP-SM-GW context data of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="fields">attributes to be retrieved (optional, default to
/// std::vector&lt;std::string&gt;())</param> <param
/// name="supportedFeatures">Supported Features (optional, default to
/// &quot;&quot;)</param>
virtual void query_ip_sm_gw_context(
const std::string &ueId,
const Pistache::Optional<std::vector<std::string>> &fields,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* IPSMGWRegistrationDocumentApi_H_ */ #endif /* IPSMGWRegistrationDocumentApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "IPTVConfigurationDataStoreApi.h" #include "IPTVConfigurationDataStoreApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -45,7 +46,6 @@ void IPTVConfigurationDataStoreApi::setupRoutes() { ...@@ -45,7 +46,6 @@ void IPTVConfigurationDataStoreApi::setupRoutes() {
void IPTVConfigurationDataStoreApi::read_iptv_congifuration_data_handler( void IPTVConfigurationDataStoreApi::read_iptv_congifuration_data_handler(
const Pistache::Rest::Request &request, const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) { Pistache::Http::ResponseWriter response) {
// Getting the query params // Getting the query params
auto configIdsQuery = request.query().get("config-ids"); auto configIdsQuery = request.query().get("config-ids");
Pistache::Optional<std::vector<std::string>> configIds; Pistache::Optional<std::vector<std::string>> configIds;
...@@ -113,4 +113,4 @@ void IPTVConfigurationDataStoreApi:: ...@@ -113,4 +113,4 @@ void IPTVConfigurationDataStoreApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
/** /**
* 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). *
* https://openapi-generator.tech * NOTE: This class is auto generated by OpenAPI Generator
* Do not edit the class manually. * (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
*/ * the class manually.
*/
/* /*
* IPTVConfigurationDataStoreApi.h * IPTVConfigurationDataStoreApi.h
* *
* *
*/ */
#ifndef IPTVConfigurationDataStoreApi_H_ #ifndef IPTVConfigurationDataStoreApi_H_
#define IPTVConfigurationDataStoreApi_H_ #define IPTVConfigurationDataStoreApi_H_
#include <pistache/http.h> #include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h> #include <pistache/http_headers.h>
#include <pistache/optional.h> #include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "IptvConfigData.h" #include "IptvConfigData.h"
#include "ProblemDetails.h" #include "ProblemDetails.h"
#include "Snssai.h" #include "Snssai.h"
#include <string>
namespace oai::udr::api { namespace oai::udr::api {
using namespace oai::udr::model; using namespace oai::udr::model;
class IPTVConfigurationDataStoreApi { class IPTVConfigurationDataStoreApi {
public: public:
IPTVConfigurationDataStoreApi(std::shared_ptr<Pistache::Rest::Router>); IPTVConfigurationDataStoreApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~IPTVConfigurationDataStoreApi() {} virtual ~IPTVConfigurationDataStoreApi() {}
void init(); void init();
const std::string base = "/nudr-dr/v2"; const std::string base = "/nudr-dr/v2";
private: private:
void setupRoutes(); void setupRoutes();
void read_iptv_congifuration_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void read_iptv_congifuration_data_handler(
void iptv_configuration_data_store_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router; void iptv_configuration_data_store_api_default_handler(
const Pistache::Rest::Request &request,
/// <summary> Pistache::Http::ResponseWriter response);
/// Retrieve IPTV configuration Data
/// </summary> std::shared_ptr<Pistache::Rest::Router> router;
/// <remarks>
/// /// <summary>
/// </remarks> /// Retrieve IPTV configuration Data
/// <param name="configIds">Each element identifies a configuration. (optional, default to std::vector&lt;std::string&gt;())</param> /// </summary>
/// <param name="dnns">Each element identifies a DNN. (optional, default to std::vector&lt;std::string&gt;())</param> /// <remarks>
/// <param name="snssais">Each element identifies a slice. (optional, default to std::vector&lt;Snssai&gt;())</param> ///
/// <param name="supis">Each element identifies the user. (optional, default to std::vector&lt;std::string&gt;())</param> /// </remarks>
/// <param name="interGroupIds">Each element identifies a group of users. (optional, default to std::vector&lt;std::string&gt;())</param> /// <param name="configIds">Each element identifies a configuration.
virtual void read_iptv_congifuration_data(const Pistache::Optional<std::vector<std::string>> &configIds, const Pistache::Optional<std::vector<std::string>> &dnns, const Pistache::Optional<std::vector<Snssai>> &snssais, const Pistache::Optional<std::vector<std::string>> &supis, const Pistache::Optional<std::vector<std::string>> &interGroupIds, Pistache::Http::ResponseWriter &response) = 0; /// (optional, default to std::vector&lt;std::string&gt;())</param> <param
/// name="dnns">Each element identifies a DNN. (optional, default to
/// std::vector&lt;std::string&gt;())</param> <param name="snssais">Each
/// element identifies a slice. (optional, default to
/// std::vector&lt;Snssai&gt;())</param> <param name="supis">Each element
/// identifies the user. (optional, default to
/// std::vector&lt;std::string&gt;())</param> <param name="interGroupIds">Each
/// element identifies a group of users. (optional, default to
/// std::vector&lt;std::string&gt;())</param>
virtual void read_iptv_congifuration_data(
const Pistache::Optional<std::vector<std::string>> &configIds,
const Pistache::Optional<std::vector<std::string>> &dnns,
const Pistache::Optional<std::vector<Snssai>> &snssais,
const Pistache::Optional<std::vector<std::string>> &supis,
const Pistache::Optional<std::vector<std::string>> &interGroupIds,
Pistache::Http::ResponseWriter &response) = 0;
}; };
} } // namespace oai::udr::api
#endif /* IPTVConfigurationDataStoreApi_H_ */ #endif /* IPTVConfigurationDataStoreApi_H_ */
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "IndividualApplicationDataSubscriptionDocumentApi.h" #include "IndividualApplicationDataSubscriptionDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -134,4 +135,4 @@ void IndividualApplicationDataSubscriptionDocumentApi:: ...@@ -134,4 +135,4 @@ void IndividualApplicationDataSubscriptionDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include "IndividualAppliedBDTPolicyDataDocumentApi.h" #include "IndividualAppliedBDTPolicyDataDocumentApi.h"
#include "Helpers.h" #include "Helpers.h"
namespace oai::udr::api { namespace oai::udr::api {
...@@ -107,4 +108,4 @@ void IndividualAppliedBDTPolicyDataDocumentApi:: ...@@ -107,4 +108,4 @@ void IndividualAppliedBDTPolicyDataDocumentApi::
"The requested method does not exist"); "The requested method does not exist");
} }
} // namespace oai::udr::model } // namespace oai::udr::api
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
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