/** * @author ETSI / STF545 * @version $URL$ * $ID:$ * @desc This module provides the types and values used by ITS HTTP based protocols. * @copyright ETSI Copyright Notification * No part may be reproduced except as authorized by written permission. * The copyright and the foregoing restriction extend to reproduction in all media. * All rights reserved. * @see ETSI TS 103 478 */ module LibItsHttp_TypesAndValues { // LibHttp import from LibItsHttp_MessageBodyTypes all; import from LibItsHttp_XmlMessageBodyTypes all; const charstring c_header_host := "Host"; const charstring c_header_content_type := "Content-type"; const charstring c_header_content_length := "Content-length"; const charstring c_header_accept := "Accept"; const charstring c_header_connection := "Connection"; const charstring c_header_pragma := "Pragma"; const charstring c_header_cache_control := "Cache-Control"; const integer c_http_version_major := 1; const integer c_http_version_minor := 1; type record of charstring charstring_list; type record HeaderLine { charstring header_name, charstring_list header_value optional } with { variant "FIELDORDER(msb)" } type record of HeaderLine HeaderLines; type record Request { charstring method, charstring uri, integer version_major, integer version_minor, HeaderLines header, HttpMessageBody body optional } with { variant "FIELDORDER(msb)" } type record Response { integer version_major, integer version_minor, integer statuscode, charstring statustext, HeaderLines header, HttpMessageBody body optional } with { variant "FIELDORDER(msb)" } type union HttpMessage { Response response, Request request } with { variant "" } } with { variant "" encode "HttpCodec" } // End of module LibItsHttp_TypesAndValues