using System;
using System.Collections.Specialized;
using System.IO;
using System.Net;
using System.Text;
namespace WebDAVSharp.Server.Adapters
{
///
/// This is an interface-version of the parts of
/// that
/// the
/// requires to operator.
///
///
/// The main purpose of this interface is to facilitate unit-testing.
///
public interface IHttpListenerRequest : IAdapter
{
///
/// Gets the client IP address and port number from which the request originated.
///
///
/// The remote end point.
///
IPEndPoint RemoteEndPoint { get; }
///
/// Gets the object requested by the client.
///
///
/// The URL.
///
Uri Url { get; }
///
/// Gets the HTTP method specified by the client.
///
///
/// The HTTP method.
///
string HttpMethod { get; }
///
/// Gets the collection of header name/value pairs sent in the request.
///
///
/// The headers.
///
NameValueCollection Headers { get; }
///
/// Gets a that contains the body data sent by the client.
///
///
/// The input stream.
///
Stream InputStream { get; }
///
/// Gets the content that can be used with data sent with the request.
///
///
/// The content encoding.
///
Encoding ContentEncoding { get; }
///
/// Gets the length of the body data included in the request.
///
///
/// The content length64.
///
long ContentLength64 { get; }
}
}