X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=Bouncer%2Fsrc%2Fb_xapp_main.cc;fp=Bouncer%2Fsrc%2Fb_xapp_main.cc;h=0492e3983f8f730e8c4e769a270fad7dcbc54cd6;hb=eb27c05c05b5042d115480c40cffa16e7d473d80;hp=42d2d3eaf98e5fed06644a61b5ee854ad21e055c;hpb=c87d0bba9607c802e025053ba4cf59c5b3841ca0;p=ric-app%2Fbouncer.git diff --git a/Bouncer/src/b_xapp_main.cc b/Bouncer/src/b_xapp_main.cc index 42d2d3e..0492e39 100644 --- a/Bouncer/src/b_xapp_main.cc +++ b/Bouncer/src/b_xapp_main.cc @@ -17,6 +17,95 @@ */ #include "xapp.hpp" +#include +#include +#include +using namespace web; +using namespace web::http; +using namespace web::http::experimental::listener; +using namespace utility; +std::vectorSubscriptionIds; +#define TRACE(msg) wcout << msg + + +void display_json( + json::value const & jvalue) +{ + cout<<"\ndisplaying REST Notification\n"; + wcout << jvalue.serialize().c_str() << endl; +} + + +void handle_request(http_request request) +{ +auto answer = json::value::object(); +cout<<"\nPrinting POST request content\n"; +cout< task) { + try + { + answer = task.get(); + display_json(answer); + } + catch (http_exception const & e) + { + cout<<"\ninside catch block"; + wcout << e.what() << endl; + } + + }) + .wait(); + + request.reply(status_codes::OK, answer); +} + +void handle_post(http_request request) +{ + TRACE("\nhandle POST\n"); + + handle_request(request); +} + +void handle_put(http_request request) +{ + TRACE("\nhandle PUT\n"); + + handle_request(request); +} + +void start_server() +{ + + utility::string_t port = U("8080"); + utility::string_t address = U("http://0.0.0.0:"); + address.append(port); + address.append(U("/ric/v1/subscriptions/response")); + uri_builder uri(address); + + auto addr = uri.to_uri().to_string(); + http_listener listener(addr); + //http_listener listener("http://localhost:8080/ric"); + cout<<"validated uri = "<startup(sub_handler); sleep(10); @@ -78,10 +169,10 @@ int main(int argc, char *argv[]){ b_xapp->start_xapp_receiver(std::ref(*mp_handler)); - sleep(1); - + sleep(20);//waiting for some time before sending delete. + b_xapp->shutdown();//will start the sending delete procedure. while(1){ sleep(1); }