6 #ifndef SQUID__ADAPTATION__MESSAGE_H
7 #define SQUID__ADAPTATION__MESSAGE_H
13 typedef RefCount
<BodyPipe
> BodyPipePointer
;
18 // Manages the header and the body of an HTTP message being worked on.
19 // Adaptation transactions use this class for virgin and adapted HTTP messages.
20 // TODO: remove this class after adding refcounted message pointers and
21 // after making sure nobody abruptly clears the HttpMsg::body_pipe pointer.
26 typedef HttpMsg Header
;
29 Message(Header
*aHeader
);
33 void set(Header
*aHeader
);
35 static void ShortCircuit(Message
&src
, Message
&dest
);
38 // virgin or adapted message being worked on
39 Header
*header
; // parsed HTTP status/request line and headers
41 /// Copy of header->body_pipe, in case somebody moves the original.
42 /// \todo Find and fix the code that moves (if any) and remove this.
43 BodyPipePointer body_pipe
;
46 Message(const Message
&); // not implemented
47 Message
&operator =(const Message
&); // not implemented
50 } // namespace Adaptation;
52 // TODO: replace ICAPInOut with Adaptation::Message (adding one for "cause")
54 #endif /* SQUID__ADAPTATION__MESSAGE_H */