HTTP Whole Message Filter Overview

Purpose

The HTTP Whole Message Filter APIs makes it easier for mobile browser developers to meet the needs of the mobile network operators who support specific Web Accelerators. This results in a faster and much improved Web browsing experience.

Required background

Users of this API must be familiar with the HTTP Transport Framework and the Web Acceleration protocol to be implemented.

Key concepts

The following are the key concepts that are associated with HTTP Whole Message Filter APIs:

HTTP Whole Message Filter APIs

Enables you to insert a filter into an HTTP session or an individual transaction when the complete message is formed and before the message is being dispatched. The APIs also operate on incoming HTTP responses before the actual parsing of the HTTP response happens. The use of the HTTP Whole Message Filter APIs enable you to achieve Web Acceleration on Symbian platform based mobile browser applications.

Web Acceleration

The process of optimising the HTTP data to enhance the speed at which data is transferred over the mobile network. Web Acceleration is achieved by the use of encoding and decoding mechanisms supported by the HTTP Whole Message Filter APIs. The HTTP Whole Message Filter APIs are included as part of the HTTP Protocol Handler in the HTTP Transport Framework.

Encoding mechanism

This mechanism converts the HTTP request data to a network optimisation protocol format before it is sent across the TCP connection.

Decoding mechanism

This mechanism converts the HTTP response data in the network optimisation protocol format back to the standard HTTP response data format.

API Summary

The following table lists the HTTP Whole Message Filter APIs that are included in the HTTP Transport Framework to enable Web Acceleration support on a Symbian platform based mobile browser application:

API

Description

MHTTPDataOptimiser

An interface that can be derived to implement custom encoding and decoding mechanisms.

Functions included in the MHTTPDataOptimiser interface

EncodeL(…)

Converts the HTTP request data to a network optimisation protocol format.

DecodeL(…)

Converts the HTTP response data in the network optimisation protocol format back to the standard HTTP response data format.

Functions included in the RHTTPSession class

RHTTPSession::SetupHTTPDataOptimiser (MHTTPDataOptimiser& aHTTPOmtimiser);

Sets the MHTTPDataOptimiser reference for the session object.

MHTTPDataOptimiser* RHTTPSession::HTTPDataOptimiser ();

Returns a pointer to the MHTTPDataOptimiser implementation object.

Functions included in the RHTTPTransaction class

RHTTPTransaction::SetupHTTPDataOptimiser (MHTTPDataOptimiser& aHTTPOmtimiser);

Sets the MHTTPDataOptimiser reference for the transaction object.

MHTTPDataOptimiser* RHTTPTransaction::HTTPDataOptimiser ();

Returns a pointer to the MHTTPDataOptimiser implementation object.