The header is manipulated through a DocumentInfo object and the body is manipulated through MegInputStream and MegOutputStream objects. Processing Model WBI is a programmable HTTP request and response processor. It receives an HTTP request from a client, such as a web browser, and produces an HTTP response that is returned to the client. Figure 3 shows the flow through a typical WBI transaction. RequestEditors receive a request and have the freedom to modify the request before passing it along.
Editors receive a response and have the freedom to modify the response before passing it along.
When all the steps are completed, the response is sent to the originating client. A fourth type of element, the Monitor , can be designated to receive a copy of the request and response but cannot otherwise modify the data flow. The Monitor, Editor, Request Editor and Generator modules are collectively referred to as MEGs . WBI dynamically constructs a data path through the various MEGs for each transaction. The rule specifies a boolean condition that indicates whether the MEG should be involved in a transaction.