LibItsHttp_Templates.ttcn 2.39 KB
Newer Older
garciay's avatar
garciay committed
/**
 *    @author   ETSI / STF549
 *    @version  $URL$
 *              $ID:$
 *    @desc     This module provides the templates for 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 LibHttp_Templates {
    
    // LibHttp
    import from LibHttp_TypesAndValues all;
    
    template (value) HeaderLine m_header_line(
                                              in template (value) charstring p_header_name,
                                              in template (value) charstring_list p_header_value
    ) := {
      header_name := p_header_name,
      header_value  := p_header_value
    } // End of template m_header_line
    
    template (value) HttpMessage m_http_request(
                                                in template (value) Request p_request
    ) := {
      request := p_request
    } // End of template m_http_request
    
    template (present) HttpMessage mw_http_request(
                                                   template (present) Request p_request := ?
    ) := {
      request := p_request
    } // End of template mw_http_request
    
    template (value) HttpMessage m_http_response(
                                                 in template (value) Response p_response
    ) := {
      response := p_response
    } // End of template m_http_response
    
    template (present) HttpMessage mw_http_response(
                                                    template (present) Response p_response := ?
    ) := {
      response := p_response
    } // End of template mw_http_response
    
    template (omit) Request m_http_request_get(
                                               in charstring p_uri, 
                                               in template (value) HeaderLines p_headers,
                                               in template (omit) charstring p_body := omit
    ) := {
      method        := "GET",
      uri           := p_uri,
      version_major := c_http_version_major,
      version_minor := c_http_version_minor,
      header        := p_headers,
      body          := p_body
    } // End of template m_http_request_get
    
} // End of module LibHttp_Templates