--- /dev/null
+/*\r
+==================================================================================\r
+ Copyright (c) 2018-2019 AT&T Intellectual Property.\r
+\r
+ Licensed under the Apache License, Version 2.0 (the "License");\r
+ you may not use this file except in compliance with the License.\r
+ You may obtain a copy of the License at\r
+\r
+ http://www.apache.org/licenses/LICENSE-2.0\r
+\r
+ Unless required by applicable law or agreed to in writing, software\r
+ distributed under the License is distributed on an "AS IS" BASIS,\r
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ See the License for the specific language governing permissions and\r
+ limitations under the License.\r
+==================================================================================\r
+*/\r
+\r
+#pragma once\r
+\r
+#ifndef S_RESPONSE_\r
+#define S_RESPONSE_\r
+\r
+#include <mdclog/mdclog.h>\r
+#include <vector>\r
+#include <iostream>\r
+#include <sstream>\r
+#include <response_helper.hpp>\r
+ \r
+#include <asn_application.h>\r
+#include <E2AP-PDU.h>\r
+#include<SuccessfulOutcome.h>\r
+#include<UnsuccessfulOutcome.h>\r
+#include <ProtocolIE-Field.h>\r
+#include <ProtocolIE-Single-Container.h>\r
+#include <ProcedureCode.h>\r
+\r
+#define NUM_SUBSCRIPTION_RESPONSE_IES 4\r
+#define NUM_SUBSCRIPTION_FAILURE_IES 3\r
+#define INITIAL_LIST_SIZE 4\r
+ \r
+class subscription_response{ \r
+public:\r
+ \r
+ subscription_response(void);\r
+ ~subscription_response(void);\r
+ \r
+ bool encode_e2ap_subscription_response(unsigned char *, size_t *, E2AP_PDU_t *, subscription_response_helper &, bool);\r
+ void set_fields(SuccessfulOutcome_t *, subscription_response_helper &);\r
+ void get_fields(SuccessfulOutcome_t *, subscription_response_helper &);\r
+ \r
+ void set_fields(UnsuccessfulOutcome_t *, subscription_response_helper &);\r
+ void get_fields(UnsuccessfulOutcome_t *, subscription_response_helper &);\r
+ \r
+ std::string get_error_string(void) const{\r
+ return error_string;\r
+ }\r
+ \r
+private:\r
+\r
+ E2AP_PDU_t * e2ap_pdu_obj;\r
+ SuccessfulOutcome_t * successMsg;\r
+ UnsuccessfulOutcome_t * unsuccessMsg;\r
+ \r
+\r
+ RICsubscriptionResponse_IEs_t *IE_array;\r
+ RICsubscriptionFailure_IEs_t *IE_Failure_array;\r
+ \r
+\r
+ RICaction_Admitted_ItemIEs_t * ie_admitted_list;\r
+ RICaction_NotAdmitted_ItemIEs_t * ie_not_admitted_list;\r
+ unsigned int ie_admitted_list_size, ie_not_admitted_list_size;\r
+ \r
+ char errbuf[128];\r
+ size_t errbuf_len = 128;\r
+ std::string error_string;\r
+};\r
+\r
+\r
+\r
+\r
+#endif\r