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 =
{
INTERFACE_NAME = "ens32"; # YOUR NETWORK CONFIG HERE
IPV4_ADDRESS = "192.168.2.35";
PORT = 8081; # YOUR NETWORK CONFIG HERE
PORT = 8081; # YOUR NETWORK CONFIG HERE
};
};
......
......@@ -12,6 +12,7 @@
*/
#include "AMF3GPPAccessRegistrationDocumentApi.h"
#include "Helpers.h"
#include "logger.hpp"
......@@ -165,4 +166,4 @@ void AMF3GPPAccessRegistrationDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* AMF3GPPAccessRegistrationDocumentApi.h
*
......@@ -18,80 +19,92 @@
#ifndef AMF3GPPAccessRegistrationDocumentApi_H_
#define AMF3GPPAccessRegistrationDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include <vector>
#include "Amf3GppAccessRegistration.h"
#include "PatchItem.h"
#include "PatchResult.h"
#include "ProblemDetails.h"
#include <string>
#include <vector>
namespace oai::udr::api {
using namespace oai::udr::model;
class AMF3GPPAccessRegistrationDocumentApi {
public:
AMF3GPPAccessRegistrationDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AMF3GPPAccessRegistrationDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void amf_context3gpp_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void create_amf_context3gpp_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void query_amf_context3gpp_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void amf3_gpp_access_registration_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// To modify the AMF context data of a UE using 3gpp access in the UDR
/// </summary>
/// <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 amf_context3gpp(const std::string &ueId, const std::vector<PatchItem> &patchItem, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// To store the AMF context data of a UE using 3gpp access in the UDR
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="amf3GppAccessRegistration"> (optional)</param>
virtual void create_amf_context3gpp(const std::string &ueId, 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;
class AMF3GPPAccessRegistrationDocumentApi {
public:
AMF3GPPAccessRegistrationDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AMF3GPPAccessRegistrationDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void amf_context3gpp_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void create_amf_context3gpp_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void query_amf_context3gpp_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void amf3_gpp_access_registration_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// To modify the AMF context data of a UE using 3gpp access in the UDR
/// </summary>
/// <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 amf_context3gpp(
const std::string &ueId, const std::vector<PatchItem> &patchItem,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// To store the AMF context data of a UE using 3gpp access in the UDR
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="amf3GppAccessRegistration"> (optional)</param>
virtual void create_amf_context3gpp(
const std::string &ueId,
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_ */
......@@ -12,6 +12,7 @@
*/
#include "AMFNon3GPPAccessRegistrationDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -36,18 +37,18 @@ void AMFNon3GPPAccessRegistrationDocumentApi::setupRoutes() {
Routes::bind(
&AMFNon3GPPAccessRegistrationDocumentApi::amf_context_non3gpp_handler,
this));
Routes::Put(*router,
base +
"/subscription-data/:ueId/context-data/amf-non-3gpp-access",
Routes::bind(&AMFNon3GPPAccessRegistrationDocumentApi::
create_amf_context_non3gpp_handler,
this));
Routes::Get(*router,
base +
"/subscription-data/:ueId/context-data/amf-non-3gpp-access",
Routes::bind(&AMFNon3GPPAccessRegistrationDocumentApi::
query_amf_context_non3gpp_handler,
this));
Routes::Put(
*router,
base + "/subscription-data/:ueId/context-data/amf-non-3gpp-access",
Routes::bind(&AMFNon3GPPAccessRegistrationDocumentApi::
create_amf_context_non3gpp_handler,
this));
Routes::Get(
*router,
base + "/subscription-data/:ueId/context-data/amf-non-3gpp-access",
Routes::bind(&AMFNon3GPPAccessRegistrationDocumentApi::
query_amf_context_non3gpp_handler,
this));
// Default handler, called when a route is not found
router->addCustomHandler(Routes::bind(
......@@ -167,4 +168,4 @@ void AMFNon3GPPAccessRegistrationDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* AMFNon3GPPAccessRegistrationDocumentApi.h
*
*
*
*/
#ifndef AMFNon3GPPAccessRegistrationDocumentApi_H_
#define AMFNon3GPPAccessRegistrationDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include <vector>
#include "Amf3GppAccessRegistration.h"
#include "AmfNon3GppAccessRegistration.h"
#include "PatchItem.h"
#include "PatchResult.h"
#include "ProblemDetails.h"
#include <string>
#include <vector>
namespace oai::udr::api {
using namespace oai::udr::model;
class AMFNon3GPPAccessRegistrationDocumentApi {
public:
AMFNon3GPPAccessRegistrationDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AMFNon3GPPAccessRegistrationDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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 query_amf_context_non3gpp_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void amf_non3_gpp_access_registration_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// To modify 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>
/// <param name="supportedFeatures">Features required to be supported by the target NF (optional, default to &quot;&quot;)</param>
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;
/// <summary>
/// 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="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;
class AMFNon3GPPAccessRegistrationDocumentApi {
public:
AMFNon3GPPAccessRegistrationDocumentApi(
std::shared_ptr<Pistache::Rest::Router>);
virtual ~AMFNon3GPPAccessRegistrationDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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 query_amf_context_non3gpp_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void amf_non3_gpp_access_registration_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// To modify 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>
/// <param name="supportedFeatures">Features required to be supported by the
/// target NF (optional, default to &quot;&quot;)</param>
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;
/// <summary>
/// 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="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_ */
......@@ -12,6 +12,7 @@
*/
#include "AccessAndMobilityDataApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -170,4 +171,4 @@ void AccessAndMobilityDataApi::access_and_mobility_data_api_default_handler(
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* AccessAndMobilityDataApi.h
*
*
*
*/
#ifndef AccessAndMobilityDataApi_H_
#define AccessAndMobilityDataApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "AccessAndMobilityData.h"
#include "ProblemDetails.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class AccessAndMobilityDataApi {
public:
AccessAndMobilityDataApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AccessAndMobilityDataApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void create_or_replace_access_and_mobility_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void delete_access_and_mobility_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void query_access_and_mobility_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void update_access_and_mobility_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void access_and_mobility_data_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Creates and 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 create_or_replace_access_and_mobility_data(const std::string &ueId, const AccessAndMobilityData &accessAndMobilityData, Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Deletes the access and mobility exposure data for a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
virtual void delete_access_and_mobility_data(const std::string &ueId, Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Retrieves the access and mobility exposure data for a UE
/// </summary>
/// <remarks>
///
/// </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;
class AccessAndMobilityDataApi {
public:
AccessAndMobilityDataApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AccessAndMobilityDataApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void create_or_replace_access_and_mobility_data_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void delete_access_and_mobility_data_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void query_access_and_mobility_data_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void update_access_and_mobility_data_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void access_and_mobility_data_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Creates and 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 create_or_replace_access_and_mobility_data(
const std::string &ueId,
const AccessAndMobilityData &accessAndMobilityData,
Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Deletes the access and mobility exposure data for a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
virtual void delete_access_and_mobility_data(
const std::string &ueId, Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Retrieves the access and mobility exposure data for a UE
/// </summary>
/// <remarks>
///
/// </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_ */
......@@ -12,6 +12,7 @@
*/
#include "AccessAndMobilityPolicyDataDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -72,4 +73,4 @@ void AccessAndMobilityPolicyDataDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* AccessAndMobilityPolicyDataDocumentApi.h
*
*
*
*/
#ifndef AccessAndMobilityPolicyDataDocumentApi_H_
#define AccessAndMobilityPolicyDataDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "AmPolicyData.h"
#include "ProblemDetails.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class AccessAndMobilityPolicyDataDocumentApi {
public:
AccessAndMobilityPolicyDataDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AccessAndMobilityPolicyDataDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the access and mobility policy data for a subscriber
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId"></param>
virtual void read_access_and_mobility_policy_data(const std::string &ueId, Pistache::Http::ResponseWriter &response) = 0;
class AccessAndMobilityPolicyDataDocumentApi {
public:
AccessAndMobilityPolicyDataDocumentApi(
std::shared_ptr<Pistache::Rest::Router>);
virtual ~AccessAndMobilityPolicyDataDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the access and mobility policy data for a subscriber
/// </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_ */
......@@ -12,6 +12,7 @@
*/
#include "AccessAndMobilitySubscriptionDataDocumentApi.h"
#include "Helpers.h"
#include "logger.hpp"
......@@ -102,4 +103,4 @@ void AccessAndMobilitySubscriptionDataDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* AccessAndMobilitySubscriptionDataDocumentApi.h
*
*
*
*/
#ifndef AccessAndMobilitySubscriptionDataDocumentApi_H_
#define AccessAndMobilitySubscriptionDataDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "AccessAndMobilitySubscriptionData.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class AccessAndMobilitySubscriptionDataDocumentApi {
public:
AccessAndMobilitySubscriptionDataDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AccessAndMobilitySubscriptionDataDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the access and mobility subscription data of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="servingPlmnId">PLMN 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>
/// <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;
class AccessAndMobilitySubscriptionDataDocumentApi {
public:
AccessAndMobilitySubscriptionDataDocumentApi(
std::shared_ptr<Pistache::Rest::Router>);
virtual ~AccessAndMobilitySubscriptionDataDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the access and mobility subscription data of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="servingPlmnId">PLMN 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> <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_ */
......@@ -12,6 +12,7 @@
*/
#include "AmfSubscriptionInfoDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -31,8 +32,9 @@ void AmfSubscriptionInfoDocumentApi::setupRoutes() {
Routes::Patch(
*router,
base + "/subscription-data/:ueId/context-data/ee-subscriptions/:subsId/"
"amf-subscriptions",
base +
"/subscription-data/:ueId/context-data/ee-subscriptions/:subsId/"
"amf-subscriptions",
Routes::bind(
&AmfSubscriptionInfoDocumentApi::modify_amf_subscription_info_handler,
this));
......@@ -90,4 +92,4 @@ void AmfSubscriptionInfoDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* AmfSubscriptionInfoDocumentApi.h
*
*
*
*/
#ifndef _AmfSubscriptionInfoDocumentApi_H_
#define _AmfSubscriptionInfoDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include <vector>
#include "PatchItem.h"
#include "PatchResult.h"
#include "ProblemDetails.h"
#include <string>
#include <vector>
namespace oai::udr::api {
using namespace oai::udr::model;
class AmfSubscriptionInfoDocumentApi {
public:
AmfSubscriptionInfoDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AmfSubscriptionInfoDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void modify_amf_subscription_info_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void amf_subscription_info_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// modify the AMF Subscription Info
/// </summary>
/// <remarks>
///
/// </remarks>
/// <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;
class AmfSubscriptionInfoDocumentApi {
public:
AmfSubscriptionInfoDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AmfSubscriptionInfoDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void modify_amf_subscription_info_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void amf_subscription_info_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// modify the AMF Subscription Info
/// </summary>
/// <remarks>
///
/// </remarks>
/// <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_ */
......@@ -12,6 +12,7 @@
*/
#include "ApplicationDataSubscriptionsCollectionApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -52,7 +53,6 @@ void ApplicationDataSubscriptionsCollectionApi::
create_individual_application_data_subscription_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) {
// Getting the body param
ApplicationDataSubs applicationDataSubs;
......@@ -78,7 +78,6 @@ void ApplicationDataSubscriptionsCollectionApi::
read_application_data_change_subscriptions_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) {
// Getting the query params
auto dataFilterQuery = request.query().get("data-filter");
Pistache::Optional<DataFilter> dataFilter;
......@@ -113,4 +112,4 @@ void ApplicationDataSubscriptionsCollectionApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* ApplicationDataSubscriptionsCollectionApi.h
*
*
*
*/
#ifndef ApplicationDataSubscriptionsCollectionApi_H_
#define ApplicationDataSubscriptionsCollectionApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include "ApplicationDataSubs.h"
#include "DataFilter.h"
......@@ -33,47 +32,54 @@ namespace oai::udr::api {
using namespace oai::udr::model;
class ApplicationDataSubscriptionsCollectionApi {
public:
ApplicationDataSubscriptionsCollectionApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~ApplicationDataSubscriptionsCollectionApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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 application_data_subscriptions_collection_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Create a subscription to receive notification of application data changes
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="applicationDataSubs"></param>
virtual void create_individual_application_data_subscription(const ApplicationDataSubs &applicationDataSubs, 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;
class ApplicationDataSubscriptionsCollectionApi {
public:
ApplicationDataSubscriptionsCollectionApi(
std::shared_ptr<Pistache::Rest::Router>);
virtual ~ApplicationDataSubscriptionsCollectionApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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 application_data_subscriptions_collection_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Create a subscription to receive notification of application data changes
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="applicationDataSubs"></param>
virtual void create_individual_application_data_subscription(
const ApplicationDataSubs &applicationDataSubs,
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_ */
......@@ -12,6 +12,7 @@
*/
#include "AuthenticationSoRDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -125,4 +126,4 @@ void AuthenticationSoRDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* AuthenticationSoRDocumentApi.h
*
*
*
*/
#ifndef AuthenticationSoRDocumentApi_H_
#define AuthenticationSoRDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "SorData.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class AuthenticationSoRDocumentApi {
public:
AuthenticationSoRDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AuthenticationSoRDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void create_authentication_so_r_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void query_auth_so_r_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void authentication_so_r_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// To store 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>
/// <param name="sorData"> (optional)</param>
virtual void create_authentication_so_r(const std::string &ueId, const Pistache::Optional<std::string> &supportedFeatures, const SorData &sorData, 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;
class AuthenticationSoRDocumentApi {
public:
AuthenticationSoRDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AuthenticationSoRDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void create_authentication_so_r_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void query_auth_so_r_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void authentication_so_r_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// To store 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> <param name="sorData"> (optional)</param>
virtual void create_authentication_so_r(
const std::string &ueId,
const Pistache::Optional<std::string> &supportedFeatures,
const SorData &sorData, 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_ */
......@@ -12,6 +12,7 @@
*/
#include "AuthenticationStatusDocumentApi.h"
#include "Helpers.h"
#include "logger.hpp"
......@@ -162,4 +163,4 @@ void AuthenticationStatusDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* AuthenticationStatusDocumentApi.h
*
......@@ -18,58 +19,67 @@
#ifndef AuthenticationStatusDocumentApi_H_
#define AuthenticationStatusDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "AuthEvent.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class AuthenticationStatusDocumentApi {
public:
AuthenticationStatusDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AuthenticationStatusDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void create_authentication_status_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void delete_authentication_status_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void query_authentication_status_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void authentication_status_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// To store the Authentication Status data of a UE
/// </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;
class AuthenticationStatusDocumentApi {
public:
AuthenticationStatusDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AuthenticationStatusDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void create_authentication_status_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void delete_authentication_status_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void query_authentication_status_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void authentication_status_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// To store the Authentication Status data of a UE
/// </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_ */
......@@ -12,6 +12,7 @@
*/
#include "AuthenticationSubscriptionDocumentApi.h"
#include "Helpers.h"
#include "logger.hpp"
......@@ -31,14 +32,16 @@ void AuthenticationSubscriptionDocumentApi::setupRoutes() {
using namespace Pistache::Rest;
Routes::Get(*router,
base + "/subscription-data/:ueId/authentication-data/"
"authentication-subscription",
base +
"/subscription-data/:ueId/authentication-data/"
"authentication-subscription",
Routes::bind(&AuthenticationSubscriptionDocumentApi::
read_authentication_subscription_handler,
this));
Routes::Patch(*router,
base + "/subscription-data/:ueId/authentication-data/"
"authentication-subscription",
base +
"/subscription-data/:ueId/authentication-data/"
"authentication-subscription",
Routes::bind(&AuthenticationSubscriptionDocumentApi::
modify_authentication_subscription_handler,
this));
......@@ -132,4 +135,4 @@ void AuthenticationSubscriptionDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* AuthenticationSubscriptionDocumentApi.h
*
*
*
*/
#ifndef AuthenticationSubscriptionDocumentApi_H_
#define AuthenticationSubscriptionDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include <vector>
#include "PatchItem.h"
#include "PatchResult.h"
#include "ProblemDetails.h"
#include <string>
#include <vector>
namespace oai::udr::api {
using namespace oai::udr::model;
class AuthenticationSubscriptionDocumentApi {
public:
AuthenticationSubscriptionDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AuthenticationSubscriptionDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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 authentication_subscription_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// modify the authentication subscription data of a UE
/// </summary>
/// <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;
class AuthenticationSubscriptionDocumentApi {
public:
AuthenticationSubscriptionDocumentApi(
std::shared_ptr<Pistache::Rest::Router>);
virtual ~AuthenticationSubscriptionDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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 authentication_subscription_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// modify the authentication subscription data of a UE
/// </summary>
/// <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_ */
......@@ -12,6 +12,7 @@
*/
#include "AuthenticationUPUDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -124,4 +125,4 @@ void AuthenticationUPUDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* AuthenticationUPUDocumentApi.h
*
*
*
*/
#ifndef AuthenticationUPUDocumentApi_H_
#define AuthenticationUPUDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "UpuData.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class AuthenticationUPUDocumentApi {
public:
AuthenticationUPUDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AuthenticationUPUDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void create_authentication_upu_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void query_auth_upu_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void authentication_upu_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// To store 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>
/// <param name="upuData"> (optional)</param>
virtual void create_authentication_upu(const std::string &ueId, const Pistache::Optional<std::string> &supportedFeatures, const UpuData &upuData, 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;
class AuthenticationUPUDocumentApi {
public:
AuthenticationUPUDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~AuthenticationUPUDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void create_authentication_upu_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void query_auth_upu_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void authentication_upu_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// To store 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> <param name="upuData"> (optional)</param>
virtual void create_authentication_upu(
const std::string &ueId,
const Pistache::Optional<std::string> &supportedFeatures,
const UpuData &upuData, 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_ */
......@@ -12,6 +12,7 @@
*/
#include "BdtDataStoreApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -39,7 +40,6 @@ void BdtDataStoreApi::setupRoutes() {
void BdtDataStoreApi::read_bdt_data_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) {
// Getting the query params
auto bdtRefIdsQuery = request.query().get("bdt-ref-ids");
Pistache::Optional<std::vector<std::string>> bdtRefIds;
......@@ -80,4 +80,4 @@ void BdtDataStoreApi::bdt_data_store_api_default_handler(
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* BdtDataStoreApi.h
*
*
*
*/
#ifndef BdtDataStoreApi_H_
#define BdtDataStoreApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "BdtData.h"
#include "ProblemDetails.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class BdtDataStoreApi {
public:
BdtDataStoreApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~BdtDataStoreApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void read_bdt_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void bdt_data_store_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the BDT data collection
/// </summary>
/// <remarks>
///
/// </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;
class BdtDataStoreApi {
public:
BdtDataStoreApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~BdtDataStoreApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void read_bdt_data_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void bdt_data_store_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the BDT data collection
/// </summary>
/// <remarks>
///
/// </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_ */
......@@ -12,6 +12,7 @@
*/
#include "BdtPolicyDataStoreApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -41,7 +42,6 @@ void BdtPolicyDataStoreApi::setupRoutes() {
void BdtPolicyDataStoreApi::read_bdt_policy_data_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) {
// Getting the query params
auto bdtPolicyIdsQuery = request.query().get("bdt-policy-ids");
Pistache::Optional<std::vector<std::string>> bdtPolicyIds;
......@@ -90,4 +90,4 @@ void BdtPolicyDataStoreApi::bdt_policy_data_store_api_default_handler(
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* BdtPolicyDataStoreApi.h
*
*
*
*/
#ifndef BdtPolicyDataStoreApi_H_
#define BdtPolicyDataStoreApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "BdtPolicyData.h"
#include "ProblemDetails.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class BdtPolicyDataStoreApi {
public:
BdtPolicyDataStoreApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~BdtPolicyDataStoreApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void read_bdt_policy_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void bdt_policy_data_store_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieve applied BDT Policy Data
/// </summary>
/// <remarks>
///
/// </remarks>
/// <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;
class BdtPolicyDataStoreApi {
public:
BdtPolicyDataStoreApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~BdtPolicyDataStoreApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void read_bdt_policy_data_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void bdt_policy_data_store_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieve applied BDT Policy Data
/// </summary>
/// <remarks>
///
/// </remarks>
/// <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_ */
......@@ -12,6 +12,7 @@
*/
#include "CAGACKDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -78,4 +79,4 @@ void CAGACKDocumentApi::cagack_document_api_default_handler(
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* CAGACKDocumentApi.h
*
*
*
*/
#ifndef CAGACKDocumentApi_H_
#define CAGACKDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "CagAckData.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class CAGACKDocumentApi {
public:
CAGACKDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~CAGACKDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void query_cag_ack_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void cagack_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the CAG 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_cag_ack(const std::string &ueId, const Pistache::Optional<std::string> &supportedFeatures, Pistache::Http::ResponseWriter &response) = 0;
class CAGACKDocumentApi {
public:
CAGACKDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~CAGACKDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void query_cag_ack_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void cagack_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the CAG 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_cag_ack(
const std::string &ueId,
const Pistache::Optional<std::string> &supportedFeatures,
Pistache::Http::ResponseWriter &response) = 0;
};
}
} // namespace oai::udr::api
#endif /* CAGACKDocumentApi_H_ */
......@@ -12,6 +12,7 @@
*/
#include "CAGUpdateAckDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -85,4 +86,4 @@ void CAGUpdateAckDocumentApi::cag_update_ack_document_api_default_handler(
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* CAGUpdateAckDocumentApi.h
*
*
*
*/
#ifndef CAGUpdateAckDocumentApi_H_
#define CAGUpdateAckDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "CagAckData.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class CAGUpdateAckDocumentApi {
public:
CAGUpdateAckDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~CAGUpdateAckDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void create_cag_update_ack_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void cag_update_ack_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// To store the CAG update 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>
/// <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;
class CAGUpdateAckDocumentApi {
public:
CAGUpdateAckDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~CAGUpdateAckDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void create_cag_update_ack_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void cag_update_ack_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// To store the CAG update 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> <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_ */
......@@ -12,6 +12,7 @@
*/
#include "Class5GVNGroupsInternalDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -45,7 +46,6 @@ void Class5GVNGroupsInternalDocumentApi::setupRoutes() {
void Class5GVNGroupsInternalDocumentApi::query5_g_vn_group_internal_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) {
// Getting the query params
auto internalGroupIdsQuery = request.query().get("internal-group-ids");
Pistache::Optional<std::vector<std::string>> internalGroupIds;
......@@ -80,4 +80,4 @@ void Class5GVNGroupsInternalDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* Class5GVNGroupsInternalDocumentApi.h
*
*
*
*/
#ifndef Class5GVNGroupsInternalDocumentApi_H_
#define Class5GVNGroupsInternalDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "5GVnGroupConfiguration.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class Class5GVNGroupsInternalDocumentApi {
public:
Class5GVNGroupsInternalDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~Class5GVNGroupsInternalDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void query5_g_vn_group_internal_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void class5_gvn_groups_internal_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the data of 5G VN Group
/// </summary>
/// <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;
class Class5GVNGroupsInternalDocumentApi {
public:
Class5GVNGroupsInternalDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~Class5GVNGroupsInternalDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void query5_g_vn_group_internal_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void class5_gvn_groups_internal_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the data of 5G VN Group
/// </summary>
/// <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_ */
......@@ -12,6 +12,7 @@
*/
#include "Class5GVNGroupsStoreApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -42,7 +43,6 @@ void Class5GVNGroupsStoreApi::setupRoutes() {
void Class5GVNGroupsStoreApi::query5_g_vn_group_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) {
// Getting the query params
auto gpsisQuery = request.query().get("gpsis");
Pistache::Optional<std::vector<std::string>> gpsis;
......@@ -75,4 +75,4 @@ void Class5GVNGroupsStoreApi::class5_gvn_groups_store_api_default_handler(
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* Class5GVNGroupsStoreApi.h
*
*
*
*/
#ifndef Class5GVNGroupsStoreApi_H_
#define Class5GVNGroupsStoreApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "5GVnGroupConfiguration.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class Class5GVNGroupsStoreApi {
public:
Class5GVNGroupsStoreApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~Class5GVNGroupsStoreApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void query5_g_vn_group_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void class5_gvn_groups_store_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the data of a 5G VN Group
/// </summary>
/// <remarks>
///
/// </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;
class Class5GVNGroupsStoreApi {
public:
Class5GVNGroupsStoreApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~Class5GVNGroupsStoreApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void query5_g_vn_group_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void class5_gvn_groups_store_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the data of a 5G VN Group
/// </summary>
/// <remarks>
///
/// </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_ */
......@@ -12,6 +12,7 @@
*/
#include "Class5GVnGroupConfigurationDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -79,4 +80,4 @@ void Class5GVnGroupConfigurationDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* Class5GVnGroupConfigurationDocumentApi.h
*
*
*
*/
#ifndef Class5GVnGroupConfigurationDocumentApi_H_
#define Class5GVnGroupConfigurationDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "5GVnGroupConfiguration.h"
#include "ProblemDetails.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class Class5GVnGroupConfigurationDocumentApi {
public:
Class5GVnGroupConfigurationDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~Class5GVnGroupConfigurationDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Create an individual 5G VN Grouop
/// </summary>
/// <remarks>
///
/// </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;
class Class5GVnGroupConfigurationDocumentApi {
public:
Class5GVnGroupConfigurationDocumentApi(
std::shared_ptr<Pistache::Rest::Router>);
virtual ~Class5GVnGroupConfigurationDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Create an individual 5G VN Grouop
/// </summary>
/// <remarks>
///
/// </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_ */
......@@ -12,6 +12,7 @@
*/
#include "ContextDataDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -78,4 +79,4 @@ void ContextDataDocumentApi::context_data_document_api_default_handler(
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* ContextDataDocumentApi.h
*
*
*
*/
#ifndef ContextDataDocumentApi_H_
#define ContextDataDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include "ContextDataSetName.h"
#include "ContextDataSets.h"
......@@ -34,38 +33,38 @@ namespace oai::udr::api {
using namespace oai::udr::model;
class ContextDataDocumentApi {
public:
ContextDataDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~ContextDataDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void query_context_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void context_data_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieve multiple context data sets of a UE
/// </summary>
/// <remarks>
///
/// </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;
class ContextDataDocumentApi {
public:
ContextDataDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~ContextDataDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void query_context_data_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void context_data_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieve multiple context data sets of a UE
/// </summary>
/// <remarks>
///
/// </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_ */
......@@ -12,6 +12,7 @@
*/
#include "Delete5GVnGroupApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -66,4 +67,4 @@ void Delete5GVnGroupApi::delete5_g_vn_group_api_default_handler(
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* Delete5GVnGroupApi.h
*
*
*
*/
#ifndef Delete5GVnGroupApi_H_
#define Delete5GVnGroupApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <nlohmann/json.hpp>
#include <pistache/router.h>
#include <nlohmann/json.hpp>
#include <string>
namespace oai::udr::api {
class Delete5GVnGroupApi {
public:
Delete5GVnGroupApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~Delete5GVnGroupApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void delete5_g_vn_group_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void delete5_g_vn_group_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Deletes the 5GVnGroup
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="externalGroupId"></param>
virtual void delete5_g_vn_group(const std::string &externalGroupId, Pistache::Http::ResponseWriter &response) = 0;
class Delete5GVnGroupApi {
public:
Delete5GVnGroupApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~Delete5GVnGroupApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void delete5_g_vn_group_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void delete5_g_vn_group_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Deletes the 5GVnGroup
/// </summary>
/// <remarks>
///
/// </remarks>
/// <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_ */
......@@ -12,6 +12,7 @@
*/
#include "EnhancedCoverageRestrictionDataApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -88,4 +89,4 @@ void EnhancedCoverageRestrictionDataApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* EnhancedCoverageRestrictionDataApi.h
*
*
*
*/
#ifndef EnhancedCoverageRestrictionDataApi_H_
#define EnhancedCoverageRestrictionDataApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "EnhancedCoverageRestrictionData.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class EnhancedCoverageRestrictionDataApi {
public:
EnhancedCoverageRestrictionDataApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~EnhancedCoverageRestrictionDataApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void query_coverage_restriction_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void enhanced_coverage_restriction_data_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the subscribed enhanced Coverage Restriction Data of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <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;
class EnhancedCoverageRestrictionDataApi {
public:
EnhancedCoverageRestrictionDataApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~EnhancedCoverageRestrictionDataApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void query_coverage_restriction_data_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void enhanced_coverage_restriction_data_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the subscribed enhanced Coverage Restriction Data of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <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_ */
......@@ -12,6 +12,7 @@
*/
#include "EventAMFSubscriptionInfoDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -29,8 +30,9 @@ void EventAMFSubscriptionInfoDocumentApi::setupRoutes() {
using namespace Pistache::Rest;
Routes::Delete(*router,
base + "/subscription-data/:ueId/context-data/"
"ee-subscriptions/:subsId/amf-subscriptions",
base +
"/subscription-data/:ueId/context-data/"
"ee-subscriptions/:subsId/amf-subscriptions",
Routes::bind(&EventAMFSubscriptionInfoDocumentApi::
remove_amf_subscriptions_info_handler,
this));
......@@ -73,4 +75,4 @@ void EventAMFSubscriptionInfoDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* EventAMFSubscriptionInfoDocumentApi.h
*
*
*
*/
#ifndef EventAMFSubscriptionInfoDocumentApi_H_
#define EventAMFSubscriptionInfoDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <nlohmann/json.hpp>
#include <pistache/router.h>
#include <nlohmann/json.hpp>
#include <string>
namespace oai::udr::api {
class EventAMFSubscriptionInfoDocumentApi {
public:
EventAMFSubscriptionInfoDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~EventAMFSubscriptionInfoDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void remove_amf_subscriptions_info_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void event_amf_subscription_info_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Deletes AMF Subscription Info for an eeSubscription
/// </summary>
/// <remarks>
///
/// </remarks>
/// <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;
class EventAMFSubscriptionInfoDocumentApi {
public:
EventAMFSubscriptionInfoDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~EventAMFSubscriptionInfoDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void remove_amf_subscriptions_info_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void event_amf_subscription_info_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Deletes AMF Subscription Info for an eeSubscription
/// </summary>
/// <remarks>
///
/// </remarks>
/// <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_ */
......@@ -12,6 +12,7 @@
*/
#include "EventExposureDataDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -88,4 +89,4 @@ void EventExposureDataDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* EventExposureDataDocumentApi.h
*
*
*
*/
#ifndef EventExposureDataDocumentApi_H_
#define EventExposureDataDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "EeProfileData.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class EventExposureDataDocumentApi {
public:
EventExposureDataDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~EventExposureDataDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void query_ee_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void event_exposure_data_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the ee profile 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_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;
class EventExposureDataDocumentApi {
public:
EventExposureDataDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~EventExposureDataDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void query_ee_data_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void event_exposure_data_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieves the ee profile 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_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_ */
......@@ -12,6 +12,7 @@
*/
#include "EventExposureGroupSubscriptionDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -188,4 +189,4 @@ void EventExposureGroupSubscriptionDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* EventExposureGroupSubscriptionDocumentApi.h
*
*
*
*/
#ifndef EventExposureGroupSubscriptionDocumentApi_H_
#define EventExposureGroupSubscriptionDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include "EeSubscription.h"
//#include "Object.h"
#include <string>
#include <vector>
#include "PatchItem.h"
#include "PatchResult.h"
#include "ProblemDetails.h"
#include <string>
#include <vector>
namespace oai::udr::api {
using namespace oai::udr::model;
class EventExposureGroupSubscriptionDocumentApi {
public:
EventExposureGroupSubscriptionDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~EventExposureGroupSubscriptionDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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 remove_ee_group_subscriptions_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void update_ee_group_subscriptions_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void event_exposure_group_subscription_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Modify an individual ee subscription for a group of a UEs
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueGroupId"></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_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>
/// Retrieve a individual 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 query_ee_group_subscription(const std::string &ueGroupId, const std::string &subsId, Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// 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;
class EventExposureGroupSubscriptionDocumentApi {
public:
EventExposureGroupSubscriptionDocumentApi(
std::shared_ptr<Pistache::Rest::Router>);
virtual ~EventExposureGroupSubscriptionDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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 remove_ee_group_subscriptions_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void update_ee_group_subscriptions_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void event_exposure_group_subscription_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Modify an individual ee subscription for a group of a UEs
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueGroupId"></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_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>
/// Retrieve a individual 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 query_ee_group_subscription(
const std::string &ueGroupId, const std::string &subsId,
Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// 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_ */
......@@ -12,6 +12,7 @@
*/
#include "EventExposureGroupSubscriptionsCollectionApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -30,18 +31,18 @@ void EventExposureGroupSubscriptionsCollectionApi::init() { setupRoutes(); }
void EventExposureGroupSubscriptionsCollectionApi::setupRoutes() {
using namespace Pistache::Rest;
Routes::Post(*router,
base +
"/subscription-data/group-data/:ueGroupId/ee-subscriptions",
Routes::bind(&EventExposureGroupSubscriptionsCollectionApi::
create_ee_group_subscriptions_handler,
this));
Routes::Get(*router,
base +
"/subscription-data/group-data/:ueGroupId/ee-subscriptions",
Routes::bind(&EventExposureGroupSubscriptionsCollectionApi::
query_ee_group_subscriptions_handler,
this));
Routes::Post(
*router,
base + "/subscription-data/group-data/:ueGroupId/ee-subscriptions",
Routes::bind(&EventExposureGroupSubscriptionsCollectionApi::
create_ee_group_subscriptions_handler,
this));
Routes::Get(
*router,
base + "/subscription-data/group-data/:ueGroupId/ee-subscriptions",
Routes::bind(&EventExposureGroupSubscriptionsCollectionApi::
query_ee_group_subscriptions_handler,
this));
// Default handler, called when a route is not found
router->addCustomHandler(Routes::bind(
......@@ -118,4 +119,4 @@ void EventExposureGroupSubscriptionsCollectionApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* EventExposureGroupSubscriptionsCollectionApi.h
*
*
*
*/
#ifndef EventExposureGroupSubscriptionsCollectionApi_H_
#define EventExposureGroupSubscriptionsCollectionApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "EeSubscription.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class EventExposureGroupSubscriptionsCollectionApi {
public:
EventExposureGroupSubscriptionsCollectionApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~EventExposureGroupSubscriptionsCollectionApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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 event_exposure_group_subscriptions_collection_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Create individual EE subscription for a group of UEs or any UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueGroupId">Group of UEs or any UE</param>
/// <param name="eeSubscription"></param>
virtual void create_ee_group_subscriptions(const std::string &ueGroupId, const EeSubscription &eeSubscription, 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;
class EventExposureGroupSubscriptionsCollectionApi {
public:
EventExposureGroupSubscriptionsCollectionApi(
std::shared_ptr<Pistache::Rest::Router>);
virtual ~EventExposureGroupSubscriptionsCollectionApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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 event_exposure_group_subscriptions_collection_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Create individual EE subscription for a group of UEs or any UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueGroupId">Group of UEs or any UE</param>
/// <param name="eeSubscription"></param>
virtual void create_ee_group_subscriptions(
const std::string &ueGroupId, const EeSubscription &eeSubscription,
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_ */
......@@ -12,6 +12,7 @@
*/
#include "EventExposureSubscriptionDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -178,4 +179,4 @@ void EventExposureSubscriptionDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* EventExposureSubscriptionDocumentApi.h
*
*
*
*/
#ifndef EventExposureSubscriptionDocumentApi_H_
#define EventExposureSubscriptionDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include "EeSubscription.h"
//#include "Object.h"
#include <string>
#include <vector>
#include "PatchItem.h"
#include "PatchResult.h"
#include "ProblemDetails.h"
#include <string>
#include <vector>
namespace oai::udr::api {
using namespace oai::udr::model;
class EventExposureSubscriptionDocumentApi {
public:
EventExposureSubscriptionDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~EventExposureSubscriptionDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void modify_eesubscription_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void queryee_subscription_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void removeee_subscriptions_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void update_eesubscriptions_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void event_exposure_subscription_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Modify an individual ee subscription of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</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_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;
/// <summary>
/// Retrieve a eeSubscription
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId"></param>
/// <param name="subsId">Unique ID of the subscription to remove</param>
virtual void queryee_subscription(const std::string &ueId, const std::string &subsId, Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Deletes a eeSubscription
/// </summary>
/// <remarks>
///
/// </remarks>
/// <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;
class EventExposureSubscriptionDocumentApi {
public:
EventExposureSubscriptionDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~EventExposureSubscriptionDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void modify_eesubscription_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void queryee_subscription_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void removeee_subscriptions_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void update_eesubscriptions_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void event_exposure_subscription_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Modify an individual ee subscription of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</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_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;
/// <summary>
/// Retrieve a eeSubscription
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId"></param>
/// <param name="subsId">Unique ID of the subscription to remove</param>
virtual void queryee_subscription(
const std::string &ueId, const std::string &subsId,
Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Deletes a eeSubscription
/// </summary>
/// <remarks>
///
/// </remarks>
/// <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_ */
......@@ -12,6 +12,7 @@
*/
#include "EventExposureSubscriptionsCollectionApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -114,4 +115,4 @@ void EventExposureSubscriptionsCollectionApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* EventExposureSubscriptionsCollectionApi.h
*
*
*
*/
#ifndef EventExposureSubscriptionsCollectionApi_H_
#define EventExposureSubscriptionsCollectionApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "EeSubscription.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class EventExposureSubscriptionsCollectionApi {
public:
EventExposureSubscriptionsCollectionApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~EventExposureSubscriptionsCollectionApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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 event_exposure_subscriptions_collection_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Create individual EE subscription
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE ID</param>
/// <param name="eeSubscription"></param>
virtual void create_ee_subscriptions(const std::string &ueId, const EeSubscription &eeSubscription, Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// 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;
class EventExposureSubscriptionsCollectionApi {
public:
EventExposureSubscriptionsCollectionApi(
std::shared_ptr<Pistache::Rest::Router>);
virtual ~EventExposureSubscriptionsCollectionApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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 event_exposure_subscriptions_collection_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Create individual EE subscription
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE ID</param>
/// <param name="eeSubscription"></param>
virtual void create_ee_subscriptions(
const std::string &ueId, const EeSubscription &eeSubscription,
Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// 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_ */
......@@ -12,6 +12,7 @@
*/
#include "ExposureDataSubscriptionsCollectionApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -46,7 +47,6 @@ void ExposureDataSubscriptionsCollectionApi::
create_individual_exposure_data_subscription_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) {
// Getting the body param
ExposureDataSubscription exposureDataSubscription;
......@@ -77,4 +77,4 @@ void ExposureDataSubscriptionsCollectionApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* ExposureDataSubscriptionsCollectionApi.h
*
*
*
*/
#ifndef ExposureDataSubscriptionsCollectionApi_H_
#define ExposureDataSubscriptionsCollectionApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include "ExposureDataSubscription.h"
#include "ProblemDetails.h"
......@@ -32,37 +31,39 @@ namespace oai::udr::api {
using namespace oai::udr::model;
class ExposureDataSubscriptionsCollectionApi {
public:
ExposureDataSubscriptionsCollectionApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~ExposureDataSubscriptionsCollectionApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Create a subscription to receive notification of exposure data changes
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="exposureDataSubscription"></param>
virtual void create_individual_exposure_data_subscription(const ExposureDataSubscription &exposureDataSubscription, Pistache::Http::ResponseWriter &response) = 0;
class ExposureDataSubscriptionsCollectionApi {
public:
ExposureDataSubscriptionsCollectionApi(
std::shared_ptr<Pistache::Rest::Router>);
virtual ~ExposureDataSubscriptionsCollectionApi() {}
void init();
const std::string base = "/nudr-dr/v2";
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);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Create a subscription to receive notification of exposure data changes
/// </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_ */
......@@ -12,6 +12,7 @@
*/
#include "GroupIdentifiersApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -41,7 +42,6 @@ void GroupIdentifiersApi::setupRoutes() {
void GroupIdentifiersApi::get_group_identifiers_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) {
// Getting the query params
auto extGroupIdQuery = request.query().get("ext-group-id");
Pistache::Optional<std::string> extGroupId;
......@@ -99,4 +99,4 @@ void GroupIdentifiersApi::group_identifiers_api_default_handler(
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* GroupIdentifiersApi.h
*
*
*
*/
#ifndef GroupIdentifiersApi_H_
#define GroupIdentifiersApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "GroupIdentifiers.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class GroupIdentifiersApi {
public:
GroupIdentifiersApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~GroupIdentifiersApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void get_group_identifiers_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void group_identifiers_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Mapping of Group Identifiers
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="extGroupId">External Group Identifier (optional, default to &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;
class GroupIdentifiersApi {
public:
GroupIdentifiersApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~GroupIdentifiersApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void get_group_identifiers_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void group_identifiers_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Mapping of Group Identifiers
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="extGroupId">External Group Identifier (optional, default to
/// &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_ */
......@@ -12,6 +12,7 @@
*/
#include "IPSMGWRegistrationDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -177,4 +178,4 @@ void IPSMGWRegistrationDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* IPSMGWRegistrationDocumentApi.h
*
*
*
*/
#ifndef IPSMGWRegistrationDocumentApi_H_
#define IPSMGWRegistrationDocumentApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include <vector>
#include "IpSmGwRegistration.h"
#include "PatchItem.h"
#include "ProblemDetails.h"
#include <string>
#include <vector>
namespace oai::udr::api {
using namespace oai::udr::model;
class IPSMGWRegistrationDocumentApi {
public:
IPSMGWRegistrationDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~IPSMGWRegistrationDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void create_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, Pistache::Http::ResponseWriter response);
void modify_ip_sm_gw_context_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void query_ip_sm_gw_context_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void ipsmgw_registration_document_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Create the IP-SM-GW context data of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="ipSmGwRegistration"> (optional)</param>
virtual void create_ip_sm_gw_context(const std::string &ueId, const IpSmGwRegistration &ipSmGwRegistration, Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// To remove the IP-SM-GW context data of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
virtual void delete_ip_sm_gw_context(const std::string &ueId, Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Modify the IP-SM-GW context data of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="patchItem"></param>
virtual void modify_ip_sm_gw_context(const std::string &ueId, const std::vector<PatchItem> &patchItem, 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;
class IPSMGWRegistrationDocumentApi {
public:
IPSMGWRegistrationDocumentApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~IPSMGWRegistrationDocumentApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void create_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,
Pistache::Http::ResponseWriter response);
void modify_ip_sm_gw_context_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void query_ip_sm_gw_context_handler(const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void ipsmgw_registration_document_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Create the IP-SM-GW context data of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="ipSmGwRegistration"> (optional)</param>
virtual void create_ip_sm_gw_context(
const std::string &ueId, const IpSmGwRegistration &ipSmGwRegistration,
Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// To remove the IP-SM-GW context data of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
virtual void delete_ip_sm_gw_context(
const std::string &ueId, Pistache::Http::ResponseWriter &response) = 0;
/// <summary>
/// Modify the IP-SM-GW context data of a UE
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="ueId">UE id</param>
/// <param name="patchItem"></param>
virtual void modify_ip_sm_gw_context(
const std::string &ueId, const std::vector<PatchItem> &patchItem,
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_ */
......@@ -12,6 +12,7 @@
*/
#include "IPTVConfigurationDataStoreApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -45,7 +46,6 @@ void IPTVConfigurationDataStoreApi::setupRoutes() {
void IPTVConfigurationDataStoreApi::read_iptv_congifuration_data_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response) {
// Getting the query params
auto configIdsQuery = request.query().get("config-ids");
Pistache::Optional<std::vector<std::string>> configIds;
......@@ -113,4 +113,4 @@ void IPTVConfigurationDataStoreApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
/**
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
* Nudr_DataRepository API OpenAPI file
* 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
*
*
* NOTE: This class is auto generated by OpenAPI Generator
* (https://openapi-generator.tech). https://openapi-generator.tech Do not edit
* the class manually.
*/
/*
* IPTVConfigurationDataStoreApi.h
*
*
*
*/
#ifndef IPTVConfigurationDataStoreApi_H_
#define IPTVConfigurationDataStoreApi_H_
#include <pistache/http.h>
#include <pistache/router.h>
#include <pistache/http_headers.h>
#include <pistache/optional.h>
#include <pistache/router.h>
#include <string>
#include "IptvConfigData.h"
#include "ProblemDetails.h"
#include "Snssai.h"
#include <string>
namespace oai::udr::api {
using namespace oai::udr::model;
class IPTVConfigurationDataStoreApi {
public:
IPTVConfigurationDataStoreApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~IPTVConfigurationDataStoreApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void read_iptv_congifuration_data_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
void iptv_configuration_data_store_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieve IPTV configuration Data
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="configIds">Each element identifies a configuration. (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;
class IPTVConfigurationDataStoreApi {
public:
IPTVConfigurationDataStoreApi(std::shared_ptr<Pistache::Rest::Router>);
virtual ~IPTVConfigurationDataStoreApi() {}
void init();
const std::string base = "/nudr-dr/v2";
private:
void setupRoutes();
void read_iptv_congifuration_data_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
void iptv_configuration_data_store_api_default_handler(
const Pistache::Rest::Request &request,
Pistache::Http::ResponseWriter response);
std::shared_ptr<Pistache::Rest::Router> router;
/// <summary>
/// Retrieve IPTV configuration Data
/// </summary>
/// <remarks>
///
/// </remarks>
/// <param name="configIds">Each element identifies a configuration.
/// (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_ */
......@@ -12,6 +12,7 @@
*/
#include "IndividualApplicationDataSubscriptionDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -134,4 +135,4 @@ void IndividualApplicationDataSubscriptionDocumentApi::
"The requested method does not exist");
}
} // namespace oai::udr::model
} // namespace oai::udr::api
......@@ -12,6 +12,7 @@
*/
#include "IndividualAppliedBDTPolicyDataDocumentApi.h"
#include "Helpers.h"
namespace oai::udr::api {
......@@ -107,4 +108,4 @@ void IndividualAppliedBDTPolicyDataDocumentApi::
"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