Loading ccsrc/EncDec/LibEmtel/LibNg112_EncDec.cc 0 → 100644 +46 −0 Original line number Diff line number Diff line #include "LibNg112_EncdecDeclarations.hh" namespace LibNg112__EncdecDeclarations { BITSTRING enc__DequeueRegistrationRequest(const LibNg112__DequeueRegistration::DequeueRegistrationRequest& p) { return BITSTRING(); // TODO } INTEGER dec__DequeueRegistrationRequest(BITSTRING& pdu, LibNg112__DequeueRegistration::DequeueRegistrationRequest& p) { return 0; // TODO } BITSTRING enc__DequeueRegistrationResponse(const LibNg112__DequeueRegistration::DequeueRegistrationResponse& p) { return BITSTRING(); // TODO } INTEGER dec__DequeueRegistrationResponse(BITSTRING& pdu, LibNg112__DequeueRegistration::DequeueRegistrationResponse& p) { return 0; // TODO } BITSTRING enc__ServiceStatePayload(const LibNg112__SubscriptionPayloads::ServiceStatePayload& p) { return BITSTRING(); // TODO } INTEGER dec__ServiceStatePayload(BITSTRING& pdu, LibNg112__SubscriptionPayloads::ServiceStatePayload& p) { return 0; // TODO } BITSTRING enc__ElementStatePayload(const LibNg112__SubscriptionPayloads::ElementStatePayload& p) { return BITSTRING(); // TODO } INTEGER dec__ElementStatePayload(BITSTRING& pdu, LibNg112__SubscriptionPayloads::ElementStatePayload& p) { return 0; // TODO } BITSTRING enc__SecurityPosturePayload(const LibNg112__SubscriptionPayloads::SecurityPosturePayload& p) { return BITSTRING(); // TODO } INTEGER dec__SecurityPosturePayload(BITSTRING& pdu, LibNg112__SubscriptionPayloads::SecurityPosturePayload& p) { return 0; // TODO } } // End of namespace LibNg112__EncdecDeclarations ccsrc/EncDec/LibEmtel/module.mk 0 → 100644 +1 −0 Original line number Diff line number Diff line sources := LibNg112_EncDec.cc ccsrc/Ports/LibSip/SipPort.cc +2 −0 Original line number Diff line number Diff line Loading @@ -96,6 +96,8 @@ namespace LibSip__Interface { if (p_ind.requestLine().method() == LibSip__SIPTypesAndValues::Method::INVITE__E) { incoming_message(LibSip__SIPTypesAndValues::INVITE__Request(p_ind.requestLine(), p_ind.msgHeader(), p_ind.messageBody(), p_ind.payload())); } else if (p_ind.requestLine().method() == LibSip__SIPTypesAndValues::Method::SUBSCRIBE__E) { incoming_message(LibSip__SIPTypesAndValues::INVITE__Request(p_ind.requestLine(), p_ind.msgHeader(), p_ind.messageBody(), p_ind.payload())); } else if (p_ind.requestLine().method() == LibSip__SIPTypesAndValues::Method::NOTIFY__E) { incoming_message(LibSip__SIPTypesAndValues::NOTIFY__Request(p_ind.requestLine(), p_ind.msgHeader(), p_ind.messageBody(), p_ind.payload())); } else if (p_ind.requestLine().method() == LibSip__SIPTypesAndValues::Method::BYE__E) { Loading ccsrc/Protocols/Held/held_codec_factory.hh +1 −1 Original line number Diff line number Diff line /*! * \file held_codec_factory.hh * \brief Header file for ITS HELD/IP protocol codec factory. * \brief Header file for HELD/IP protocol codec factory. * \author ETSI STF525 * \copyright ETSI Copyright Notification * No part may be reproduced except as authorized by written permission. Loading ccsrc/Protocols/Http/http_codec.cc +39 −1 Original line number Diff line number Diff line Loading @@ -440,6 +440,27 @@ int http_codec::encode_body(const LibItsHttp__MessageBodyTypes::HttpMessageBody& p_encoding_buffer = OCTETSTRING(p_message_body.html__body().lengthof(), (unsigned char*)static_cast<const char*>(p_message_body.html__body())); } else if (p_message_body.ischosen(LibItsHttp__MessageBodyTypes::HttpMessageBody::ALT_text__body)) { p_encoding_buffer = OCTETSTRING(p_message_body.text__body().lengthof(), (unsigned char*)static_cast<const char*>(p_message_body.text__body())); } else if (p_message_body.ischosen(LibItsHttp__MessageBodyTypes::HttpMessageBody::ALT_json__body)) { const LibItsHttp__JsonMessageBodyTypes::JsonBody& json_body = p_message_body.json__body(); if (json_body.ischosen(LibItsHttp__JsonMessageBodyTypes::JsonBody::ALT_raw)) { p_encoding_buffer = OCTETSTRING(json_body.raw().lengthof(), (unsigned char*)static_cast<const char*>(json_body.raw().get_stringRepr_for_pattern())); } else { std::map<std::string, std::unique_ptr<codec<Record_Type, Record_Type> > >::const_iterator it; bool processed = false; loggers::get_instance().log("http_codec::encode_body: Content-Type:'%s'", p_content_type.c_str()); if (p_content_type.find("json") != std::string::npos) { it = _codecs.find("json"); // TODO Use params if (it != _codecs.cend()) { loggers::get_instance().log("http_codec::encode_body: Call 'json_codec'"); _codecs["json"]->encode((Record_Type&)json_body, p_encoding_buffer); // TODO Use params processed = true; } } // TODO Add new HTTP message codec here if (!processed) { loggers::get_instance().warning("http_codec::encode_body: Unsupported HTTP codec, use raw field as default"); p_encoding_buffer = OCTETSTRING(0, nullptr); } } } else if (p_message_body.ischosen(LibItsHttp__MessageBodyTypes::HttpMessageBody::ALT_xml__body)) { const LibItsHttp__XmlMessageBodyTypes::XmlBody& xml_body = p_message_body.xml__body(); if (xml_body.ischosen(LibItsHttp__XmlMessageBodyTypes::XmlBody::ALT_raw)) { Loading Loading @@ -663,6 +684,23 @@ int http_codec::decode_body(TTCN_Buffer& decoding_buffer, LibItsHttp__MessageBod loggers::get_instance().log("http_codec::decode_body: Find html message"); LibItsHttp__MessageBodyTypes::HtmlBody html_body; message_body.html__body() = CHARSTRING(body.lengthof(), (char*)static_cast<const unsigned char*>(body)); } else if (p_content_type.find("json") != std::string::npos) { loggers::get_instance().log("http_codec::decode_body: Find json message"); LibItsHttp__JsonMessageBodyTypes::JsonBody json_body; if (_codecs["json"].get() != nullptr) { loggers::get_instance().log("http_codec::decode_body: Call 'json_codec'"); if (_codecs["json"]->decode(body, (Record_Type&)json_body, &p) == -1) { loggers::get_instance().warning("http_codec::decode_body: Failed to decode JSON message"); json_body.raw() = CHARSTRING(body.lengthof(), (char*)static_cast<const unsigned char*>(body)); } else { loggers::get_instance().log_msg("http_codec::decode_body: Decoded message:", json_body); message_body.json__body() = json_body; } } else { loggers::get_instance().warning("http_codec::decode_body: No codec for JSON"); json_body.raw() = CHARSTRING(body.lengthof(), (char*)static_cast<const unsigned char*>(body)); } message_body.json__body() = json_body; } else { loggers::get_instance().log("http_codec::decode_body: Use textBdy as default"); LibItsHttp__MessageBodyTypes::TextBody text_body; Loading Loading
ccsrc/EncDec/LibEmtel/LibNg112_EncDec.cc 0 → 100644 +46 −0 Original line number Diff line number Diff line #include "LibNg112_EncdecDeclarations.hh" namespace LibNg112__EncdecDeclarations { BITSTRING enc__DequeueRegistrationRequest(const LibNg112__DequeueRegistration::DequeueRegistrationRequest& p) { return BITSTRING(); // TODO } INTEGER dec__DequeueRegistrationRequest(BITSTRING& pdu, LibNg112__DequeueRegistration::DequeueRegistrationRequest& p) { return 0; // TODO } BITSTRING enc__DequeueRegistrationResponse(const LibNg112__DequeueRegistration::DequeueRegistrationResponse& p) { return BITSTRING(); // TODO } INTEGER dec__DequeueRegistrationResponse(BITSTRING& pdu, LibNg112__DequeueRegistration::DequeueRegistrationResponse& p) { return 0; // TODO } BITSTRING enc__ServiceStatePayload(const LibNg112__SubscriptionPayloads::ServiceStatePayload& p) { return BITSTRING(); // TODO } INTEGER dec__ServiceStatePayload(BITSTRING& pdu, LibNg112__SubscriptionPayloads::ServiceStatePayload& p) { return 0; // TODO } BITSTRING enc__ElementStatePayload(const LibNg112__SubscriptionPayloads::ElementStatePayload& p) { return BITSTRING(); // TODO } INTEGER dec__ElementStatePayload(BITSTRING& pdu, LibNg112__SubscriptionPayloads::ElementStatePayload& p) { return 0; // TODO } BITSTRING enc__SecurityPosturePayload(const LibNg112__SubscriptionPayloads::SecurityPosturePayload& p) { return BITSTRING(); // TODO } INTEGER dec__SecurityPosturePayload(BITSTRING& pdu, LibNg112__SubscriptionPayloads::SecurityPosturePayload& p) { return 0; // TODO } } // End of namespace LibNg112__EncdecDeclarations
ccsrc/EncDec/LibEmtel/module.mk 0 → 100644 +1 −0 Original line number Diff line number Diff line sources := LibNg112_EncDec.cc
ccsrc/Ports/LibSip/SipPort.cc +2 −0 Original line number Diff line number Diff line Loading @@ -96,6 +96,8 @@ namespace LibSip__Interface { if (p_ind.requestLine().method() == LibSip__SIPTypesAndValues::Method::INVITE__E) { incoming_message(LibSip__SIPTypesAndValues::INVITE__Request(p_ind.requestLine(), p_ind.msgHeader(), p_ind.messageBody(), p_ind.payload())); } else if (p_ind.requestLine().method() == LibSip__SIPTypesAndValues::Method::SUBSCRIBE__E) { incoming_message(LibSip__SIPTypesAndValues::INVITE__Request(p_ind.requestLine(), p_ind.msgHeader(), p_ind.messageBody(), p_ind.payload())); } else if (p_ind.requestLine().method() == LibSip__SIPTypesAndValues::Method::NOTIFY__E) { incoming_message(LibSip__SIPTypesAndValues::NOTIFY__Request(p_ind.requestLine(), p_ind.msgHeader(), p_ind.messageBody(), p_ind.payload())); } else if (p_ind.requestLine().method() == LibSip__SIPTypesAndValues::Method::BYE__E) { Loading
ccsrc/Protocols/Held/held_codec_factory.hh +1 −1 Original line number Diff line number Diff line /*! * \file held_codec_factory.hh * \brief Header file for ITS HELD/IP protocol codec factory. * \brief Header file for HELD/IP protocol codec factory. * \author ETSI STF525 * \copyright ETSI Copyright Notification * No part may be reproduced except as authorized by written permission. Loading
ccsrc/Protocols/Http/http_codec.cc +39 −1 Original line number Diff line number Diff line Loading @@ -440,6 +440,27 @@ int http_codec::encode_body(const LibItsHttp__MessageBodyTypes::HttpMessageBody& p_encoding_buffer = OCTETSTRING(p_message_body.html__body().lengthof(), (unsigned char*)static_cast<const char*>(p_message_body.html__body())); } else if (p_message_body.ischosen(LibItsHttp__MessageBodyTypes::HttpMessageBody::ALT_text__body)) { p_encoding_buffer = OCTETSTRING(p_message_body.text__body().lengthof(), (unsigned char*)static_cast<const char*>(p_message_body.text__body())); } else if (p_message_body.ischosen(LibItsHttp__MessageBodyTypes::HttpMessageBody::ALT_json__body)) { const LibItsHttp__JsonMessageBodyTypes::JsonBody& json_body = p_message_body.json__body(); if (json_body.ischosen(LibItsHttp__JsonMessageBodyTypes::JsonBody::ALT_raw)) { p_encoding_buffer = OCTETSTRING(json_body.raw().lengthof(), (unsigned char*)static_cast<const char*>(json_body.raw().get_stringRepr_for_pattern())); } else { std::map<std::string, std::unique_ptr<codec<Record_Type, Record_Type> > >::const_iterator it; bool processed = false; loggers::get_instance().log("http_codec::encode_body: Content-Type:'%s'", p_content_type.c_str()); if (p_content_type.find("json") != std::string::npos) { it = _codecs.find("json"); // TODO Use params if (it != _codecs.cend()) { loggers::get_instance().log("http_codec::encode_body: Call 'json_codec'"); _codecs["json"]->encode((Record_Type&)json_body, p_encoding_buffer); // TODO Use params processed = true; } } // TODO Add new HTTP message codec here if (!processed) { loggers::get_instance().warning("http_codec::encode_body: Unsupported HTTP codec, use raw field as default"); p_encoding_buffer = OCTETSTRING(0, nullptr); } } } else if (p_message_body.ischosen(LibItsHttp__MessageBodyTypes::HttpMessageBody::ALT_xml__body)) { const LibItsHttp__XmlMessageBodyTypes::XmlBody& xml_body = p_message_body.xml__body(); if (xml_body.ischosen(LibItsHttp__XmlMessageBodyTypes::XmlBody::ALT_raw)) { Loading Loading @@ -663,6 +684,23 @@ int http_codec::decode_body(TTCN_Buffer& decoding_buffer, LibItsHttp__MessageBod loggers::get_instance().log("http_codec::decode_body: Find html message"); LibItsHttp__MessageBodyTypes::HtmlBody html_body; message_body.html__body() = CHARSTRING(body.lengthof(), (char*)static_cast<const unsigned char*>(body)); } else if (p_content_type.find("json") != std::string::npos) { loggers::get_instance().log("http_codec::decode_body: Find json message"); LibItsHttp__JsonMessageBodyTypes::JsonBody json_body; if (_codecs["json"].get() != nullptr) { loggers::get_instance().log("http_codec::decode_body: Call 'json_codec'"); if (_codecs["json"]->decode(body, (Record_Type&)json_body, &p) == -1) { loggers::get_instance().warning("http_codec::decode_body: Failed to decode JSON message"); json_body.raw() = CHARSTRING(body.lengthof(), (char*)static_cast<const unsigned char*>(body)); } else { loggers::get_instance().log_msg("http_codec::decode_body: Decoded message:", json_body); message_body.json__body() = json_body; } } else { loggers::get_instance().warning("http_codec::decode_body: No codec for JSON"); json_body.raw() = CHARSTRING(body.lengthof(), (char*)static_cast<const unsigned char*>(body)); } message_body.json__body() = json_body; } else { loggers::get_instance().log("http_codec::decode_body: Use textBdy as default"); LibItsHttp__MessageBodyTypes::TextBody text_body; Loading