2 // SoapWebResponse.cs: Soap Web Response List
5 // Sebastien Pouliot (spouliot@motus.com)
7 // (C) 2003 Motus Technologies Inc. (http://www.motus.com)
10 using Microsoft
.Web
.Services
;
15 namespace Microsoft
.Web
.Services
{
17 public class SoapWebResponse
: WebResponse
{
19 private SoapWebRequest request
;
20 private MemoryStream ms
;
21 private WebResponse response
;
23 internal SoapWebResponse (SoapWebRequest soapRequest
)
25 request
= soapRequest
;
26 response
= soapRequest
.Request
.GetResponse ();
29 public override Stream
GetResponseStream ()
31 SoapEnvelope envelope
= new SoapEnvelope ();
32 Stream s
= response
.GetResponseStream ();
34 request
.Pipeline
.ProcessInputMessage (envelope
);
36 ms
= new MemoryStream ();
38 ms
.Position
= 0; // ready to be read
42 public override long ContentLength
{
43 get { return ((ms == null) ? 0 : ms.Length); }
46 public override string ContentType
{
47 get { return request.Request.ContentType; }
50 public override WebHeaderCollection Headers
{
51 get { return response.Headers; }
54 public SoapContext SoapContext
{
55 get { return request.SoapContext; }