5454 lines
		
	
	
		
			275 KiB
		
	
	
	
		
			XML
		
	
	
			
		
		
	
	
			5454 lines
		
	
	
		
			275 KiB
		
	
	
	
		
			XML
		
	
	
| <?xml version="1.0"?>
 | |
| <doc>
 | |
|     <assembly>
 | |
|         <name>HttpServer_OpenSim</name>
 | |
|     </assembly>
 | |
|     <members>
 | |
|         <member name="T:HttpServer.Sessions.IHttpSessionStore">
 | |
|             <summary>
 | |
|             A session store is used to store and load sessions on a media.
 | |
|             The default implementation (<see cref="T:HttpServer.Sessions.MemorySessionStore"/>) saves/retrieves sessions from memory.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.IHttpSessionStore.Create">
 | |
|             <summary>
 | |
|             Creates a new http session with a generated id.
 | |
|             </summary>
 | |
|             <returns>A <see cref="T:HttpServer.Sessions.IHttpSession"/> object</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.IHttpSessionStore.Create(System.String)">
 | |
|             <summary>
 | |
|             Creates a new http session with a specific id
 | |
|             </summary>
 | |
|             <param name="id">Id used to identify the new cookie..</param>
 | |
|             <returns>A <see cref="T:HttpServer.Sessions.IHttpSession"/> object.</returns>
 | |
|             <remarks>
 | |
|             Id should be generated by the store implementation if it's null or <see cref="F:System.String.Empty"/>.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.IHttpSessionStore.Load(System.String)">
 | |
|             <summary>
 | |
|             Load an existing session.
 | |
|             </summary>
 | |
|             <param name="sessionId">Session id (usually retrieved from a client side cookie).</param>
 | |
|             <returns>A session if found; otherwise null.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.IHttpSessionStore.Save(HttpServer.Sessions.IHttpSession)">
 | |
|             <summary>
 | |
|             Save an updated session to the store.
 | |
|             </summary>
 | |
|             <param name="session">Session id (usually retrieved from a client side cookie).</param>
 | |
|             <exception cref="T:System.ArgumentException">If Id property have not been specified.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.IHttpSessionStore.AddUnused(HttpServer.Sessions.IHttpSession)">
 | |
|             <summary>
 | |
|             We use the flyweight pattern which reuses small objects
 | |
|             instead of creating new each time.
 | |
|             </summary>
 | |
|             <param name="session">Unused session that should be reused next time Create is called.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.IHttpSessionStore.Cleanup">
 | |
|             <summary>
 | |
|             Remove expired sessions
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.IHttpSessionStore.Remove(System.String)">
 | |
|             <summary>
 | |
|             Remove a session
 | |
|             </summary>
 | |
|             <param name="sessionId">id of the session.</param>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Sessions.IHttpSessionStore.Item(System.String)">
 | |
|             <summary>
 | |
|             Load a session from the store
 | |
|             </summary>
 | |
|             <param name="sessionId"></param>
 | |
|             <returns>null if session is not found.</returns>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Sessions.IHttpSessionStore.ExpireTime">
 | |
|             <summary>
 | |
|             Number of minutes before a session expires.
 | |
|             </summary>
 | |
|             <value>Default time is 20 minutes.</value>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.IHttpRequest">
 | |
|             <summary>
 | |
|             Contains server side HTTP request information.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpRequest.AddHeader(System.String,System.String)">
 | |
|             <summary>
 | |
|             Called during parsing of a <see cref="T:HttpServer.IHttpRequest"/>.
 | |
|             </summary>
 | |
|             <param name="name">Name of the header, should not be URL encoded</param>
 | |
|             <param name="value">Value of the header, should not be URL encoded</param>
 | |
|             <exception cref="T:HttpServer.Exceptions.BadRequestException">If a header is incorrect.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpRequest.AddToBody(System.Byte[],System.Int32,System.Int32)">
 | |
|             <summary>
 | |
|             Add bytes to the body
 | |
|             </summary>
 | |
|             <param name="bytes">buffer to read bytes from</param>
 | |
|             <param name="offset">where to start read</param>
 | |
|             <param name="length">number of bytes to read</param>
 | |
|             <returns>Number of bytes actually read (same as length unless we got all body bytes).</returns>
 | |
|             <exception cref="T:System.InvalidOperationException">If body is not writable</exception>
 | |
|             <exception cref="T:System.ArgumentNullException"><c>bytes</c> is null.</exception>
 | |
|             <exception cref="T:System.ArgumentOutOfRangeException"><c>offset</c> is out of range.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpRequest.Clear">
 | |
|             <summary>
 | |
|             Clear everything in the request
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpRequest.DecodeBody(HttpServer.FormDecoders.FormDecoderProvider)">
 | |
|             <summary>
 | |
|             Decode body into a form.
 | |
|             </summary>
 | |
|             <param name="providers">A list with form decoders.</param>
 | |
|             <exception cref="T:System.IO.InvalidDataException">If body contents is not valid for the chosen decoder.</exception>
 | |
|             <exception cref="T:System.InvalidOperationException">If body is still being transferred.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpRequest.SetCookies(HttpServer.RequestCookies)">
 | |
|             <summary>
 | |
|             Sets the cookies.
 | |
|             </summary>
 | |
|             <param name="cookies">The cookies.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpRequest.CreateResponse(HttpServer.IHttpClientContext)">
 | |
|             <summary>
 | |
|             Create a response object.
 | |
|             </summary>
 | |
|             <param name="context">Context for the connected client.</param>
 | |
|             <returns>A new <see cref="T:HttpServer.IHttpResponse"/>.</returns>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.AcceptTypes">
 | |
|             <summary>
 | |
|             Gets kind of types accepted by the client.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.Body">
 | |
|             <summary>
 | |
|             Gets or sets body stream.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.BodyIsComplete">
 | |
|             <summary>
 | |
|             Gets whether the body is complete.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.Connection">
 | |
|             <summary>
 | |
|             Gets or sets kind of connection used for the session.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.ContentLength">
 | |
|             <summary>
 | |
|             Gets or sets number of bytes in the body.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.Cookies">
 | |
|             <summary>
 | |
|             Gets cookies that was sent with the request.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.Form">
 | |
|             <summary>
 | |
|             Gets form parameters.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.Headers">
 | |
|             <summary>
 | |
|             Gets headers sent by the client.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.HttpVersion">
 | |
|             <summary>
 | |
|             Gets or sets version of HTTP protocol that's used. 
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Probably <see cref="F:HttpServer.HttpHelper.HTTP10"/> or <see cref="F:HttpServer.HttpHelper.HTTP11"/>.
 | |
|             </remarks>
 | |
|             <seealso cref="T:HttpServer.HttpHelper"/>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.IsAjax">
 | |
|             <summary>
 | |
|             Gets whether the request was made by Ajax (Asynchronous JavaScript)
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.Method">
 | |
|             <summary>
 | |
|             Gets or sets requested method.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Will always be in upper case.
 | |
|             </remarks>
 | |
|             <see cref="P:HttpServer.IHttpRequest.Method"/>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.Param">
 | |
|             <summary>
 | |
|             Gets parameter from <see cref="P:HttpServer.IHttpRequest.QueryString"/> or <see cref="P:HttpServer.IHttpRequest.Form"/>.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.QueryString">
 | |
|             <summary>
 | |
|             Gets variables sent in the query string
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.Uri">
 | |
|             <summary>
 | |
|             Gets or sets requested URI.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.UriParts">
 | |
|             <summary>
 | |
|             Gets URI absolute path divided into parts.
 | |
|             </summary>
 | |
|             <example>
 | |
|             // URI is: http://gauffin.com/code/tiny/
 | |
|             Console.WriteLine(request.UriParts[0]); // result: code
 | |
|             Console.WriteLine(request.UriParts[1]); // result: tiny
 | |
|             </example>
 | |
|             <remarks>
 | |
|             If you're using controllers than the first part is controller name,
 | |
|             the second part is method name and the third part is Id property.
 | |
|             </remarks>
 | |
|             <seealso cref="P:HttpServer.IHttpRequest.Uri"/>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequest.UriPath">
 | |
|             <summary>
 | |
|             Gets or sets path and query.
 | |
|             </summary>
 | |
|             <see cref="P:HttpServer.IHttpRequest.Uri"/>
 | |
|             <remarks>
 | |
|             Are only used during request parsing. Cannot be set after "Host" header have been
 | |
|             added.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.IHttpContextHandler">
 | |
|             <summary>
 | |
|             Class that receives Requests from a <see cref="T:HttpServer.IHttpClientContext"/>.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpContextHandler.ClientDisconnected(HttpServer.IHttpClientContext,System.Net.Sockets.SocketError)">
 | |
|             <summary>
 | |
|             Client have been disconnected.
 | |
|             </summary>
 | |
|             <param name="client">Client that was disconnected.</param>
 | |
|             <param name="error">Reason</param>
 | |
|             <see cref="T:HttpServer.IHttpClientContext"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpContextHandler.RequestReceived(HttpServer.IHttpClientContext,HttpServer.IHttpRequest)">
 | |
|             <summary>
 | |
|             Invoked when a client context have received a new HTTP request
 | |
|             </summary>
 | |
|             <param name="client">Client that received the request.</param>
 | |
|             <param name="request">Request that was received.</param>
 | |
|             <see cref="T:HttpServer.IHttpClientContext"/>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Helpers.GetIdTitle">
 | |
|             <summary>
 | |
|             Delegate used by <see cref="M:HttpServer.Helpers.FormHelper.Select(System.String,System.Collections.IEnumerable,HttpServer.Helpers.GetIdTitle,System.Object,System.Boolean)"/> to populate select options.
 | |
|             </summary>
 | |
|             <param name="obj">current object (for instance a User).</param>
 | |
|             <param name="id">Text that should be displayed in the value part of a <optiongt;-tag.</param>
 | |
|             <param name="title">Text shown in the select list.</param>
 | |
|             <example>
 | |
|             // Class that is going to be used in a SELECT-tag.
 | |
|             public class User
 | |
|             {
 | |
|                 private readonly string _realName;
 | |
|                 private readonly int _id;
 | |
|                 public User(int id, string realName)
 | |
|                 {
 | |
|                     _id = id;
 | |
|                     _realName = realName;
 | |
|                 }
 | |
|                 public string RealName
 | |
|                 {
 | |
|                     get { return _realName; }
 | |
|                 }
 | |
|             
 | |
|                 public int Id
 | |
|                 {
 | |
|                     get { return _id; }
 | |
|                 }
 | |
|             }
 | |
|             
 | |
|             // Using an inline delegate to generate the select list
 | |
|             public void UserInlineDelegate()
 | |
|             {
 | |
|                 List<User> items = new List<User>();
 | |
|                 items.Add(new User(1, "adam"));
 | |
|                 items.Add(new User(2, "bertial"));
 | |
|                 items.Add(new User(3, "david"));
 | |
|                 string htmlSelect = Select("users", "users", items, delegate(object o, out object id, out object value)
 | |
|                                                                     {
 | |
|                                                                         User user = (User)o;
 | |
|                                                                         id = user.Id;
 | |
|                                                                         value = user.RealName;
 | |
|                                                                     }, 2, true);
 | |
|             }
 | |
|             
 | |
|             // Using an method as delegate to generate the select list.
 | |
|             public void UseExternalDelegate()
 | |
|             {
 | |
|                 List<User> items = new List<User>();
 | |
|                 items.Add(new User(1, "adam"));
 | |
|                 items.Add(new User(2, "bertial"));
 | |
|                 items.Add(new User(3, "david"));
 | |
|                 string htmlSelect = Select("users", "users", items, UserOptions, 1, true);
 | |
|             }
 | |
|             
 | |
|             // delegate returning id and title
 | |
|             public static void UserOptions(object o, out object id, out object title)
 | |
|             {
 | |
|                 User user = (User)o;
 | |
|                 id = user.Id;
 | |
|                 value = user.RealName;
 | |
|             }    /// </example>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Exceptions.ForbiddenException">
 | |
|             <summary>
 | |
|             The server understood the request, but is refusing to fulfill it. 
 | |
|             Authorization will not help and the request SHOULD NOT be repeated. 
 | |
|             If the request method was not HEAD and the server wishes to make public why the request has not been fulfilled, 
 | |
|             it SHOULD describe the reason for the refusal in the entity. If the server does not wish to make this information 
 | |
|             available to the client, the status code 404 (Not Found) can be used instead.
 | |
|             
 | |
|             Text taken from: http://www.submissionchamber.com/help-guides/error-codes.php
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Exceptions.HttpException">
 | |
|             <summary>
 | |
|             All HTTP based exceptions will derive this class.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Exceptions.HttpException.#ctor(System.Net.HttpStatusCode,System.String)">
 | |
|             <summary>
 | |
|             Create a new HttpException
 | |
|             </summary>
 | |
|             <param name="code">http status code (sent in the response)</param>
 | |
|             <param name="message">error description</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Exceptions.HttpException.#ctor(System.Net.HttpStatusCode,System.String,System.Exception)">
 | |
|             <summary>
 | |
|             Create a new HttpException
 | |
|             </summary>
 | |
|             <param name="code">http status code (sent in the response)</param>
 | |
|             <param name="message">error description</param>
 | |
|             <param name="inner">inner exception</param>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Exceptions.HttpException.HttpStatusCode">
 | |
|             <summary>
 | |
|             status code to use in the response.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Exceptions.ForbiddenException.#ctor(System.String)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Exceptions.ForbiddenException"/> class.
 | |
|             </summary>
 | |
|             <param name="errorMsg">error message</param>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Sessions.MemorySession">
 | |
|             <summary>
 | |
|             A session stored in memory.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Sessions.IHttpSession">
 | |
|             <summary>
 | |
|             Interface for sessions
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.IHttpSession.Clear">
 | |
|             <summary>
 | |
|             Remove everything from the session
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.IHttpSession.Clear(System.Boolean)">
 | |
|             <summary>
 | |
|             Remove everything from the session
 | |
|             </summary>
 | |
|             <param name="expires">True if the session is cleared due to expiration</param>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Sessions.IHttpSession.Id">
 | |
|             <summary>
 | |
|             Session id
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Sessions.IHttpSession.Item(System.String)">
 | |
|             <summary>
 | |
|             Should 
 | |
|             </summary>
 | |
|             <param name="name">Name of the session variable</param>
 | |
|             <returns>null if it's not set</returns>
 | |
|             <exception cref="T:System.Runtime.Serialization.SerializationException">If the object cant be serialized.</exception>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Sessions.IHttpSession.Accessed">
 | |
|             <summary>
 | |
|             When the session was last accessed.
 | |
|             This property is touched by the http server each time the
 | |
|             session is requested.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Sessions.IHttpSession.Count">
 | |
|             <summary>
 | |
|             Number of session variables.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.Sessions.IHttpSession.BeforeClear">
 | |
|             <summary>
 | |
|             Event triggered upon clearing the session
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.MemorySession.#ctor(System.String)">
 | |
|             <summary>
 | |
|             
 | |
|             </summary>
 | |
|             <param name="id">A unique id used by the sessions store to identify the session</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.MemorySession.SetId(System.String)">
 | |
|             <summary>
 | |
|             Id
 | |
|             </summary>
 | |
|             <param name="id"></param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.MemorySession.Clear">
 | |
|             <summary>
 | |
|             Remove everything from the session
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.MemorySession.Clear(System.Boolean)">
 | |
|             <summary>
 | |
|             Clears the specified expire.
 | |
|             </summary>
 | |
|             <param name="expires">True if the session is cleared due to expiration</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.MemorySession.Dispose">
 | |
|             <summary>
 | |
|             Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
 | |
|             </summary>
 | |
|             <filterpriority>2</filterpriority>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Sessions.MemorySession.Id">
 | |
|             <summary>
 | |
|             Session id
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Sessions.MemorySession.Item(System.String)">
 | |
|             <summary>
 | |
|             Should 
 | |
|             </summary>
 | |
|             <param name="name">Name of the session variable</param>
 | |
|             <returns>null if it's not set</returns>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Sessions.MemorySession.Accessed">
 | |
|             <summary>
 | |
|             when the session was last accessed.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Used to determine when the session should be removed.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Sessions.MemorySession.Count">
 | |
|             <summary>
 | |
|             Number of values in the session
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Sessions.MemorySession.Changed">
 | |
|             <summary>
 | |
|             Flag to indicate that the session have been changed
 | |
|             and should be saved into the session store.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.Sessions.MemorySession.BeforeClear">
 | |
|             <summary>
 | |
|             Event triggered upon clearing the session
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.ResponseCookie">
 | |
|             <summary>
 | |
|             cookie being sent back to the browser.
 | |
|             </summary>
 | |
|             <seealso cref="T:HttpServer.ResponseCookie"/>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.RequestCookie">
 | |
|             <summary>
 | |
|             cookie sent by the client/browser
 | |
|             </summary>
 | |
|             <seealso cref="T:HttpServer.ResponseCookie"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.RequestCookie.#ctor(System.String,System.String)">
 | |
|             <summary>
 | |
|             Constructor.
 | |
|             </summary>
 | |
|             <param name="id">cookie identifier</param>
 | |
|             <param name="content">cookie content</param>
 | |
|             <exception cref="T:System.ArgumentNullException">id or content is null</exception>
 | |
|             <exception cref="T:System.ArgumentException">id is empty</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.RequestCookie.ToString">
 | |
|             <summary>
 | |
|             Gets the cookie HTML representation.
 | |
|             </summary>
 | |
|             <returns>cookie string</returns>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.RequestCookie.Name">
 | |
|             <summary>
 | |
|             Gets the cookie identifier.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.RequestCookie.Value">
 | |
|             <summary>
 | |
|             Cookie value. Set to null to remove cookie.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ResponseCookie.#ctor(System.String,System.String,System.DateTime)">
 | |
|             <summary>
 | |
|             Constructor.
 | |
|             </summary>
 | |
|             <param name="id">cookie identifier</param>
 | |
|             <param name="content">cookie content</param>
 | |
|             <param name="expiresAt">cookie expiration date. Use DateTime.MinValue for session cookie.</param>
 | |
|             <exception cref="T:System.ArgumentNullException">id or content is null</exception>
 | |
|             <exception cref="T:System.ArgumentException">id is empty</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ResponseCookie.#ctor(System.String,System.String,System.DateTime,System.String,System.String)">
 | |
|             <summary>
 | |
|             Create a new cookie
 | |
|             </summary>
 | |
|             <param name="name">name identifying the cookie</param>
 | |
|             <param name="value">cookie value</param>
 | |
|             <param name="expires">when the cookie expires. Setting DateTime.MinValue will delete the cookie when the session is closed.</param>
 | |
|             <param name="path">Path to where the cookie is valid</param>
 | |
|             <param name="domain">Domain that the cookie is valid for.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ResponseCookie.#ctor(HttpServer.RequestCookie,System.DateTime)">
 | |
|             <summary>
 | |
|             Create a new cookie
 | |
|             </summary>
 | |
|             <param name="cookie">Name and value will be used</param>
 | |
|             <param name="expires">when the cookie expires.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ResponseCookie.ToString">
 | |
|             <summary>
 | |
|             Gets the cookie HTML representation.
 | |
|             </summary>
 | |
|             <returns>cookie string</returns>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.ResponseCookie.Expires">
 | |
|             <summary>
 | |
|             When the cookie expires.
 | |
|             DateTime.MinValue means that the cookie expires when the session do so.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.ResponseCookie.Path">
 | |
|             <summary>
 | |
|             Cookie is only valid under this path.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.IHttpClientContext">
 | |
|             <summary>
 | |
|             Contains a connection to a browser/client.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpClientContext.Disconnect(System.Net.Sockets.SocketError)">
 | |
|             <summary>
 | |
|             Disconnect from client
 | |
|             </summary>
 | |
|             <param name="error">error to report in the <see cref="E:HttpServer.IHttpClientContext.Disconnected"/> event.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpClientContext.Respond(System.String,System.Net.HttpStatusCode,System.String,System.String,System.String)">
 | |
|             <summary>
 | |
|             Send a response.
 | |
|             </summary>
 | |
|             <param name="httpVersion">Either <see cref="F:HttpServer.HttpHelper.HTTP10"/> or <see cref="F:HttpServer.HttpHelper.HTTP11"/></param>
 | |
|             <param name="statusCode">HTTP status code</param>
 | |
|             <param name="reason">reason for the status code.</param>
 | |
|             <param name="body">HTML body contents, can be null or empty.</param>
 | |
|             <param name="contentType">A content type to return the body as, i.e. 'text/html' or 'text/plain', defaults to 'text/html' if null or empty</param>
 | |
|             <exception cref="T:System.ArgumentException">If <paramref name="httpVersion"/> is invalid.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpClientContext.Respond(System.String,System.Net.HttpStatusCode,System.String)">
 | |
|             <summary>
 | |
|             Send a response.
 | |
|             </summary>
 | |
|             <param name="httpVersion">Either <see cref="F:HttpServer.HttpHelper.HTTP10"/> or <see cref="F:HttpServer.HttpHelper.HTTP11"/></param>
 | |
|             <param name="statusCode">HTTP status code</param>
 | |
|             <param name="reason">reason for the status code.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpClientContext.Respond(System.String)">
 | |
|             <summary>
 | |
|             Send a response.
 | |
|             </summary>
 | |
|             <exception cref="T:System.ArgumentNullException"></exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpClientContext.Send(System.Byte[])">
 | |
|             <summary>
 | |
|             send a whole buffer
 | |
|             </summary>
 | |
|             <param name="buffer">buffer to send</param>
 | |
|             <exception cref="T:System.ArgumentNullException"></exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpClientContext.Send(System.Byte[],System.Int32,System.Int32)">
 | |
|             <summary>
 | |
|             Send data using the stream
 | |
|             </summary>
 | |
|             <param name="buffer">Contains data to send</param>
 | |
|             <param name="offset">Start position in buffer</param>
 | |
|             <param name="size">number of bytes to send</param>
 | |
|             <exception cref="T:System.ArgumentNullException"></exception>
 | |
|             <exception cref="T:System.ArgumentOutOfRangeException"></exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpClientContext.Close">
 | |
|             <summary>
 | |
|             Closes the streams and disposes of the unmanaged resources
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpClientContext.Secured">
 | |
|             <summary>
 | |
|             Using SSL or other encryption method.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpClientContext.IsSecured">
 | |
|             <summary>
 | |
|             Using SSL or other encryption method.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.IHttpClientContext.Disconnected">
 | |
|             <summary>
 | |
|             The context have been disconnected.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Event can be used to clean up a context, or to reuse it.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.IHttpClientContext.RequestReceived">
 | |
|             <summary>
 | |
|             A request have been received in the context.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.DisconnectedEventArgs">
 | |
|             <summary>
 | |
|             A <see cref="T:HttpServer.IHttpClientContext"/> have been disconnected.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.DisconnectedEventArgs.#ctor(System.Net.Sockets.SocketError)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.DisconnectedEventArgs"/> class.
 | |
|             </summary>
 | |
|             <param name="error">Reason to disconnection.</param>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.DisconnectedEventArgs.Error">
 | |
|             <summary>
 | |
|             Gets reason to why client disconnected.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.RequestEventArgs">
 | |
|             <summary>
 | |
|             
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.RequestEventArgs.#ctor(HttpServer.IHttpRequest)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.RequestEventArgs"/> class.
 | |
|             </summary>
 | |
|             <param name="request">The request.</param>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.RequestEventArgs.Request">
 | |
|             <summary>
 | |
|             Gets received request.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpListenerBase">
 | |
|             <summary>
 | |
|             Contains a listener that doesn't do anything with the connections.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpListenerBase.#ctor(System.Net.IPAddress,System.Int32,HttpServer.IHttpContextFactory)">
 | |
|             <summary>
 | |
|             Listen for regular HTTP connections
 | |
|             </summary>
 | |
|             <param name="address">IP Address to accept connections on</param>
 | |
|             <param name="port">TCP Port to listen on, default HTTP port is 80.</param>
 | |
|             <param name="factory">Factory used to create <see cref="T:HttpServer.IHttpClientContext"/>es.</param>
 | |
|             <exception cref="T:System.ArgumentNullException"><c>address</c> is null.</exception>
 | |
|             <exception cref="T:System.ArgumentException">Port must be a positive number.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpListenerBase.#ctor(System.Net.IPAddress,System.Int32,HttpServer.IHttpContextFactory,System.Security.Cryptography.X509Certificates.X509Certificate)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpListenerBase"/> class.
 | |
|             </summary>
 | |
|             <param name="address">IP Address to accept connections on</param>
 | |
|             <param name="port">TCP Port to listen on, default HTTPS port is 443</param>
 | |
|             <param name="factory">Factory used to create <see cref="T:HttpServer.IHttpClientContext"/>es.</param>
 | |
|             <param name="certificate">Certificate to use</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpListenerBase.#ctor(System.Net.IPAddress,System.Int32,HttpServer.IHttpContextFactory,System.Security.Cryptography.X509Certificates.X509Certificate,System.Security.Authentication.SslProtocols)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpListenerBase"/> class.
 | |
|             </summary>
 | |
|             <param name="address">IP Address to accept connections on</param>
 | |
|             <param name="port">TCP Port to listen on, default HTTPS port is 443</param>
 | |
|             <param name="factory">Factory used to create <see cref="T:HttpServer.IHttpClientContext"/>es.</param>
 | |
|             <param name="certificate">Certificate to use</param>
 | |
|             <param name="protocol">which HTTPS protocol to use, default is TLS.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpListenerBase.OnAccept(System.IAsyncResult)">
 | |
|             <exception cref="T:System.Exception"><c>Exception</c>.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpListenerBase.RetryBeginAccept">
 | |
|             <summary>
 | |
|             Will try to accept connections one more time.
 | |
|             </summary>
 | |
|             <exception cref="T:System.Exception">If any exceptions is thrown.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpListenerBase.OnAcceptingSocket(System.Net.Sockets.Socket)">
 | |
|             <summary>
 | |
|             Can be used to create filtering of new connections.
 | |
|             </summary>
 | |
|             <param name="socket">Accepted socket</param>
 | |
|             <returns>true if connection can be accepted; otherwise false.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpListenerBase.Start(System.Int32)">
 | |
|             <summary>
 | |
|             Start listen for new connections
 | |
|             </summary>
 | |
|             <param name="backlog">Number of connections that can stand in a queue to be accepted.</param>
 | |
|             <exception cref="T:System.InvalidOperationException">Listener have already been started.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpListenerBase.Stop">
 | |
|             <summary>
 | |
|             Stop the listener
 | |
|             </summary>
 | |
|             <exception cref="T:System.Net.Sockets.SocketException"></exception>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpListenerBase.LogWriter">
 | |
|             <summary>
 | |
|             Gives you a change to receive log entries for all internals of the HTTP library.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             You may not switch log writer after starting the listener.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpListenerBase.UseTraceLogs">
 | |
|             <summary>
 | |
|             True if we should turn on trace logs.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.HttpListenerBase.ExceptionThrown">
 | |
|             <summary>
 | |
|             Catch exceptions not handled by the listener.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Exceptions will be thrown during debug mode if this event is not used,
 | |
|             exceptions will be printed to console and suppressed during release mode.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.HttpListenerBase.RequestReceived">
 | |
|             <summary>
 | |
|             A request have been received from a <see cref="T:HttpServer.IHttpClientContext"/>.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.FormDecoders.MultipartDecoder">
 | |
|             <summary>
 | |
|             
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             http://www.faqs.org/rfcs/rfc1867.html
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.FormDecoders.IFormDecoder">
 | |
|             <summary>
 | |
|             Interface for form content decoders.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.FormDecoders.IFormDecoder.Decode(System.IO.Stream,System.String,System.Text.Encoding)">
 | |
|             <summary>
 | |
|             
 | |
|             </summary>
 | |
|             <param name="stream">Stream containing the content</param>
 | |
|             <param name="contentType">Content type (with any additional info like boundry). Content type is always supplied in lower case</param>
 | |
|             <param name="encoding">Stream enconding</param>
 | |
|             <returns>A http form, or null if content could not be parsed.</returns>
 | |
|             <exception cref="T:System.IO.InvalidDataException">If contents in the stream is not valid input data.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.FormDecoders.IFormDecoder.CanParse(System.String)">
 | |
|             <summary>
 | |
|             Checks if the decoder can handle the mime type
 | |
|             </summary>
 | |
|             <param name="contentType">Content type (with any additional info like boundry). Content type is always supplied in lower case.</param>
 | |
|             <returns>True if the decoder can parse the specified content type</returns>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.FormDecoders.MultipartDecoder.MimeType">
 | |
|             <summary>
 | |
|             multipart/form-data
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.FormDecoders.MultipartDecoder.FormData">
 | |
|             <summary>
 | |
|             form-data
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.FormDecoders.MultipartDecoder.Decode(System.IO.Stream,System.String,System.Text.Encoding)">
 | |
|             <summary>
 | |
|             
 | |
|             </summary>
 | |
|             <param name="stream">Stream containing the content</param>
 | |
|             <param name="contentType">Content type (with any additional info like boundry). Content type is always supplied in lower case</param>
 | |
|             <param name="encoding">Stream enconding</param>
 | |
|             <returns>A http form, or null if content could not be parsed.</returns>
 | |
|             <exception cref="T:System.IO.InvalidDataException">If contents in the stream is not valid input data.</exception>
 | |
|             <exception cref="T:System.ArgumentNullException">If any parameter is null</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.FormDecoders.MultipartDecoder.CanParse(System.String)">
 | |
|             <summary>
 | |
|             Checks if the decoder can handle the mime type
 | |
|             </summary>
 | |
|             <param name="contentType">Content type (with any additional info like boundry). Content type is always supplied in lower case.</param>
 | |
|             <returns>True if the decoder can parse the specified content type</returns>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Exceptions.NotFoundException">
 | |
|             <summary>
 | |
|             The requested resource was not found in the web server.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Exceptions.NotFoundException.#ctor(System.String,System.Exception)">
 | |
|             <summary>
 | |
|             Create a new exception
 | |
|             </summary>
 | |
|             <param name="message">message describing the error</param>
 | |
|             <param name="inner">inner exception</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Exceptions.NotFoundException.#ctor(System.String)">
 | |
|             <summary>
 | |
|             Create a new exception
 | |
|             </summary>
 | |
|             <param name="message">message describing the error</param>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Authentication.AuthenticationHandler">
 | |
|             <summary>
 | |
|             Delegate used to let authentication modules authenticate the user name and password.
 | |
|             </summary>
 | |
|             <param name="realm">Realm that the user want to authenticate in</param>
 | |
|             <param name="userName">User name specified by client</param>
 | |
|             <param name="token">Can either be user password or implementation specific token.</param>
 | |
|             <param name="login">object that will be stored in a session variable called <see cref="F:HttpServer.Authentication.AuthenticationModule.AuthenticationTag"/> if authentication was successful.</param>
 | |
|             <exception cref="T:HttpServer.Exceptions.ForbiddenException">throw forbidden exception if too many attempts have been made.</exception>
 | |
|             <remarks>
 | |
|             <para>
 | |
|             Use <see cref="P:HttpServer.Authentication.DigestAuthentication.TokenIsHA1"/> to specify that the token is a HA1 token. (MD5 generated
 | |
|             string from realm, user name and password); Md5String(userName + ":" + realm + ":" + password);
 | |
|             </para>
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Authentication.AuthenticationRequiredHandler">
 | |
|             <summary>
 | |
|             Let's you decide on a system level if authentication is required.
 | |
|             </summary>
 | |
|             <param name="request">HTTP request from client</param>
 | |
|             <returns>true if user should be authenticated.</returns>
 | |
|             <remarks>throw <see cref="T:HttpServer.Exceptions.ForbiddenException"/> if no more attempts are allowed.</remarks>
 | |
|             <exception cref="T:HttpServer.Exceptions.ForbiddenException">If no more attempts are allowed</exception>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Authentication.AuthenticationModule">
 | |
|             <summary>
 | |
|             Authentication modules are used to implement different
 | |
|             kind of HTTP authentication.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Authentication.AuthenticationModule.AuthenticationTag">
 | |
|             <summary>
 | |
|             Tag used for authentication.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.AuthenticationModule.#ctor(HttpServer.Authentication.AuthenticationHandler,HttpServer.Authentication.AuthenticationRequiredHandler)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Authentication.AuthenticationModule"/> class.
 | |
|             </summary>
 | |
|             <param name="authenticator">Delegate used to provide information used during authentication.</param>
 | |
|             <param name="authenticationRequiredHandler">Delegate used to determine if authentication is required (may be null).</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.AuthenticationModule.#ctor(HttpServer.Authentication.AuthenticationHandler)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Authentication.AuthenticationModule"/> class.
 | |
|             </summary>
 | |
|             <param name="authenticator">Delegate used to provide information used during authentication.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.AuthenticationModule.CreateResponse(System.String,System.Object[])">
 | |
|             <summary>
 | |
|             Create a response that can be sent in the WWW-Authenticate header.
 | |
|             </summary>
 | |
|             <param name="realm">Realm that the user should authenticate in</param>
 | |
|             <param name="options">Array with optional options.</param>
 | |
|             <returns>A correct authentication request.</returns>
 | |
|             <exception cref="T:System.ArgumentNullException">If realm is empty or null.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.AuthenticationModule.Authenticate(System.String,System.String,System.String,System.Object[])">
 | |
|             <summary>
 | |
|             An authentication response have been received from the web browser.
 | |
|             Check if it's correct
 | |
|             </summary>
 | |
|             <param name="authenticationHeader">Contents from the Authorization header</param>
 | |
|             <param name="realm">Realm that should be authenticated</param>
 | |
|             <param name="httpVerb">GET/POST/PUT/DELETE etc.</param>
 | |
|             <param name="options">options to specific implementations</param>
 | |
|             <returns>Authentication object that is stored for the request. A user class or something like that.</returns>
 | |
|             <exception cref="T:System.ArgumentException">if <paramref name="authenticationHeader"/> is invalid</exception>
 | |
|             <exception cref="T:System.ArgumentNullException">If any of the parameters is empty or null.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.AuthenticationModule.CheckAuthentication(System.String,System.String,System.String@,System.Object@)">
 | |
|             <summary>
 | |
|             Used to invoke the authentication delegate that is used to lookup the user name/realm.
 | |
|             </summary>
 | |
|             <param name="realm">Realm (domain) that user want to authenticate in</param>
 | |
|             <param name="userName">User name</param>
 | |
|             <param name="password">Password used for validation. Some implementations got password in clear text, they are then sent to client.</param>
 | |
|             <param name="login">object that will be stored in the request to help you identify the user if authentication was successful.</param>
 | |
|             <returns>true if authentication was successful</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.AuthenticationModule.AuthenticationRequired(HttpServer.IHttpRequest)">
 | |
|             <summary>
 | |
|             Determines if authentication is required.
 | |
|             </summary>
 | |
|             <param name="request">HTTP request from browser</param>
 | |
|             <returns>true if user should be authenticated.</returns>
 | |
|             <remarks>throw <see cref="T:HttpServer.Exceptions.ForbiddenException"/> from your delegate if no more attempts are allowed.</remarks>
 | |
|             <exception cref="T:HttpServer.Exceptions.ForbiddenException">If no more attempts are allowed</exception>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Authentication.AuthenticationModule.Name">
 | |
|             <summary>
 | |
|             name used in HTTP request.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpInput">
 | |
|             <summary>
 | |
|             Contains some kind of input from the browser/client.
 | |
|             can be QueryString, form data or any other request body content.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.IHttpInput">
 | |
|             <summary>
 | |
|             Base class for request data containers
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpInput.Add(System.String,System.String)">
 | |
|             <summary>
 | |
|             Adds a parameter mapped to the presented name
 | |
|             </summary>
 | |
|             <param name="name">The name to map the parameter to</param>
 | |
|             <param name="value">The parameter value</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpInput.Contains(System.String)">
 | |
|             <summary>
 | |
|             Returns true if the container contains the requested parameter
 | |
|             </summary>
 | |
|             <param name="name">Parameter id</param>
 | |
|             <returns>True if parameter exists</returns>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpInput.Item(System.String)">
 | |
|             <summary>
 | |
|             Returns a request parameter
 | |
|             </summary>
 | |
|             <param name="name">The name associated with the parameter</param>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.HttpInput.Empty">
 | |
|             <summary> Representation of a non-initialized class instance </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.HttpInput._ignoreChanges">
 | |
|             <summary> Variable telling the class that it is non-initialized <see cref="F:HttpServer.HttpInput.Empty"/> </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInput.#ctor(System.String)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpInput"/> class.
 | |
|             </summary>
 | |
|             <param name="name">form name.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInput.#ctor(System.String,System.Boolean)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpInput"/> class.
 | |
|             </summary>
 | |
|             <param name="name">form name.</param>
 | |
|             <param name="ignoreChanges">if set to <c>true</c> all changes will be ignored. </param>
 | |
|             <remarks>this constructor should only be used by Empty</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInput.#ctor(HttpServer.HttpInput)">
 | |
|             <summary>Creates a deep copy of the HttpInput class</summary>
 | |
|             <param name="input">The object to copy</param>
 | |
|             <remarks>The function makes a deep copy of quite a lot which can be slow</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInput.Add(System.String,System.String)">
 | |
|             <summary>
 | |
|             Add a new element. Form array elements are parsed
 | |
|             and added in a correct hierarchy.
 | |
|             </summary>
 | |
|             <param name="name">Name is converted to lower case.</param>
 | |
|             <param name="value"></param>
 | |
|             <exception cref="T:System.ArgumentNullException"><c>name</c> is null.</exception>
 | |
|             <exception cref="T:System.InvalidOperationException">Cannot add stuff to <see cref="F:HttpServer.HttpInput.Empty"/>.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInput.Contains(System.String)">
 | |
|             <summary>
 | |
|             Returns true if the class contains a <see cref="T:HttpServer.HttpInput"/> with the corresponding name.
 | |
|             </summary>
 | |
|             <param name="name">The field/query string name</param>
 | |
|             <returns>True if the value exists</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInput.ParseItem(System.String,System.String)">
 | |
|             <summary>
 | |
|             Parses an item and returns it.
 | |
|             This function is primarily used to parse array items as in user[name].
 | |
|             </summary>
 | |
|             <param name="name"></param>
 | |
|             <param name="value"></param>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInput.ToString">
 | |
|             <summary> Outputs the instance representing all its values joined together </summary>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInput.ToString(System.Boolean)">
 | |
|             <summary>Returns all items as an unescaped query string.</summary>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInput.ExtractOne(System.String)">
 | |
|             <summary>
 | |
|             Extracts one parameter from an array
 | |
|             </summary>
 | |
|             <param name="value">Containing the string array</param>
 | |
|             <returns>All but the first value</returns>
 | |
|             <example>
 | |
|             string test1 = ExtractOne("system[user][extension][id]");
 | |
|             string test2 = ExtractOne(test1);
 | |
|             string test3 = ExtractOne(test2);
 | |
|             // test1 = user[extension][id]
 | |
|             // test2 = extension[id]
 | |
|             // test3 = id
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInput.Clear">
 | |
|             <summary>Resets all data contained by class</summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInput.System#Collections#Generic#IEnumerable{HttpServer#HttpInputItem}#GetEnumerator">
 | |
|             <summary>
 | |
|             Returns an enumerator that iterates through the collection.
 | |
|             </summary>
 | |
|             
 | |
|             <returns>
 | |
|             A <see cref="T:System.Collections.Generic.IEnumerator`1"></see> that can be used to iterate through the collection.
 | |
|             </returns>
 | |
|             <filterpriority>1</filterpriority>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInput.GetEnumerator">
 | |
|             <summary>
 | |
|             Returns an enumerator that iterates through a collection.
 | |
|             </summary>
 | |
|             
 | |
|             <returns>
 | |
|             An <see cref="T:System.Collections.IEnumerator"></see> object that can be used to iterate through the collection.
 | |
|             </returns>
 | |
|             <filterpriority>2</filterpriority>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpInput.Name">
 | |
|             <summary>
 | |
|             Form name as lower case
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpInput.Item(System.String)">
 | |
|             <summary>
 | |
|             Get a form item.
 | |
|             </summary>
 | |
|             <param name="name"></param>
 | |
|             <returns>Returns <see cref="F:HttpServer.HttpInputItem.Empty"/> if item was not found.</returns>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Check">
 | |
|             <summary>
 | |
|             Small design by contract implementation.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Check.NotEmpty(System.String,System.String)">
 | |
|             <summary>
 | |
|             Check whether a parameter is empty.
 | |
|             </summary>
 | |
|             <param name="value">Parameter value</param>
 | |
|             <param name="parameterOrErrorMessage">Parameter name, or error description.</param>
 | |
|             <exception cref="T:System.ArgumentException">value is empty.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Check.Require(System.Object,System.String)">
 | |
|             <summary>
 | |
|             Checks whether a parameter is null.
 | |
|             </summary>
 | |
|             <param name="value">Parameter value</param>
 | |
|             <param name="parameterOrErrorMessage">Parameter name, or error description.</param>
 | |
|             <exception cref="T:System.ArgumentNullException">value is null.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Check.Min(System.Int32,System.Object,System.String)">
 | |
|             <summary>
 | |
|             Checks whether a parameter is null.
 | |
|             </summary>
 | |
|             <param name="minValue"></param>
 | |
|             <param name="value">Parameter value</param>
 | |
|             <param name="parameterOrErrorMessage">Parameter name, or error description.</param>
 | |
|             <exception cref="T:System.ArgumentException">value is null.</exception>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Method">
 | |
|             <summary>
 | |
|             Contains all HTTP Methods (according to the HTTP 1.1 specification)
 | |
|             <para>
 | |
|             See: http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html
 | |
|             </para>
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Method.Delete">
 | |
|             <summary>
 | |
|             The DELETE method requests that the origin server delete the resource identified by the Request-URI.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             <para>
 | |
|             This method MAY be overridden by human intervention (or other means) on the origin server. 
 | |
|             The client cannot be guaranteed that the operation has been carried out, even if the status code 
 | |
|             returned from the origin server indicates that the action has been completed successfully. 
 | |
|             </para>
 | |
|             <para>
 | |
|             However, the server SHOULD NOT indicate success unless, at the time the response is given, 
 | |
|             it intends to delete the resource or move it to an inaccessible location.
 | |
|             </para>
 | |
|             <para>
 | |
|             A successful response SHOULD be 200 (OK) if the response includes an entity describing the status, 
 | |
|             202 (Accepted) if the action has not yet been enacted, 
 | |
|             or 204 (No Content) if the action has been enacted but the response does not include an entity.
 | |
|             </para>
 | |
|             <para>
 | |
|             If the request passes through a cache and the Request-URI identifies one or more currently cached entities, 
 | |
|             those entries SHOULD be treated as stale. Responses to this method are not cacheable. 
 | |
|             </para>
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Method.Get">
 | |
|             <summary>
 | |
|             The GET method means retrieve whatever information (in the form of an entity) is identified by the Request-URI.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             <para>
 | |
|             If the Request-URI refers to a data-producing process, it is the produced data which shall be returned as the 
 | |
|             entity in the response and not the source text of the process, unless that text happens to be the output of the process.
 | |
|             </para>
 | |
|             <para>
 | |
|             The semantics of the GET method change to a "conditional GET" if the request message includes an 
 | |
|             If-Modified-Since, If-Unmodified-Since, If-Match, If-None-Match, or If-Range header field. 
 | |
|             A conditional GET method requests that the entity be transferred only under the circumstances described 
 | |
|             by the conditional header field(s). The conditional GET method is intended to reduce unnecessary network 
 | |
|             usage by allowing cached entities to be refreshed without requiring multiple requests or transferring 
 | |
|             data already held by the client.
 | |
|             </para>
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Method.Header">
 | |
|             <summary>
 | |
|             The HEAD method is identical to GET except that the server MUST NOT return a message-body in the response. 
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             The meta information contained in the HTTP headers in response to a HEAD request SHOULD be identical to the
 | |
|              information sent in response to a GET request. This method can be used for obtaining meta information about 
 | |
|             the entity implied by the request without transferring the entity-body itself. 
 | |
|             
 | |
|             This method is often used for testing hypertext links for validity, accessibility, and recent modification.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Method.Options">
 | |
|             <summary>
 | |
|             <para>The OPTIONS method represents a request for information about the communication options available on the request/response chain identified by the Request-URI.</para>
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             <para>This method allows the client to determine the options and/or requirements associated with a resource, or the capabilities of a server, without implying a resource action or initiating a resource retrieval.</para>
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Method.Post">
 | |
|             <summary>
 | |
|             The POST method is used to request that the origin server accept the entity enclosed 
 | |
|             in the request as a new subordinate of the resource identified by the Request-URI in the Request-Line.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             POST is designed to allow a uniform method to cover the following functions:
 | |
|             <list type="bullet">
 | |
|             <item>
 | |
|             Annotation of existing resources;
 | |
|             </item><item>
 | |
|             Posting a message to a bulletin board, newsgroup, mailing list, or similar group of articles;
 | |
|             </item><item>
 | |
|             Providing a block of data, such as the result of submitting a form, to a data-handling process;
 | |
|             </item><item>
 | |
|             Extending a database through an append operation.
 | |
|             </item>
 | |
|             </list>
 | |
|             <para>
 | |
|             If a resource has been created on the origin server, the response SHOULD be 201 (Created) and 
 | |
|             contain an entity which describes the status of the request and refers to the new resource, and a 
 | |
|             Location header (see section 14.30).
 | |
|             </para>
 | |
|             <para>
 | |
|              The action performed by the POST method might not result in a resource that can be identified by a URI. 
 | |
|             In this case, either 200 (OK) or 204 (No Content) is the appropriate response status, depending on 
 | |
|             whether or not the response includes an entity that describes the result.
 | |
|             </para><para>
 | |
|             Responses to this method are not cacheable, unless the response includes appropriate Cache-Control 
 | |
|             or Expires header fields. However, the 303 (See Other) response can be used to direct the user agent 
 | |
|             to retrieve a cacheable resource. 
 | |
|             </para>
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Method.Put">
 | |
|             <summary>
 | |
|             The PUT method requests that the enclosed entity be stored under the supplied Request-URI.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             <list type="bullet">
 | |
|             <item>
 | |
|             If the Request-URI refers to an already existing resource, the enclosed entity SHOULD be considered as a 
 | |
|             modified version of the one residing on the origin server. 
 | |
|             </item><item>
 | |
|             If the Request-URI does not point to an existing resource, and that URI is capable of being defined as a new 
 | |
|             resource by the requesting user agent, the origin server can create the resource with that URI. 
 | |
|             </item><item>
 | |
|             If a new resource is created, the origin server MUST inform the user agent via the 201 (Created) response. 
 | |
|             </item><item>
 | |
|             If an existing resource is modified, either the 200 (OK) or 204 (No Content) response codes SHOULD be sent to 
 | |
|             indicate successful completion of the request. 
 | |
|             </item><item>
 | |
|             If the resource could not be created or modified with the Request-URI, an appropriate error response SHOULD be 
 | |
|             given that reflects the nature of the problem. 
 | |
|             </item>
 | |
|             </list>
 | |
|             <para>
 | |
|             The recipient of the entity MUST NOT ignore any Content-* (e.g. Content-Range) headers that it does not 
 | |
|             understand or implement and MUST return a 501 (Not Implemented) response in such cases.
 | |
|             </para>
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Method.Trace">
 | |
|             <summary>
 | |
|             The TRACE method is used to invoke a remote, application-layer loop- back of the request message.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Methods">
 | |
|             <summary>
 | |
|             Contains all HTTP Methods (according to the HTTP 1.1 specification)
 | |
|             <para>
 | |
|             See: http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html
 | |
|             </para>
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Methods.Delete">
 | |
|             <summary>
 | |
|             The DELETE method requests that the origin server delete the resource identified by the Request-URI.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             <para>
 | |
|             This method MAY be overridden by human intervention (or other means) on the origin server. 
 | |
|             The client cannot be guaranteed that the operation has been carried out, even if the status code 
 | |
|             returned from the origin server indicates that the action has been completed successfully. 
 | |
|             </para>
 | |
|             <para>
 | |
|             However, the server SHOULD NOT indicate success unless, at the time the response is given, 
 | |
|             it intends to delete the resource or move it to an inaccessible location.
 | |
|             </para>
 | |
|             <para>
 | |
|             A successful response SHOULD be 200 (OK) if the response includes an entity describing the status, 
 | |
|             202 (Accepted) if the action has not yet been enacted, 
 | |
|             or 204 (No Content) if the action has been enacted but the response does not include an entity.
 | |
|             </para>
 | |
|             <para>
 | |
|             If the request passes through a cache and the Request-URI identifies one or more currently cached entities, 
 | |
|             those entries SHOULD be treated as stale. Responses to this method are not cacheable. 
 | |
|             </para>
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Methods.Get">
 | |
|             <summary>
 | |
|             The GET method means retrieve whatever information (in the form of an entity) is identified by the Request-URI.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             <para>
 | |
|             If the Request-URI refers to a data-producing process, it is the produced data which shall be returned as the 
 | |
|             entity in the response and not the source text of the process, unless that text happens to be the output of the process.
 | |
|             </para>
 | |
|             <para>
 | |
|             The semantics of the GET method change to a "conditional GET" if the request message includes an 
 | |
|             If-Modified-Since, If-Unmodified-Since, If-Match, If-None-Match, or If-Range header field. 
 | |
|             A conditional GET method requests that the entity be transferred only under the circumstances described 
 | |
|             by the conditional header field(s). The conditional GET method is intended to reduce unnecessary network 
 | |
|             usage by allowing cached entities to be refreshed without requiring multiple requests or transferring 
 | |
|             data already held by the client.
 | |
|             </para>
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Methods.Header">
 | |
|             <summary>
 | |
|             The HEAD method is identical to GET except that the server MUST NOT return a message-body in the response. 
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             The meta information contained in the HTTP headers in response to a HEAD request SHOULD be identical to the
 | |
|              information sent in response to a GET request. This method can be used for obtaining meta information about 
 | |
|             the entity implied by the request without transferring the entity-body itself. 
 | |
|             
 | |
|             This method is often used for testing hypertext links for validity, accessibility, and recent modification.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Methods.Options">
 | |
|             <summary>
 | |
|             <para>The OPTIONS method represents a request for information about the communication options available on the request/response chain identified by the Request-URI.</para>
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             <para>This method allows the client to determine the options and/or requirements associated with a resource, or the capabilities of a server, without implying a resource action or initiating a resource retrieval.</para>
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Methods.Post">
 | |
|             <summary>
 | |
|             The POST method is used to request that the origin server accept the entity enclosed 
 | |
|             in the request as a new subordinate of the resource identified by the Request-URI in the Request-Line.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             POST is designed to allow a uniform method to cover the following functions:
 | |
|             <list type="bullet">
 | |
|             <item>
 | |
|             Annotation of existing resources;
 | |
|             </item><item>
 | |
|             Posting a message to a bulletin board, newsgroup, mailing list, or similar group of articles;
 | |
|             </item><item>
 | |
|             Providing a block of data, such as the result of submitting a form, to a data-handling process;
 | |
|             </item><item>
 | |
|             Extending a database through an append operation.
 | |
|             </item>
 | |
|             </list>
 | |
|             <para>
 | |
|             If a resource has been created on the origin server, the response SHOULD be 201 (Created) and 
 | |
|             contain an entity which describes the status of the request and refers to the new resource, and a 
 | |
|             Location header (see section 14.30).
 | |
|             </para>
 | |
|             <para>
 | |
|              The action performed by the POST method might not result in a resource that can be identified by a URI. 
 | |
|             In this case, either 200 (OK) or 204 (No Content) is the appropriate response status, depending on 
 | |
|             whether or not the response includes an entity that describes the result.
 | |
|             </para><para>
 | |
|             Responses to this method are not cacheable, unless the response includes appropriate Cache-Control 
 | |
|             or Expires header fields. However, the 303 (See Other) response can be used to direct the user agent 
 | |
|             to retrieve a cacheable resource. 
 | |
|             </para>
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Methods.Put">
 | |
|             <summary>
 | |
|             The PUT method requests that the enclosed entity be stored under the supplied Request-URI.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             <list type="bullet">
 | |
|             <item>
 | |
|             If the Request-URI refers to an already existing resource, the enclosed entity SHOULD be considered as a 
 | |
|             modified version of the one residing on the origin server. 
 | |
|             </item><item>
 | |
|             If the Request-URI does not point to an existing resource, and that URI is capable of being defined as a new 
 | |
|             resource by the requesting user agent, the origin server can create the resource with that URI. 
 | |
|             </item><item>
 | |
|             If a new resource is created, the origin server MUST inform the user agent via the 201 (Created) response. 
 | |
|             </item><item>
 | |
|             If an existing resource is modified, either the 200 (OK) or 204 (No Content) response codes SHOULD be sent to 
 | |
|             indicate successful completion of the request. 
 | |
|             </item><item>
 | |
|             If the resource could not be created or modified with the Request-URI, an appropriate error response SHOULD be 
 | |
|             given that reflects the nature of the problem. 
 | |
|             </item>
 | |
|             </list>
 | |
|             <para>
 | |
|             The recipient of the entity MUST NOT ignore any Content-* (e.g. Content-Range) headers that it does not 
 | |
|             understand or implement and MUST return a 501 (Not Implemented) response in such cases.
 | |
|             </para>
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Methods.Trace">
 | |
|             <summary>
 | |
|             The TRACE method is used to invoke a remote, application-layer loop- back of the request message.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.LogPrio">
 | |
|             <summary>
 | |
|             Priority for log entries
 | |
|             </summary>
 | |
|             <seealso cref="T:HttpServer.ILogWriter"/>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.LogPrio.Trace">
 | |
|             <summary>
 | |
|             Very detailed logs to be able to follow the flow of the program.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.LogPrio.Debug">
 | |
|             <summary>
 | |
|             Logs to help debug errors in the application
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.LogPrio.Info">
 | |
|             <summary>
 | |
|             Information to be able to keep track of state changes etc.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.LogPrio.Warning">
 | |
|             <summary>
 | |
|             Something did not go as we expected, but it's no problem.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.LogPrio.Error">
 | |
|             <summary>
 | |
|             Something that should not fail failed, but we can still keep
 | |
|             on going.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.LogPrio.Fatal">
 | |
|             <summary>
 | |
|             Something failed, and we cannot handle it properly.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.ILogWriter">
 | |
|             <summary>
 | |
|             Interface used to write to log files.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ILogWriter.Write(System.Object,HttpServer.LogPrio,System.String)">
 | |
|             <summary>
 | |
|             Write an entry to the log file.
 | |
|             </summary>
 | |
|             <param name="source">object that is writing to the log</param>
 | |
|             <param name="priority">importance of the log message</param>
 | |
|             <param name="message">the message</param>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.ConsoleLogWriter">
 | |
|             <summary>
 | |
|             This class writes to the console. It colors the output depending on the logprio and includes a 3-level stacktrace (in debug mode)
 | |
|             </summary>
 | |
|             <seealso cref="T:HttpServer.ILogWriter"/>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.ConsoleLogWriter.Instance">
 | |
|             <summary>
 | |
|             The actual instance of this class.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ConsoleLogWriter.Write(System.Object,HttpServer.LogPrio,System.String)">
 | |
|             <summary>
 | |
|             Logwriters the specified source.
 | |
|             </summary>
 | |
|             <param name="source">object that wrote the logentry.</param>
 | |
|             <param name="prio">Importance of the log message</param>
 | |
|             <param name="message">The message.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ConsoleLogWriter.GetColor(HttpServer.LogPrio)">
 | |
|             <summary>
 | |
|             Get color for the specified logprio
 | |
|             </summary>
 | |
|             <param name="prio">prio for the log entry</param>
 | |
|             <returns>A <see cref="T:System.ConsoleColor"/> for the prio</returns>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.NullLogWriter">
 | |
|             <summary>
 | |
|             Default log writer, writes everything to null (nowhere).
 | |
|             </summary>
 | |
|             <seealso cref="T:HttpServer.ILogWriter"/>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.NullLogWriter.Instance">
 | |
|             <summary>
 | |
|             The logging instance.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.NullLogWriter.Write(System.Object,HttpServer.LogPrio,System.String)">
 | |
|             <summary>
 | |
|             Writes everything to null
 | |
|             </summary>
 | |
|             <param name="source">object that wrote the log entry.</param>
 | |
|             <param name="prio">Importance of the log message</param>
 | |
|             <param name="message">The message.</param>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.IComponentProvider">
 | |
|             <summary>
 | |
|             Inversion of control interface.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IComponentProvider.AddInstance``1(System.Object)">
 | |
|             <summary>
 | |
|             Add a component instance
 | |
|             </summary>
 | |
|             <typeparam name="T">Interface type</typeparam>
 | |
|             <param name="instance">Instance to add</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IComponentProvider.Get``1">
 | |
|             <summary>
 | |
|             Get a component.
 | |
|             </summary>
 | |
|             <typeparam name="T">Interface type</typeparam>
 | |
|             <returns>Component if registered, otherwise null.</returns>
 | |
|             <remarks>
 | |
|             Component will get created if needed.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IComponentProvider.Contains(System.Type)">
 | |
|             <summary>
 | |
|             Checks if the specified component interface have been added.
 | |
|             </summary>
 | |
|             <param name="interfaceType"></param>
 | |
|             <returns>true if found; otherwise false.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IComponentProvider.Add``2">
 | |
|             <summary>
 | |
|             Add a component.
 | |
|             </summary>
 | |
|             <typeparam name="InterfaceType">Type being requested.</typeparam>
 | |
|             <typeparam name="InstanceType">Type being created.</typeparam>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpParam">
 | |
|             <summary>
 | |
|             Returns item either from a form or a query string (checks them in that order)
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.HttpParam.Empty">
 | |
|             <summary> Representation of a non-initialized HttpParam </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpParam.#ctor(HttpServer.IHttpInput,HttpServer.IHttpInput)">
 | |
|             <summary>Initialises the class to hold a value either from a post request or a querystring request</summary>		
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpParam.Add(System.String,System.String)">
 | |
|             <summary>
 | |
|             The add method is not availible for HttpParam
 | |
|             since HttpParam checks both Request.Form and Request.QueryString
 | |
|             </summary>
 | |
|             <param name="name">name identifying the value</param>
 | |
|             <param name="value">value to add</param>
 | |
|             <exception cref="T:System.NotImplementedException"></exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpParam.Contains(System.String)">
 | |
|             <summary>
 | |
|             Checks whether the form or querystring has the specified value
 | |
|             </summary>
 | |
|             <param name="name">Name, case sensitive</param>
 | |
|             <returns>true if found; otherwise false.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpParam.System#Collections#Generic#IEnumerable{HttpServer#HttpInputItem}#GetEnumerator">
 | |
|             <summary>
 | |
|             Returns an enumerator that iterates through the collection.
 | |
|             </summary>
 | |
|             
 | |
|             <returns>
 | |
|             A <see cref="T:System.Collections.Generic.IEnumerator`1"></see> that can be used to iterate through the collection.
 | |
|             </returns>
 | |
|             <filterpriority>1</filterpriority>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpParam.GetEnumerator">
 | |
|             <summary>
 | |
|             Returns an enumerator that iterates through a collection.
 | |
|             </summary>
 | |
|             
 | |
|             <returns>
 | |
|             An <see cref="T:System.Collections.IEnumerator"></see> object that can be used to iterate through the collection.
 | |
|             </returns>
 | |
|             <filterpriority>2</filterpriority>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpParam.Item(System.String)">
 | |
|             <summary>
 | |
|             Fetch an item from the form or querystring (in that order).
 | |
|             </summary>
 | |
|             <param name="name"></param>
 | |
|             <returns>Item if found; otherwise HttpInputItem.EmptyLanguageNode</returns>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpForm">
 | |
|             <summary>Container for posted form data</summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.HttpForm.EmptyForm">
 | |
|             <summary>Instance to help mark a non-initialized form</summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpForm.#ctor">
 | |
|             <summary>Initializes a form container with the specified name</summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpForm.#ctor(HttpServer.HttpInput)">
 | |
|             <summary>
 | |
|             Makes a deep copy of the input
 | |
|             </summary>
 | |
|             <param name="input">The input to copy</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpForm.AddFile(HttpServer.HttpFile)">
 | |
|             <summary>
 | |
|             Adds a file to the collection of posted files
 | |
|             </summary>
 | |
|             <param name="file">The file to add</param>
 | |
|             <exception cref="T:System.ArgumentException">If the file is already added</exception>
 | |
|             <exception cref="T:System.ArgumentNullException">If file is null</exception>
 | |
|             <exception cref="T:System.InvalidOperationException">If the instance is HttpForm.EmptyForm which cannot be modified</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpForm.ContainsFile(System.String)">
 | |
|             <summary>
 | |
|             Checks if the form contains a specified file
 | |
|             </summary>
 | |
|             <param name="name">Field name of the file parameter</param>
 | |
|             <returns>True if the file exists</returns>
 | |
|             <exception cref="T:System.InvalidOperationException">If the instance is HttpForm.EmptyForm which cannot be modified</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpForm.GetFile(System.String)">
 | |
|             <summary>
 | |
|             Retrieves a file held by by the form
 | |
|             </summary>
 | |
|             <param name="name">The identifier of the file</param>
 | |
|             <returns>The requested file or null if the file was not found</returns>
 | |
|             <exception cref="T:System.ArgumentNullException">If name is null or empty</exception>
 | |
|             <exception cref="T:System.InvalidOperationException">If the instance is HttpForm.EmptyForm which cannot be modified</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpForm.Clear">
 | |
|             <summary>Disposes all held HttpFile's and resets values</summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpForm.Files">
 | |
|             <summary>
 | |
|             Retrieves the number of files added to the <see cref="T:HttpServer.HttpForm"/>
 | |
|             </summary>
 | |
|             <returns>0 if no files are added</returns>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Helpers.ObjectForm">
 | |
|             <summary>
 | |
|             The object form class takes an object and creates form items for it.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ObjectForm.#ctor(System.String,System.String,System.Object,System.String)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Helpers.ObjectForm"/> class.
 | |
|             </summary>
 | |
|             <param name="method"></param>
 | |
|             <param name="name">form name *and* id.</param>
 | |
|             <param name="action">action to do when form is posted.</param>
 | |
|             <param name="obj"></param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ObjectForm.#ctor(System.String,System.String,System.Object)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Helpers.ObjectForm"/> class.
 | |
|             </summary>
 | |
|             <param name="name">form name *and* id.</param>
 | |
|             <param name="action">action to do when form is posted.</param>
 | |
|             <param name="obj">object to get values from</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ObjectForm.#ctor(System.String,System.Object)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Helpers.ObjectForm"/> class.
 | |
|             </summary>
 | |
|             <param name="action">form action.</param>
 | |
|             <param name="obj">object to get values from.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ObjectForm.Begin">
 | |
|             <summary>
 | |
|             write out the FORM-tag.
 | |
|             </summary>
 | |
|             <returns>generated html code</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ObjectForm.Begin(System.Boolean)">
 | |
|             <summary>
 | |
|             Writeout the form tag
 | |
|             </summary>
 | |
|             <param name="isAjax">form should be posted through ajax.</param>
 | |
|             <returns>generated html code</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ObjectForm.Tb(System.String,System.Object[])">
 | |
|             <summary>
 | |
|             Generates a text box.
 | |
|             </summary>
 | |
|             <param name="propertyName"></param>
 | |
|             <param name="options"></param>
 | |
|             <returns>generated html code</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ObjectForm.Pb(System.String,System.Object[])">
 | |
|             <summary>
 | |
|             password box
 | |
|             </summary>
 | |
|             <param name="propertyName"></param>
 | |
|             <param name="options"></param>
 | |
|             <returns>generated html code</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ObjectForm.Hidden(System.String,System.Object[])">
 | |
|             <summary>
 | |
|             Hiddens the specified property name.
 | |
|             </summary>
 | |
|             <param name="propertyName">Name of the property.</param>
 | |
|             <param name="options">The options.</param>
 | |
|             <returns>generated html code</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ObjectForm.Label(System.String,System.String)">
 | |
|             <summary>
 | |
|             Labels the specified property name.
 | |
|             </summary>
 | |
|             <param name="propertyName">property in object.</param>
 | |
|             <param name="label">caption</param>
 | |
|             <returns>generated html code</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ObjectForm.Cb(System.String,System.String,System.Object[])">
 | |
|             <summary>
 | |
|             Generate a checkbox
 | |
|             </summary>
 | |
|             <param name="propertyName">property in object</param>
 | |
|             <param name="value">checkbox value</param>
 | |
|             <param name="options">additional html attributes.</param>
 | |
|             <returns>generated html code</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ObjectForm.Select(System.String,System.String,System.String,System.Object[])">
 | |
|             <summary>
 | |
|             Write a html select tag
 | |
|             </summary>
 | |
|             <param name="propertyName">object property.</param>
 | |
|             <param name="idColumn">id column</param>
 | |
|             <param name="titleColumn">The title column.</param>
 | |
|             <param name="options">The options.</param>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ObjectForm.Select(System.String,System.Collections.IEnumerable,System.String,System.String,System.Object[])">
 | |
|             <summary>
 | |
|             Selects the specified property name.
 | |
|             </summary>
 | |
|             <param name="propertyName">Name of the property.</param>
 | |
|             <param name="items">The items.</param>
 | |
|             <param name="idColumn">The id column.</param>
 | |
|             <param name="titleColumn">The title column.</param>
 | |
|             <param name="options">The options.</param>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ObjectForm.Submit(System.String)">
 | |
|             <summary>
 | |
|             Write a submit tag.
 | |
|             </summary>
 | |
|             <param name="value">button caption</param>
 | |
|             <returns>html submit tag</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ObjectForm.End">
 | |
|             <summary>
 | |
|             html end form tag
 | |
|             </summary>
 | |
|             <returns>html</returns>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.FormDecoders.FormDecoderProvider">
 | |
|             <summary>
 | |
|             This provider is used to let us implement any type of form decoding we want without
 | |
|             having to rewrite anything else in the server.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.FormDecoders.FormDecoderProvider.Decode(System.String,System.IO.Stream,System.Text.Encoding)">
 | |
|             <summary>
 | |
|             
 | |
|             </summary>
 | |
|             <param name="contentType">Should contain boundary and type, as in: multipart/form-data; boundary=---------------------------230051238959</param>
 | |
|             <param name="stream">Stream containing form data.</param>
 | |
|             <param name="encoding">Encoding used when decoding the stream</param>
 | |
|             <returns><see cref="F:HttpServer.HttpInput.Empty"/> if no parser was found.</returns>
 | |
|             <exception cref="T:System.ArgumentException">If stream is null or not readable.</exception>
 | |
|             <exception cref="T:System.IO.InvalidDataException">If stream contents cannot be decoded properly.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.FormDecoders.FormDecoderProvider.Add(HttpServer.FormDecoders.IFormDecoder)">
 | |
|             <summary>
 | |
|             Add a decoder.
 | |
|             </summary>
 | |
|             <param name="decoder"></param>
 | |
|             <exception cref="T:System.ArgumentNullException"></exception>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.FormDecoders.FormDecoderProvider.Count">
 | |
|             <summary>
 | |
|             Number of added decoders.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.FormDecoders.FormDecoderProvider.Decoders">
 | |
|             <summary>
 | |
|             Use with care.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.FormDecoders.FormDecoderProvider.DefaultDecoder">
 | |
|             <summary>
 | |
|             Decoder used for unknown content types.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.ExceptionHandler">
 | |
|             <summary>
 | |
|             We dont want to let the server to die due to exceptions thrown in worker threads.
 | |
|             therefore we use this delegate to give you a change to handle uncaught exceptions.
 | |
|             </summary>
 | |
|             <param name="source">Class that the exception was thrown in.</param>
 | |
|             <param name="exception">Exception</param>
 | |
|             <remarks>
 | |
|             Server will throw a InternalServerException in release version if you dont
 | |
|             handle this delegate.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpClientContext">
 | |
|             <summary>
 | |
|             Contains a connection to a browser/client.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Remember to <see cref="M:HttpServer.HttpClientContext.Start"/> after you have hooked the <see cref="E:HttpServer.HttpClientContext.RequestReceived"/> event.
 | |
|             </remarks>
 | |
|             TODO: Maybe this class should be broken up into HttpClientChannel and HttpClientContext?
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpClientContext.#ctor(System.Boolean,System.Net.IPEndPoint,System.IO.Stream,HttpServer.IRequestParserFactory,System.Int32,System.Net.Sockets.Socket)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpClientContext"/> class.
 | |
|             </summary>
 | |
|             <param name="secured">true if the connection is secured (SSL/TLS)</param>
 | |
|             <param name="remoteEndPoint">client that connected.</param>
 | |
|             <param name="stream">Stream used for communication</param>
 | |
|             <param name="parserFactory">Used to create a <see cref="T:HttpServer.IHttpRequestParser"/>.</param>
 | |
|             <param name="bufferSize">Size of buffer to use when reading data. Must be at least 4096 bytes.</param>
 | |
|             <exception cref="T:System.Net.Sockets.SocketException">If <see cref="M:System.Net.Sockets.Socket.BeginReceive(System.Byte[],System.Int32,System.Int32,System.Net.Sockets.SocketFlags,System.AsyncCallback,System.Object)"/> fails</exception>
 | |
|             <exception cref="T:System.ArgumentException">Stream must be writable and readable.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpClientContext.OnBodyBytesReceived(System.Object,HttpServer.Parser.BodyEventArgs)">
 | |
|             <summary>
 | |
|             Process incoming body bytes.
 | |
|             </summary>
 | |
|             <param name="sender"><see cref="T:HttpServer.IHttpRequestParser"/></param>
 | |
|             <param name="e">Bytes</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpClientContext.OnHeaderReceived(System.Object,HttpServer.Parser.HeaderEventArgs)">
 | |
|             <summary>
 | |
|             
 | |
|             </summary>
 | |
|             <param name="sender"></param>
 | |
|             <param name="e"></param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpClientContext.Start">
 | |
|             <summary>
 | |
|             Start reading content.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Make sure to call base.Start() if you override this method.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpClientContext.Cleanup">
 | |
|             <summary>
 | |
|             Clean up context.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Make sure to call base.Cleanup() if you override the method.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpClientContext.Disconnect(System.Net.Sockets.SocketError)">
 | |
|             <summary>
 | |
|             Disconnect from client
 | |
|             </summary>
 | |
|             <param name="error">error to report in the <see cref="E:HttpServer.HttpClientContext.Disconnected"/> event.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpClientContext.Respond(System.String,System.Net.HttpStatusCode,System.String,System.String,System.String)">
 | |
|             <summary>
 | |
|             Send a response.
 | |
|             </summary>
 | |
|             <param name="httpVersion">Either <see cref="F:HttpServer.HttpHelper.HTTP10"/> or <see cref="F:HttpServer.HttpHelper.HTTP11"/></param>
 | |
|             <param name="statusCode">HTTP status code</param>
 | |
|             <param name="reason">reason for the status code.</param>
 | |
|             <param name="body">HTML body contents, can be null or empty.</param>
 | |
|             <param name="contentType">A content type to return the body as, i.e. 'text/html' or 'text/plain', defaults to 'text/html' if null or empty</param>
 | |
|             <exception cref="T:System.ArgumentException">If <paramref name="httpVersion"/> is invalid.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpClientContext.Respond(System.String,System.Net.HttpStatusCode,System.String)">
 | |
|             <summary>
 | |
|             Send a response.
 | |
|             </summary>
 | |
|             <param name="httpVersion">Either <see cref="F:HttpServer.HttpHelper.HTTP10"/> or <see cref="F:HttpServer.HttpHelper.HTTP11"/></param>
 | |
|             <param name="statusCode">HTTP status code</param>
 | |
|             <param name="reason">reason for the status code.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpClientContext.Respond(System.String)">
 | |
|             <summary>
 | |
|             Send a response.
 | |
|             </summary>
 | |
|             <exception cref="T:System.ArgumentNullException"></exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpClientContext.Send(System.Byte[])">
 | |
|             <summary>
 | |
|             send a whole buffer
 | |
|             </summary>
 | |
|             <param name="buffer">buffer to send</param>
 | |
|             <exception cref="T:System.ArgumentNullException"></exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpClientContext.Send(System.Byte[],System.Int32,System.Int32)">
 | |
|             <summary>
 | |
|             Send data using the stream
 | |
|             </summary>
 | |
|             <param name="buffer">Contains data to send</param>
 | |
|             <param name="offset">Start position in buffer</param>
 | |
|             <param name="size">number of bytes to send</param>
 | |
|             <exception cref="T:System.ArgumentNullException"></exception>
 | |
|             <exception cref="T:System.ArgumentOutOfRangeException"></exception>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.HttpClientContext.Cleaned">
 | |
|             <summary>
 | |
|             This context have been cleaned, which means that it can be reused.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.HttpClientContext.Started">
 | |
|             <summary>
 | |
|             Context have been started (a new client have connected)
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpClientContext.CurrentRequest">
 | |
|             <summary>
 | |
|             Overload to specify own type.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Must be specified before the context is being used.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpClientContext.Secured">
 | |
|             <summary>
 | |
|             Using SSL or other encryption method.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpClientContext.IsSecured">
 | |
|             <summary>
 | |
|             Using SSL or other encryption method.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpClientContext.LogWriter">
 | |
|             <summary>
 | |
|             Specify which logger to use.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpClientContext.Stream">
 | |
|             <summary>
 | |
|             Gets or sets the network stream.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpClientContext.RemoteAddress">
 | |
|             <summary>
 | |
|             Gets or sets IP address that the client connected from.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpClientContext.RemotePort">
 | |
|             <summary>
 | |
|             Gets or sets port that the client connected from.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.HttpClientContext.Disconnected">
 | |
|             <summary>
 | |
|             The context have been disconnected.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Event can be used to clean up a context, or to reuse it.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.HttpClientContext.RequestReceived">
 | |
|             <summary>
 | |
|             A request have been received in the context.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Helpers.XmlHelper">
 | |
|             <summary>
 | |
|             Helpers to make XML handling easier
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.XmlHelper.Serialize(System.Object)">
 | |
|             <summary>
 | |
|             Serializes object to XML.
 | |
|             </summary>
 | |
|             <param name="value">object to serialize.</param>
 | |
|             <returns>XML</returns>
 | |
|             <remarks>
 | |
|             Removes name spaces and adds indentation
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.XmlHelper.Deserialize``1(System.String)">
 | |
|             <summary>
 | |
|             Create an object from a XML string
 | |
|             </summary>
 | |
|             <typeparam name="T">Type of object</typeparam>
 | |
|             <param name="xml">XML string</param>
 | |
|             <returns>object</returns>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.FormDecoders.UrlDecoder">
 | |
|             <summary>
 | |
|             Can handle application/x-www-form-urlencoded
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.FormDecoders.UrlDecoder.Decode(System.IO.Stream,System.String,System.Text.Encoding)">
 | |
|             <summary>
 | |
|             </summary>
 | |
|             <param name="stream">Stream containing the content</param>
 | |
|             <param name="contentType">Content type (with any additional info like boundry). Content type is always supplied in lower case</param>
 | |
|             <param name="encoding">Stream encoding</param>
 | |
|             <returns>
 | |
|             A HTTP form, or null if content could not be parsed.
 | |
|             </returns>
 | |
|             <exception cref="T:System.IO.InvalidDataException">If contents in the stream is not valid input data.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.FormDecoders.UrlDecoder.CanParse(System.String)">
 | |
|             <summary>
 | |
|             Checks if the decoder can handle the mime type
 | |
|             </summary>
 | |
|             <param name="contentType">Content type (with any additional info like boundry). Content type is always supplied in lower case.</param>
 | |
|             <returns>True if the decoder can parse the specified content type</returns>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.ClientAcceptedEventArgs">
 | |
|             <summary>
 | |
|             Invoked when a client have been accepted by the <see cref="T:HttpServer.HttpListener"/>
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Can be used to revoke incoming connections
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ClientAcceptedEventArgs.#ctor(System.Net.Sockets.Socket)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.ClientAcceptedEventArgs"/> class.
 | |
|             </summary>
 | |
|             <param name="socket">The socket.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ClientAcceptedEventArgs.Revoke">
 | |
|             <summary>
 | |
|             Client may not be handled.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.ClientAcceptedEventArgs.Socket">
 | |
|             <summary>
 | |
|             Accepted socket.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.ClientAcceptedEventArgs.Revoked">
 | |
|             <summary>
 | |
|             Client should be revoked.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Sessions.HttpSessionClearedArgs">
 | |
|             <summary>
 | |
|             Arguments sent when a <see cref="T:HttpServer.Sessions.IHttpSession"/> is cleared
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.HttpSessionClearedArgs.#ctor(System.Boolean)">
 | |
|             <summary>
 | |
|             Instantiates the arguments for the event
 | |
|             </summary>
 | |
|             <param name="expired">True if the session is cleared due to expiration</param>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Sessions.HttpSessionClearedArgs.Expired">
 | |
|             <summary>
 | |
|             Returns true if the session is cleared due to expiration
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Sessions.HttpSessionClearedHandler">
 | |
|             <summary>
 | |
|             Delegate for when a IHttpSession is cleared
 | |
|             </summary>
 | |
|             <param name="session"><see cref="T:HttpServer.Sessions.IHttpSession"/> this is being cleared.</param>
 | |
|             <param name="args">Arguments for the clearing</param>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Parser.HeaderEventArgs">
 | |
|             <summary>
 | |
|             Event arguments used when a new header have been parsed.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Parser.HeaderEventArgs.#ctor(System.String,System.String)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Parser.HeaderEventArgs"/> class.
 | |
|             </summary>
 | |
|             <param name="name">Name of header.</param>
 | |
|             <param name="value">Header value.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Parser.HeaderEventArgs.#ctor">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Parser.HeaderEventArgs"/> class.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Parser.HeaderEventArgs.Name">
 | |
|             <summary>
 | |
|             Gets or sets header name.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Parser.HeaderEventArgs.Value">
 | |
|             <summary>
 | |
|             Gets or sets header value.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Helpers.ResourceManager">
 | |
|             <summary>Class to handle loading of resource files</summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ResourceManager.#ctor">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Helpers.ResourceManager"/> class.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ResourceManager.#ctor(HttpServer.ILogWriter)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Helpers.ResourceManager"/> class.
 | |
|             </summary>
 | |
|             <param name="writer">logger.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ResourceManager.LoadResources(System.String,System.Reflection.Assembly,System.String)">
 | |
|             <summary>
 | |
|             Loads resources from a namespace in the given assembly to an URI
 | |
|             </summary>
 | |
|             <param name="toUri">The URI to map the resources to</param>
 | |
|             <param name="fromAssembly">The assembly in which the resources reside</param>
 | |
|             <param name="fromNamespace">The namespace from which to load the resources</param>
 | |
|             <usage>
 | |
|             <code>
 | |
|             resourceLoader.LoadResources("/user/", typeof(User).Assembly, "MyLib.Models.User.Views");
 | |
|             </code>
 | |
|             Will make the resource MyLib.Models.User.Views.list.Haml accessible via /user/list.haml or /user/list/
 | |
|             </usage>
 | |
|             <returns>The amount of loaded files, giving you the possibility of making sure the resources needed gets loaded</returns>
 | |
|             <exception cref="T:System.InvalidOperationException">If a resource has already been mapped to an uri</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ResourceManager.GetResourceStream(System.String)">
 | |
|             <summary>
 | |
|             Retrieves a stream for the specified resource path if loaded otherwise null
 | |
|             </summary>
 | |
|             <param name="path">Path to the resource to retrieve a stream for</param>
 | |
|             <returns>A stream or null if the resource couldn't be found</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ResourceManager.GetFiles(System.String)">
 | |
|             <summary>
 | |
|             Fetch all files from the resource that matches the specified arguments.
 | |
|             </summary>
 | |
|             <param name="path">The path to the resource to extract</param>
 | |
|             <returns>
 | |
|             a list of files if found; or an empty array if no files are found.
 | |
|             </returns>
 | |
|             <exception cref="T:System.ArgumentException">Search path must end with an asterisk for finding arbitrary files</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ResourceManager.GetFiles(System.String,System.String)">
 | |
|             <summary>
 | |
|             Fetch all files from the resource that matches the specified arguments.
 | |
|             </summary>
 | |
|             <param name="path">Where the file should reside.</param>
 | |
|             <param name="filename">Files to check</param>
 | |
|             <returns>
 | |
|             a list of files if found; or an empty array if no files are found.
 | |
|             </returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ResourceManager.ContainsResource(System.String)">
 | |
|             <summary>
 | |
|             Returns whether or not the loader has an instance of the file requested
 | |
|             </summary>
 | |
|             <param name="filename">The name of the template/file</param>
 | |
|             <returns>True if the loader can provide the file</returns>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Rules.RedirectRule">
 | |
|             <summary>
 | |
|             redirects from one URL to another.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Rules.IRule">
 | |
|             <summary>
 | |
|             Rules are used to perform operations before a request is being handled.
 | |
|             Rules can be used to create routing etc.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Rules.IRule.Process(HttpServer.IHttpRequest,HttpServer.IHttpResponse)">
 | |
|             <summary>
 | |
|             Process the incoming request.
 | |
|             </summary>
 | |
|             <param name="request">incoming HTTP request</param>
 | |
|             <param name="response">outgoing HTTP response</param>
 | |
|             <returns>true if response should be sent to the browser directly (no other rules or modules will be processed).</returns>
 | |
|             <remarks>
 | |
|             returning true means that no modules will get the request. Returning true is typically being done
 | |
|             for redirects.
 | |
|             </remarks>
 | |
|             <exception cref="T:System.ArgumentNullException">If request or response is null.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Rules.RedirectRule.#ctor(System.String,System.String)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Rules.RedirectRule"/> class.
 | |
|             </summary>
 | |
|             <param name="fromUrl">Absolute path (no server name)</param>
 | |
|             <param name="toUrl">Absolute path (no server name)</param>
 | |
|             <example>
 | |
|             server.Add(new RedirectRule("/", "/user/index"));
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Rules.RedirectRule.#ctor(System.String,System.String,System.Boolean)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Rules.RedirectRule"/> class.
 | |
|             </summary>
 | |
|             <param name="fromUrl">Absolute path (no server name)</param>
 | |
|             <param name="toUrl">Absolute path (no server name)</param>
 | |
|             <param name="shouldRedirect">true if request should be redirected, false if the request URI should be replaced.</param>
 | |
|             <example>
 | |
|             server.Add(new RedirectRule("/", "/user/index"));
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Rules.RedirectRule.Process(HttpServer.IHttpRequest,HttpServer.IHttpResponse)">
 | |
|             <summary>
 | |
|             Process the incoming request.
 | |
|             </summary>
 | |
|             <param name="request">incoming HTTP request</param>
 | |
|             <param name="response">outgoing HTTP response</param>
 | |
|             <returns>true if response should be sent to the browser directly (no other rules or modules will be processed).</returns>
 | |
|             <remarks>
 | |
|             returning true means that no modules will get the request. Returning true is typically being done
 | |
|             for redirects.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Rules.RedirectRule.FromUrl">
 | |
|             <summary>
 | |
|             Gets string to match request URI with.
 | |
|             </summary>
 | |
|             <remarks>Is compared to request.Uri.AbsolutePath</remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Rules.RedirectRule.ToUrl">
 | |
|             <summary>
 | |
|             Gets where to redirect.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Rules.RedirectRule.ShouldRedirect">
 | |
|             <summary>
 | |
|             Gets whether server should redirect client.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             <c>false</c> means that the rule will replace
 | |
|             the current request URI with the new one from this class.
 | |
|             <c>true</c> means that a redirect response is sent to the client.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.RequestQueue">
 | |
|             <summary>
 | |
|             Used to queue incoming requests.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.RequestQueue.#ctor(HttpServer.ProcessRequestHandler)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.RequestQueue"/> class.
 | |
|             </summary>
 | |
|             <param name="handler">Called when a request should be processed.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.RequestQueue.QueueThread">
 | |
|             <summary>
 | |
|             Used to process queued requests.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.RequestQueue.MaxRequestCount">
 | |
|             <summary>
 | |
|             Gets or sets maximum number of allowed simultaneous requests.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.RequestQueue.MaxQueueSize">
 | |
|             <summary>
 | |
|             Gets or sets maximum number of requests queuing to be handled.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.RequestQueue.CurrentRequestCount">
 | |
|             <summary>
 | |
|             Specifies how many requests the HTTP server is currently processing.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.RequestQueue.QueueItem">
 | |
|             <summary>
 | |
|             Used two queue incoming requests to avoid
 | |
|             thread starvation.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.ProcessRequestHandler">
 | |
|             <summary>
 | |
|             Method used to process a queued request
 | |
|             </summary>
 | |
|             <param name="context">Context that the request was received from.</param>
 | |
|             <param name="request">Request to process.</param>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Parser.HttpRequestParser">
 | |
|             <summary>
 | |
|             Parses a HTTP request directly from a stream
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.IHttpRequestParser">
 | |
|             <summary>
 | |
|             Event driven parser used to parse incoming HTTP requests.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             The parser supports partial messages and keeps the states between
 | |
|             each parsed buffer. It's therefore important that the parser gets
 | |
|             <see cref="M:HttpServer.IHttpRequestParser.Clear"/>ed if a client disconnects.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpRequestParser.Parse(System.Byte[],System.Int32,System.Int32)">
 | |
|             <summary>
 | |
|             Parse partial or complete message.
 | |
|             </summary>
 | |
|             <param name="buffer">buffer containing incoming bytes</param>
 | |
|             <param name="offset">where in buffer that parsing should start</param>
 | |
|             <param name="count">number of bytes to parse</param>
 | |
|             <returns>Unparsed bytes left in buffer.</returns>
 | |
|             <exception cref="T:HttpServer.Exceptions.BadRequestException"><c>BadRequestException</c>.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpRequestParser.Clear">
 | |
|             <summary>
 | |
|             Clear parser state.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequestParser.CurrentState">
 | |
|             <summary>
 | |
|             Current state in parser.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.IHttpRequestParser.RequestCompleted">
 | |
|             <summary>
 | |
|             A request have been successfully parsed.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.IHttpRequestParser.BodyBytesReceived">
 | |
|             <summary>
 | |
|             More body bytes have been received.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.IHttpRequestParser.RequestLineReceived">
 | |
|             <summary>
 | |
|             Request line have been received.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.IHttpRequestParser.HeaderReceived">
 | |
|             <summary>
 | |
|             A header have been received.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpRequestParser.LogWriter">
 | |
|             <summary>
 | |
|             Gets or sets the log writer.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Parser.HttpRequestParser.#ctor(HttpServer.ILogWriter)">
 | |
|             <summary>
 | |
|             Create a new request parser
 | |
|             </summary>
 | |
|             <param name="logWriter">delegate receiving log entries.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Parser.HttpRequestParser.AddToBody(System.Byte[],System.Int32,System.Int32)">
 | |
|             <summary>
 | |
|             Add a number of bytes to the body
 | |
|             </summary>
 | |
|             <param name="buffer">buffer containing more body bytes.</param>
 | |
|             <param name="offset">starting offset in buffer</param>
 | |
|             <param name="count">number of bytes, from offset, to read.</param>
 | |
|             <returns>offset to continue from.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Parser.HttpRequestParser.Clear">
 | |
|             <summary>
 | |
|             Remove all state information for the request.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Parser.HttpRequestParser.OnFirstLine(System.String)">
 | |
|             <summary>
 | |
|             Parse request line
 | |
|             </summary>
 | |
|             <param name="value"></param>
 | |
|             <exception cref="T:HttpServer.Exceptions.BadRequestException">If line is incorrect</exception>
 | |
|             <remarks>Expects the following format: "Method SP Request-URI SP HTTP-Version CRLF"</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Parser.HttpRequestParser.OnHeader(System.String,System.String)">
 | |
|             <summary>
 | |
|             We've parsed a new header.
 | |
|             </summary>
 | |
|             <param name="name">Name in lower case</param>
 | |
|             <param name="value">Value, unmodified.</param>
 | |
|             <exception cref="T:HttpServer.Exceptions.BadRequestException">If content length cannot be parsed.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Parser.HttpRequestParser.Parse(System.Byte[],System.Int32,System.Int32)">
 | |
|             <summary>
 | |
|             Parse a message
 | |
|             </summary>
 | |
|             <param name="buffer">bytes to parse.</param>
 | |
|             <param name="offset">where in buffer that parsing should start</param>
 | |
|             <param name="count">number of bytes to parse, starting on <paramref name="offset"/>.</param>
 | |
|             <returns>offset (where to start parsing next).</returns>
 | |
|             <exception cref="T:HttpServer.Exceptions.BadRequestException"><c>BadRequestException</c>.</exception>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Parser.HttpRequestParser.LogWriter">
 | |
|             <summary>
 | |
|             Gets or sets the log writer.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Parser.HttpRequestParser.CurrentState">
 | |
|             <summary>
 | |
|             Current state in parser.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.Parser.HttpRequestParser.RequestCompleted">
 | |
|             <summary>
 | |
|             A request have been successfully parsed.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.Parser.HttpRequestParser.BodyBytesReceived">
 | |
|             <summary>
 | |
|             More body bytes have been received.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.Parser.HttpRequestParser.RequestLineReceived">
 | |
|             <summary>
 | |
|             Request line have been received.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.Parser.HttpRequestParser.HeaderReceived">
 | |
|             <summary>
 | |
|             A header have been received.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.IHttpResponse">
 | |
|             <summary>
 | |
|             Response that is sent back to the web browser / client.
 | |
|             
 | |
|             A response can be sent if different ways. The easiest one is
 | |
|             to just fill the Body stream with content, everything else
 | |
|             will then be taken care of by the framework. The default content-type
 | |
|             is text/html, you should change it if you send anything else.
 | |
|             
 | |
|             The second and slighty more complex way is to send the response
 | |
|             as parts. Start with sending the header using the SendHeaders method and 
 | |
|             then you can send the body using SendBody method, but do not forget
 | |
|             to set ContentType and ContentLength before doing so.
 | |
|             </summary>
 | |
|             <example>
 | |
|             public void MyHandler(IHttpRequest request, IHttpResponse response)
 | |
|             {
 | |
|               
 | |
|             }
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpResponse.AddHeader(System.String,System.String)">
 | |
|             <summary>
 | |
|             Add another header to the document.
 | |
|             </summary>
 | |
|             <param name="name">Name of the header, case sensitive, use lower cases.</param>
 | |
|             <param name="value">Header values can span over multiple lines as long as each line starts with a white space. New line chars should be \r\n</param>
 | |
|             <exception cref="T:System.InvalidOperationException">If headers already been sent.</exception>
 | |
|             <exception cref="T:System.ArgumentException">If value conditions have not been met.</exception>
 | |
|             <remarks>Adding any header will override the default ones and those specified by properties.</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpResponse.Send">
 | |
|             <summary>
 | |
|             Send headers and body to the browser.
 | |
|             </summary>
 | |
|             <exception cref="T:System.InvalidOperationException">If content have already been sent.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpResponse.SendBody(System.Byte[],System.Int32,System.Int32)">
 | |
|             <summary>
 | |
|             Make sure that you have specified ContentLength and sent the headers first.
 | |
|             </summary>
 | |
|             <param name="buffer"></param>
 | |
|             <exception cref="T:System.InvalidOperationException">If headers have not been sent.</exception>
 | |
|             <see cref="M:HttpServer.IHttpResponse.SendHeaders"/>
 | |
|             <param name="offset">offest of first byte to send</param>
 | |
|             <param name="count">number of bytes to send.</param>
 | |
|             <seealso cref="M:HttpServer.IHttpResponse.Send"/>
 | |
|             <seealso cref="M:HttpServer.IHttpResponse.SendHeaders"/>
 | |
|             <remarks>This method can be used if you want to send body contents without caching them first. This
 | |
|             is recommended for larger files to keep the memory usage low.</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpResponse.SendBody(System.Byte[])">
 | |
|             <summary>
 | |
|             Make sure that you have specified ContentLength and sent the headers first.
 | |
|             </summary>
 | |
|             <param name="buffer"></param>
 | |
|             <exception cref="T:System.InvalidOperationException">If headers have not been sent.</exception>
 | |
|             <see cref="M:HttpServer.IHttpResponse.SendHeaders"/>
 | |
|             <seealso cref="M:HttpServer.IHttpResponse.Send"/>
 | |
|             <seealso cref="M:HttpServer.IHttpResponse.SendHeaders"/>
 | |
|             <remarks>This method can be used if you want to send body contents without caching them first. This
 | |
|             is recommended for larger files to keep the memory usage low.</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpResponse.SendHeaders">
 | |
|             <summary>
 | |
|             Send headers to the client.
 | |
|             </summary>
 | |
|             <exception cref="T:System.InvalidOperationException">If headers already been sent.</exception>
 | |
|             <seealso cref="M:HttpServer.IHttpResponse.AddHeader(System.String,System.String)"/>
 | |
|             <seealso cref="M:HttpServer.IHttpResponse.Send"/>
 | |
|             <seealso cref="M:HttpServer.IHttpResponse.SendBody(System.Byte[])"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpResponse.Redirect(System.Uri)">
 | |
|             <summary>
 | |
|             Redirect client to somewhere else using the 302 status code.
 | |
|             </summary>
 | |
|             <param name="uri">Destination of the redirect</param>
 | |
|             <exception cref="T:System.InvalidOperationException">If headers already been sent.</exception>
 | |
|             <remarks>You can not do anything more with the request when a redirect have been done. This should be your last
 | |
|             action.</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpResponse.Redirect(System.String)">
 | |
|             <summary>
 | |
|             redirect to somewhere
 | |
|             </summary>
 | |
|             <param name="url">where the redirect should go</param>
 | |
|             <remarks>
 | |
|             No body are allowed when doing redirects.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpResponse.Body">
 | |
|             <summary>
 | |
|             The body stream is used to cache the body contents
 | |
|             before sending everything to the client. It's the simplest
 | |
|             way to serve documents.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpResponse.ProtocolVersion">
 | |
|             <summary>
 | |
|             Defines the version of the HTTP Response for applications where it's required
 | |
|             for this to be forced.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpResponse.Chunked">
 | |
|             <summary>
 | |
|             The chunked encoding modifies the body of a message in order to
 | |
|             transfer it as a series of chunks, each with its own size indicator,
 | |
|             followed by an OPTIONAL trailer containing entity-header fields. This
 | |
|             allows dynamically produced content to be transferred along with the
 | |
|             information necessary for the recipient to verify that it has
 | |
|             received the full message.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpResponse.Connection">
 | |
|             <summary>
 | |
|             Kind of connection
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpResponse.Encoding">
 | |
|             <summary>
 | |
|             Encoding to use when sending stuff to the client.
 | |
|             </summary>
 | |
|             <remarks>Default is UTF8</remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpResponse.KeepAlive">
 | |
|             <summary>
 | |
|             Number of seconds to keep connection alive
 | |
|             </summary>
 | |
|             <remarks>Only used if Connection property is set to ConnectionType.KeepAlive</remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpResponse.Status">
 | |
|             <summary>
 | |
|             Status code that is sent to the client.
 | |
|             </summary>
 | |
|             <remarks>Default is HttpStatusCode.Ok</remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpResponse.Reason">
 | |
|             <summary>
 | |
|             Information about why a specific status code was used.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpResponse.ContentLength">
 | |
|             <summary>
 | |
|             Size of the body. MUST be specified before sending the header,
 | |
|             unless property Chunked is set to true.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpResponse.ContentType">
 | |
|             <summary>
 | |
|             Kind of content in the body
 | |
|             </summary>
 | |
|             <remarks>Default is text/html</remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpResponse.HeadersSent">
 | |
|             <summary>
 | |
|             Headers have been sent to the client-
 | |
|             </summary>
 | |
|             <remarks>You can not send any additional headers if they have already been sent.</remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpResponse.Sent">
 | |
|             <summary>
 | |
|             The whole response have been sent.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.IHttpResponse.Cookies">
 | |
|             <summary>
 | |
|             Cookies that should be created/changed.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.ConnectionType">
 | |
|             <summary>
 | |
|             Type of HTTP connection
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.ConnectionType.Close">
 | |
|             <summary>
 | |
|             Connection is closed after each request-response
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.ConnectionType.KeepAlive">
 | |
|             <summary>
 | |
|             Connection is kept alive for X seconds (unless another request have been made)
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpResponse">
 | |
|             <summary>
 | |
|             Response that is sent back to the web browser / client.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             <para>
 | |
|             A response can be sent if different ways. The easiest one is
 | |
|             to just fill the Body stream with content, everything else
 | |
|             will then be taken care of by the framework. The default content-type
 | |
|             is text/html, you should change it if you send anything else.
 | |
|             </para><para>
 | |
|             The second and slightly more complex way is to send the response
 | |
|             as parts. Start with sending the header using the SendHeaders method and 
 | |
|             then you can send the body using SendBody method, but do not forget
 | |
|             to set <see cref="P:HttpServer.HttpResponse.ContentType"/> and <see cref="P:HttpServer.HttpResponse.ContentLength"/> before doing so.
 | |
|             </para>
 | |
|             </remarks>
 | |
|             <example>
 | |
|             <code>
 | |
|             // Example using response body.
 | |
|             class MyModule : HttpModule
 | |
|             {
 | |
|             		public override bool Process(IHttpRequest request, IHttpResponse response, IHttpSession session)
 | |
|             		{
 | |
|             			StreamWriter writer = new StreamWriter(response.Body);
 | |
|             			writer.WriteLine("Hello dear World!");
 | |
|             			writer.Flush();
 | |
|             
 | |
|             			// return true to tell webserver that we've handled the url
 | |
|             			return true;
 | |
|             		}
 | |
|             }
 | |
|             </code>
 | |
|             </example>
 | |
|             todo: add two examples, using SendHeaders/SendBody and just the Body stream.
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpResponse.#ctor(HttpServer.IHttpClientContext,HttpServer.IHttpRequest)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.IHttpResponse"/> class.
 | |
|             </summary>
 | |
|             <param name="context">Client that send the <see cref="T:HttpServer.IHttpRequest"/>.</param>
 | |
|             <param name="request">Contains information of what the client want to receive.</param>
 | |
|             <exception cref="T:System.ArgumentException"><see cref="P:HttpServer.IHttpRequest.HttpVersion"/> cannot be empty.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpResponse.#ctor(HttpServer.IHttpClientContext,System.String,HttpServer.ConnectionType)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.IHttpResponse"/> class.
 | |
|             </summary>
 | |
|             <param name="context">Client that send the <see cref="T:HttpServer.IHttpRequest"/>.</param>
 | |
|             <param name="httpVersion">Version of HTTP protocol that the client uses.</param>
 | |
|             <param name="connectionType">Type of HTTP connection used.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpResponse.AddHeader(System.String,System.String)">
 | |
|             <summary>
 | |
|             Add another header to the document.
 | |
|             </summary>
 | |
|             <param name="name">Name of the header, case sensitive, use lower cases.</param>
 | |
|             <param name="value">Header values can span over multiple lines as long as each line starts with a white space. New line chars should be \r\n</param>
 | |
|             <exception cref="T:System.InvalidOperationException">If headers already been sent.</exception>
 | |
|             <exception cref="T:System.ArgumentException">If value conditions have not been met.</exception>
 | |
|             <remarks>Adding any header will override the default ones and those specified by properties.</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpResponse.Send">
 | |
|             <summary>
 | |
|             Send headers and body to the browser.
 | |
|             </summary>
 | |
|             <exception cref="T:System.InvalidOperationException">If content have already been sent.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpResponse.SendBody(System.Byte[],System.Int32,System.Int32)">
 | |
|             <summary>
 | |
|             Make sure that you have specified <see cref="P:HttpServer.HttpResponse.ContentLength"/> and sent the headers first.
 | |
|             </summary>
 | |
|             <param name="buffer"></param>
 | |
|             <exception cref="T:System.InvalidOperationException">If headers have not been sent.</exception>
 | |
|             <see cref="M:HttpServer.HttpResponse.SendHeaders"/>
 | |
|             <param name="offset">offset of first byte to send</param>
 | |
|             <param name="count">number of bytes to send.</param>
 | |
|             <seealso cref="M:HttpServer.HttpResponse.Send"/>
 | |
|             <seealso cref="M:HttpServer.HttpResponse.SendHeaders"/>
 | |
|             <remarks>This method can be used if you want to send body contents without caching them first. This
 | |
|             is recommended for larger files to keep the memory usage low.</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpResponse.SendBody(System.Byte[])">
 | |
|             <summary>
 | |
|             Make sure that you have specified <see cref="P:HttpServer.HttpResponse.ContentLength"/> and sent the headers first.
 | |
|             </summary>
 | |
|             <param name="buffer"></param>
 | |
|             <exception cref="T:System.InvalidOperationException">If headers have not been sent.</exception>
 | |
|             <see cref="M:HttpServer.HttpResponse.SendHeaders"/>
 | |
|             <seealso cref="M:HttpServer.HttpResponse.Send"/>
 | |
|             <seealso cref="M:HttpServer.HttpResponse.SendHeaders"/>
 | |
|             <remarks>This method can be used if you want to send body contents without caching them first. This
 | |
|             is recommended for larger files to keep the memory usage low.</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpResponse.SendHeaders">
 | |
|             <summary>
 | |
|             Send headers to the client.
 | |
|             </summary>
 | |
|             <exception cref="T:System.InvalidOperationException">If headers already been sent.</exception>
 | |
|             <seealso cref="M:HttpServer.HttpResponse.AddHeader(System.String,System.String)"/>
 | |
|             <seealso cref="M:HttpServer.HttpResponse.Send"/>
 | |
|             <seealso cref="M:HttpServer.HttpResponse.SendBody(System.Byte[])"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpResponse.Redirect(System.Uri)">
 | |
|             <summary>
 | |
|             Redirect client to somewhere else using the 302 status code.
 | |
|             </summary>
 | |
|             <param name="uri">Destination of the redirect</param>
 | |
|             <exception cref="T:System.InvalidOperationException">If headers already been sent.</exception>
 | |
|             <remarks>You can not do anything more with the request when a redirect have been done. This should be your last
 | |
|             action.</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpResponse.Redirect(System.String)">
 | |
|             <summary>
 | |
|             redirect to somewhere
 | |
|             </summary>
 | |
|             <param name="url">where the redirect should go</param>
 | |
|             <remarks>
 | |
|             No body are allowed when doing redirects.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpResponse.Body">
 | |
|             <summary>
 | |
|             The body stream is used to cache the body contents
 | |
|             before sending everything to the client. It's the simplest
 | |
|             way to serve documents.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpResponse.Chunked">
 | |
|             <summary>
 | |
|             The chunked encoding modifies the body of a message in order to
 | |
|             transfer it as a series of chunks, each with its own size indicator,
 | |
|             followed by an OPTIONAL trailer containing entity-header fields. This
 | |
|             allows dynamically produced content to be transferred along with the
 | |
|             information necessary for the recipient to verify that it has
 | |
|             received the full message.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpResponse.ProtocolVersion">
 | |
|             <summary>
 | |
|             Defines the version of the HTTP Response for applications where it's required
 | |
|             for this to be forced.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpResponse.Connection">
 | |
|             <summary>
 | |
|             Kind of connection
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpResponse.Encoding">
 | |
|             <summary>
 | |
|             Encoding to use when sending stuff to the client.
 | |
|             </summary>
 | |
|             <remarks>Default is UTF8</remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpResponse.KeepAlive">
 | |
|             <summary>
 | |
|             Number of seconds to keep connection alive
 | |
|             </summary>
 | |
|             <remarks>Only used if Connection property is set to <see cref="F:HttpServer.ConnectionType.KeepAlive"/>.</remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpResponse.Status">
 | |
|             <summary>
 | |
|             Status code that is sent to the client.
 | |
|             </summary>
 | |
|             <remarks>Default is <see cref="F:System.Net.HttpStatusCode.OK"/></remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpResponse.Reason">
 | |
|             <summary>
 | |
|             Information about why a specific status code was used.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpResponse.ContentLength">
 | |
|             <summary>
 | |
|             Size of the body. MUST be specified before sending the header,
 | |
|             unless property Chunked is set to true.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpResponse.ContentType">
 | |
|             <summary>
 | |
|             Kind of content in the body
 | |
|             </summary>
 | |
|             <remarks>Default type is "text/html"</remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpResponse.HeadersSent">
 | |
|             <summary>
 | |
|             Headers have been sent to the client-
 | |
|             </summary>
 | |
|             <remarks>You can not send any additional headers if they have already been sent.</remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpResponse.Sent">
 | |
|             <summary>
 | |
|             The whole response have been sent.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpResponse.Cookies">
 | |
|             <summary>
 | |
|             Cookies that should be created/changed.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpInputItem">
 | |
|             <summary>
 | |
|             represents a HTTP input item. Each item can have multiple sub items, a sub item
 | |
|             is made in a HTML form by using square brackets
 | |
|             </summary>
 | |
|             <example>
 | |
|               // <input type="text" name="user[FirstName]" value="jonas" /> becomes:
 | |
|               Console.WriteLine("Value: {0}", form["user"]["FirstName"].Value);
 | |
|             </example>
 | |
|             <remarks>
 | |
|             All names in a form SHOULD be in lowercase.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.HttpInputItem.Empty">
 | |
|             <summary> Representation of a non-initialized <see cref="T:HttpServer.HttpInputItem"/>.</summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInputItem.#ctor(System.String,System.String)">
 | |
|             <summary>
 | |
|             Initializes an input item setting its name/identifier and value
 | |
|             </summary>
 | |
|             <param name="name">Parameter name/id</param>
 | |
|             <param name="value">Parameter value</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInputItem.#ctor(HttpServer.HttpInputItem)">
 | |
|             <summary>Creates a deep copy of the item specified</summary>
 | |
|             <param name="item">The item to copy</param>
 | |
|             <remarks>The function makes a deep copy of quite a lot which can be slow</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInputItem.Add(System.String)">
 | |
|             <summary>
 | |
|             Add another value to this item
 | |
|             </summary>
 | |
|             <param name="value">Value to add.</param>
 | |
|             <exception cref="T:System.InvalidOperationException">Cannot add stuff to <see cref="F:HttpServer.HttpInput.Empty"/>.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInputItem.Contains(System.String)">
 | |
|             <summary>
 | |
|             checks if a sub-item exists (and has a value).
 | |
|             </summary>
 | |
|             <param name="name">name in lower case</param>
 | |
|             <returns>true if the sub-item exists and has a value; otherwise false.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInputItem.ToString">
 | |
|             <summary> Returns a formatted representation of the instance with the values of all contained parameters </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInputItem.ToString(System.String,System.Boolean)">
 | |
|             <summary>
 | |
|             Outputs the string in a formatted manner
 | |
|             </summary>
 | |
|             <param name="prefix">A prefix to append, used internally</param>
 | |
|             <param name="asQuerySting">produce a query string</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInputItem.Add(System.String,System.String)">
 | |
|             <summary>
 | |
|             Add a sub item.
 | |
|             </summary>
 | |
|             <param name="name">Can contain array formatting, the item is then parsed and added in multiple levels</param>
 | |
|             <param name="value">Value to add.</param>
 | |
|             <exception cref="T:System.ArgumentNullException">Argument is null.</exception>
 | |
|             <exception cref="T:System.InvalidOperationException">Cannot add stuff to <see cref="F:HttpServer.HttpInput.Empty"/>.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInputItem.System#Collections#Generic#IEnumerable{HttpServer#HttpInputItem}#GetEnumerator">
 | |
|             <summary>
 | |
|             Returns an enumerator that iterates through the collection.
 | |
|             </summary>
 | |
|             
 | |
|             <returns>
 | |
|             A <see cref="T:System.Collections.Generic.IEnumerator`1"></see> that can be used to iterate through the collection.
 | |
|             </returns>
 | |
|             <filterpriority>1</filterpriority>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInputItem.GetEnumerator">
 | |
|             <summary>
 | |
|             Returns an enumerator that iterates through a collection.
 | |
|             </summary>
 | |
|             
 | |
|             <returns>
 | |
|             An <see cref="T:System.Collections.IEnumerator"></see> object that can be used to iterate through the collection.
 | |
|             </returns>
 | |
|             <filterpriority>2</filterpriority>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpInputItem.ToString(System.String)">
 | |
|             <summary>
 | |
|             Outputs the string in a formatted manner
 | |
|             </summary>
 | |
|             <param name="prefix">A prefix to append, used internally</param>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpInputItem.Count">
 | |
|             <summary>
 | |
|             Number of values
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpInputItem.Item(System.String)">
 | |
|             <summary>
 | |
|             Get a sub item
 | |
|             </summary>
 | |
|             <param name="name">name in lower case.</param>
 | |
|             <returns><see cref="F:HttpServer.HttpInputItem.Empty"/> if no item was found.</returns>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpInputItem.Name">
 | |
|             <summary>
 | |
|             Name of item (in lower case).
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpInputItem.Value">
 | |
|             <summary>
 | |
|             Returns the first value, or null if no value exist.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpInputItem.LastValue">
 | |
|             <summary>
 | |
|             Returns the last value, or null if no value exist.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpInputItem.Values">
 | |
|             <summary>
 | |
|             Returns the list with values.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpInputItem.HttpServer#IHttpInput#Item(System.String)">
 | |
|             <summary>
 | |
|             
 | |
|             </summary>
 | |
|             <param name="name">name in lower case</param>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Helpers.FormHelper">
 | |
|             <summary>
 | |
|             Helpers making it easier to work with forms.
 | |
|             </summary>
 | |
|             <seealso cref="T:HttpServer.Helpers.ObjectForm"/>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Helpers.FormHelper.JSImplementation">
 | |
|             <summary>
 | |
|             Used to let the website use different JavaScript libraries.
 | |
|             Default is <see cref="T:HttpServer.Helpers.Implementations.PrototypeImp"/>
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.FormHelper.Start(System.String,System.String,System.Boolean,System.String[])">
 | |
|             <summary>
 | |
|             Create a <form> tag.
 | |
|             </summary>
 | |
|             <param name="id">name of form</param>
 | |
|             <param name="action">action to invoke on submit</param>
 | |
|             <param name="isAjax">form should be posted as Ajax</param>
 | |
|             <returns>HTML code</returns>
 | |
|             <example>
 | |
|             <code>
 | |
|             // without options
 | |
|             WebHelper.FormStart("frmLogin", "/user/login", Request.IsAjax);
 | |
|             
 | |
|             // with options
 | |
|             WebHelper.FormStart("frmLogin", "/user/login", Request.IsAjax, "style", "display:inline", "class", "greenForm");
 | |
|             </code>
 | |
|             </example>
 | |
|             <param name="options">HTML attributes or JavaScript options.</param>
 | |
|             <remarks>Method will ALWAYS be POST.</remarks>
 | |
|             <exception cref="T:System.ArgumentException">options must consist of name, value, name, value</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.FormHelper.Select(System.String,System.Collections.IEnumerable,HttpServer.Helpers.GetIdTitle,System.Object,System.Boolean)">
 | |
|             <summary>
 | |
|             Creates a select list with the values in a collection.
 | |
|             </summary>
 | |
|             <param name="name">Name of the SELECT-tag</param>
 | |
|             <param name="collection">collection used to generate options.</param>
 | |
|             <param name="getIdTitle">delegate used to return id and title from objects.</param>
 | |
|             <param name="selectedValue">value that should be marked as selected.</param>
 | |
|             <param name="firstEmpty">First row should contain an empty value.</param>
 | |
|             <returns>string containing a SELECT-tag.</returns>
 | |
|             <seealso cref="T:HttpServer.Helpers.GetIdTitle"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.FormHelper.Select(System.String,System.String,System.Collections.IEnumerable,HttpServer.Helpers.GetIdTitle,System.Object,System.Boolean)">
 | |
|             <summary>
 | |
|             Creates a select list with the values in a collection.
 | |
|             </summary>
 | |
|             <param name="name">Name of the SELECT-tag</param>
 | |
|             <param name="id">Id of the SELECT-tag</param>
 | |
|             <param name="collection">collection used to generate options.</param>
 | |
|             <param name="getIdTitle">delegate used to return id and title from objects.</param>
 | |
|             <param name="selectedValue">value that should be marked as selected.</param>
 | |
|             <param name="firstEmpty">First row should contain an empty value.</param>
 | |
|             <returns>string containing a SELECT-tag.</returns>
 | |
|             <seealso cref="T:HttpServer.Helpers.GetIdTitle"/>
 | |
|             <example>
 | |
|             <code>
 | |
|             // Class that is going to be used in a SELECT-tag.
 | |
|             public class User
 | |
|             {
 | |
|                 private readonly string _realName;
 | |
|                 private readonly int _id;
 | |
|                 public User(int id, string realName)
 | |
|                 {
 | |
|                     _id = id;
 | |
|                     _realName = realName;
 | |
|                 }
 | |
|                 public string RealName
 | |
|                 {
 | |
|                     get { return _realName; }
 | |
|                 }
 | |
|             
 | |
|                 public int Id
 | |
|                 {
 | |
|                     get { return _id; }
 | |
|                 }
 | |
|             }
 | |
|             
 | |
|             // Using an inline delegate to generate the select list
 | |
|             public void UserInlineDelegate()
 | |
|             {
 | |
|                 List<User> items = new List<User>();
 | |
|                 items.Add(new User(1, "adam"));
 | |
|                 items.Add(new User(2, "bertial"));
 | |
|                 items.Add(new User(3, "david"));
 | |
|                 string htmlSelect = Select("users", "users", items, delegate(object o, out object id, out object value)
 | |
|                                                                     {
 | |
|                                                                         User user = (User)o;
 | |
|                                                                         id = user.Id;
 | |
|                                                                         value = user.RealName;
 | |
|                                                                     }, 2, true);
 | |
|             }
 | |
|             
 | |
|             // Using an method as delegate to generate the select list.
 | |
|             public void UseExternalDelegate()
 | |
|             {
 | |
|                 List<User> items = new List<User>();
 | |
|                 items.Add(new User(1, "adam"));
 | |
|                 items.Add(new User(2, "bertial"));
 | |
|                 items.Add(new User(3, "david"));
 | |
|                 string htmlSelect = Select("users", "users", items, UserOptions, 1, true);
 | |
|             }
 | |
|             
 | |
|             // delegate returning id and title
 | |
|             public static void UserOptions(object o, out object id, out object title)
 | |
|             {
 | |
|                 User user = (User)o;
 | |
|                 id = user.Id;
 | |
|                 value = user.RealName;
 | |
|             }
 | |
|             </code>
 | |
|             </example>
 | |
|             <exception cref="T:System.ArgumentNullException"><c>name</c>, <c>id</c>, <c>collection</c> or <c>getIdTitle</c> is null.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.FormHelper.Select(System.String,System.String,System.Collections.IEnumerable,HttpServer.Helpers.GetIdTitle,System.Object,System.Boolean,System.String[])">
 | |
|             <summary>
 | |
|             Creates a select list with the values in a collection.
 | |
|             </summary>
 | |
|             <param name="name">Name of the SELECT-tag</param>
 | |
|             <param name="id">Id of the SELECT-tag</param>
 | |
|             <param name="collection">collection used to generate options.</param>
 | |
|             <param name="getIdTitle">delegate used to return id and title from objects.</param>
 | |
|             <param name="selectedValue">value that should be marked as selected.</param>
 | |
|             <param name="firstEmpty">First row should contain an empty value.</param>
 | |
|             <param name="htmlAttributes">name, value collection of extra HTML attributes.</param>
 | |
|             <returns>string containing a SELECT-tag.</returns>
 | |
|             <seealso cref="T:HttpServer.Helpers.GetIdTitle"/>
 | |
|             <exception cref="T:System.ArgumentNullException"><c>name</c>, <c>id</c>, <c>collection</c> or <c>getIdTitle</c> is null.</exception>
 | |
|             <exception cref="T:System.ArgumentException">Invalid HTML attribute list.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.FormHelper.Options(System.Collections.IEnumerable,HttpServer.Helpers.GetIdTitle,System.Object,System.Boolean)">
 | |
|             <summary>
 | |
|             Generate a list of HTML options
 | |
|             </summary>
 | |
|             <param name="collection">collection used to generate options.</param>
 | |
|             <param name="getIdTitle">delegate used to return id and title from objects.</param>
 | |
|             <param name="selectedValue">value that should be marked as selected.</param>
 | |
|             <param name="firstEmpty">First row should contain an empty value.</param>
 | |
|             <returns></returns>
 | |
|             <exception cref="T:System.ArgumentNullException"><c>collection</c> or <c>getIdTitle</c> is null.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.FormHelper.Options(System.Text.StringBuilder,System.Collections.IEnumerable,HttpServer.Helpers.GetIdTitle,System.Object,System.Boolean)">
 | |
|             <exception cref="T:System.ArgumentNullException"><c>sb</c> is null.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.FormHelper.CheckBox(System.String,System.Object,System.Object,System.String[])">
 | |
|             <summary>
 | |
|             Creates a check box.
 | |
|             </summary>
 | |
|             <param name="name">element name</param>
 | |
|             <param name="value">element value</param>
 | |
|             <param name="isChecked">determines if the check box is selected or not. This is done differently depending on the
 | |
|             type of variable. A boolean simply triggers checked or not, all other types are compared with "value" to determine if 
 | |
|             the box is checked or not. </param>
 | |
|             <param name="htmlAttributes">a list with additional attributes (name, value, name, value).</param>
 | |
|             <returns>a generated radio button</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.FormHelper.CheckBox(System.String,System.String,System.Object,System.Object,System.String[])">
 | |
|             <summary>
 | |
|             Creates a check box.
 | |
|             </summary>
 | |
|             <param name="name">element name</param>
 | |
|             <param name="id">element id</param>
 | |
|             <param name="value">element value</param>
 | |
|             <param name="isChecked">determines if the check box is selected or not. This is done differently depending on the
 | |
|             type of variable. A boolean simply triggers checked or not, all other types are compared with "value" to determine if 
 | |
|             the box is checked or not. </param>
 | |
|             <param name="htmlAttributes">a list with additional attributes (name, value, name, value).</param>
 | |
|             <returns>a generated radio button</returns>
 | |
|             <remarks>
 | |
|             value in your business object. (check box will be selected if it matches the element value)
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.FormHelper.CheckBox(System.String,System.String,System.Object,System.String[])">
 | |
|             <summary>
 | |
|             Creates a check box.
 | |
|             </summary>
 | |
|             <param name="name">element name</param>
 | |
|             <param name="id">element id</param>
 | |
|             <param name="isChecked">determines if the check box is selected or not. This is done differently depending on the
 | |
|             type of variable. A boolean simply triggers checked or not, all other types are compared with "value" to determine if 
 | |
|             the box is checked or not. </param>
 | |
|             <param name="htmlAttributes">a list with additional attributes (name, value, name, value).</param>
 | |
|             <returns>a generated radio button</returns>
 | |
|             <remarks>will set value to "1".</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.FormHelper.RadioButton(System.String,System.Object,System.Object,System.String[])">
 | |
|             <summary>
 | |
|             Creates a RadioButton.
 | |
|             </summary>
 | |
|             <param name="name">element name</param>
 | |
|             <param name="value">element value</param>
 | |
|             <param name="isSelected">determines if the radio button is selected or not. This is done differently depending on the
 | |
|             type of variable. A boolean simply triggers checked or not, all other types are compared with "value" to determine if 
 | |
|             the box is checked or not. </param>
 | |
|             <param name="htmlAttributes">a list with additional attributes (name, value, name, value).</param>
 | |
|             <returns>a generated radio button</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.FormHelper.RadioButton(System.String,System.String,System.Object,System.Object,System.String[])">
 | |
|             <summary>
 | |
|             Creates a RadioButton.
 | |
|             </summary>
 | |
|             <param name="name">element name</param>
 | |
|             <param name="id">element id</param>
 | |
|             <param name="value">element value</param>
 | |
|             <param name="isSelected">determines if the radio button is selected or not. This is done differently depending on the
 | |
|             type of variable. A boolean simply triggers checked or not, all other types are compared with "value" to determine if 
 | |
|             the box is checked or not. </param>
 | |
|             <param name="htmlAttributes">a list with additional attributes (name, value, name, value).</param>
 | |
|             <returns>a generated radio button</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.FormHelper.End">
 | |
|             <summary>
 | |
|             form close tag
 | |
|             </summary>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ComponentProvider.AddInstance``1(System.Object)">
 | |
|             <summary>
 | |
|             Add a component instance
 | |
|             </summary>
 | |
|             <typeparam name="T">Interface type</typeparam>
 | |
|             <param name="instance">Instance to add</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ComponentProvider.Get``1">
 | |
|             <summary>
 | |
|             Get a component.
 | |
|             </summary>
 | |
|             <typeparam name="T">Interface type</typeparam>
 | |
|             <returns>Component if registered, otherwise null.</returns>
 | |
|             <remarks>
 | |
|             Component will get created if needed.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ComponentProvider.Create(HttpServer.ComponentProvider.TypeInformation)">
 | |
|             <exception cref="T:System.InvalidOperationException">If instance cannot be created.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ComponentProvider.Contains(System.Type)">
 | |
|             <summary>
 | |
|             Checks if the specified component interface have been added.
 | |
|             </summary>
 | |
|             <param name="interfaceType"></param>
 | |
|             <returns>true if found; otherwise false.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ComponentProvider.Add``2">
 | |
|             <summary>
 | |
|             Add a component.
 | |
|             </summary>
 | |
|             <typeparam name="InterfaceType">Type being requested.</typeparam>
 | |
|             <typeparam name="InstanceType">Type being created.</typeparam>
 | |
|             <exception cref="T:System.InvalidOperationException">Type have already been mapped.</exception>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Parser.BodyEventArgs">
 | |
|             <summary>
 | |
|             Arguments used when more body bytes have come.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Parser.BodyEventArgs.#ctor(System.Byte[],System.Int32,System.Int32)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Parser.BodyEventArgs"/> class.
 | |
|             </summary>
 | |
|             <param name="buffer">buffer that contains the received bytes.</param>
 | |
|             <param name="offset">offset in buffer where to start processing.</param>
 | |
|             <param name="count">number of bytes from <paramref name="offset"/> that should be parsed.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Parser.BodyEventArgs.#ctor">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Parser.BodyEventArgs"/> class.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Parser.BodyEventArgs.Buffer">
 | |
|             <summary>
 | |
|             Gets or sets buffer that contains the received bytes.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Parser.BodyEventArgs.Count">
 | |
|             <summary>
 | |
|             Gets or sets number of bytes from <see cref="P:HttpServer.Parser.BodyEventArgs.Offset"/> that should be parsed.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Parser.BodyEventArgs.Offset">
 | |
|             <summary>
 | |
|             Gets or sets offset in buffer where to start processing.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpContextFactory">
 | |
|             <summary>
 | |
|             Used to create and reuse contexts.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.IHttpContextFactory">
 | |
|             <summary>
 | |
|             Used to create <see cref="T:HttpServer.IHttpClientContext"/>es.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpContextFactory.CreateContext(System.Net.Sockets.Socket)">
 | |
|             <summary>
 | |
|             Creates a <see cref="T:HttpServer.IHttpClientContext"/> that handles a connected client.
 | |
|             </summary>
 | |
|             <param name="socket">Client socket (accepted by the <see cref="T:HttpServer.HttpListener"/>).</param>
 | |
|             <returns>A creates <see cref="T:HttpServer.IHttpClientContext"/>.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IHttpContextFactory.CreateSecureContext(System.Net.Sockets.Socket,System.Security.Cryptography.X509Certificates.X509Certificate,System.Security.Authentication.SslProtocols)">
 | |
|             <summary>
 | |
|             Create a secure <see cref="T:HttpServer.IHttpClientContext"/>.
 | |
|             </summary>
 | |
|             <param name="socket">Client socket (accepted by the <see cref="T:HttpServer.HttpListener"/>).</param>
 | |
|             <param name="certificate">HTTPS certificate to use.</param>
 | |
|             <param name="protocol">Kind of HTTPS protocol. Usually TLS or SSL.</param>
 | |
|             <returns>A created <see cref="T:HttpServer.IHttpClientContext"/>.</returns>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.IHttpContextFactory.RequestReceived">
 | |
|             <summary>
 | |
|             A request have been received from one of the contexts.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpContextFactory.#ctor(HttpServer.ILogWriter,System.Int32,HttpServer.IRequestParserFactory)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpContextFactory"/> class.
 | |
|             </summary>
 | |
|             <param name="writer">The writer.</param>
 | |
|             <param name="bufferSize">Amount of bytes to read from the incoming socket stream.</param>
 | |
|             <param name="factory">Used to create a request parser.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpContextFactory.CreateContext(System.Boolean,System.Net.IPEndPoint,System.IO.Stream,System.Net.Sockets.Socket)">
 | |
|             <summary>
 | |
|             Create a new context.
 | |
|             </summary>
 | |
|             <param name="isSecured">true if socket is running HTTPS.</param>
 | |
|             <param name="endPoint">Client that connected</param>
 | |
|             <param name="stream">Network/SSL stream.</param>
 | |
|             <returns>A context.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpContextFactory.CreateNewContext(System.Boolean,System.Net.IPEndPoint,System.IO.Stream,System.Net.Sockets.Socket)">
 | |
|             <summary>
 | |
|             Create a new context.
 | |
|             </summary>
 | |
|             <param name="isSecured">true if HTTPS is used.</param>
 | |
|             <param name="endPoint">Remote client</param>
 | |
|             <param name="stream">Network stream, <see cref="T:HttpServer.HttpClientContext"/> uses <see cref="T:HttpServer.ReusableSocketNetworkStream"/>.</param>
 | |
|             <returns>A new context (always).</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpContextFactory.CreateSecureContext(System.Net.Sockets.Socket,System.Security.Cryptography.X509Certificates.X509Certificate,System.Security.Authentication.SslProtocols)">
 | |
|             <summary>
 | |
|             Create a secure <see cref="T:HttpServer.IHttpClientContext"/>.
 | |
|             </summary>
 | |
|             <param name="socket">Client socket (accepted by the <see cref="T:HttpServer.HttpListener"/>).</param>
 | |
|             <param name="certificate">HTTPS certificate to use.</param>
 | |
|             <param name="protocol">Kind of HTTPS protocol. Usually TLS or SSL.</param>
 | |
|             <returns>
 | |
|             A created <see cref="T:HttpServer.IHttpClientContext"/>.
 | |
|             </returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpContextFactory.CreateContext(System.Net.Sockets.Socket)">
 | |
|             <summary>
 | |
|             Creates a <see cref="T:HttpServer.IHttpClientContext"/> that handles a connected client.
 | |
|             </summary>
 | |
|             <param name="socket">Client socket (accepted by the <see cref="T:HttpServer.HttpListener"/>).</param>
 | |
|             <returns>
 | |
|             A creates <see cref="T:HttpServer.IHttpClientContext"/>.
 | |
|             </returns>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpContextFactory.UseTraceLogs">
 | |
|             <summary>
 | |
|              True if detailed trace logs should be written.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.HttpContextFactory.RequestReceived">
 | |
|             <summary>
 | |
|             A request have been received from one of the contexts.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.ReusableSocketNetworkStream">
 | |
|             <summary>
 | |
|             Custom network stream to mark sockets as reusable when disposing the stream.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ReusableSocketNetworkStream.#ctor(System.Net.Sockets.Socket)">
 | |
|             <summary>
 | |
|                                 Creates a new instance of the <see cref="T:System.Net.Sockets.NetworkStream" /> class for the specified <see cref="T:System.Net.Sockets.Socket" />.
 | |
|             </summary>
 | |
|             <param name="socket">
 | |
|                                 The <see cref="T:System.Net.Sockets.Socket" /> that the <see cref="T:System.Net.Sockets.NetworkStream" /> will use to send and receive data. 
 | |
|                             </param>
 | |
|             <exception cref="T:System.ArgumentNullException">
 | |
|                                 The <paramref name="socket" /> parameter is null. 
 | |
|                             </exception>
 | |
|             <exception cref="T:System.IO.IOException">
 | |
|                                 The <paramref name="socket" /> parameter is not connected.
 | |
|                                 -or- 
 | |
|                                 The <see cref="P:System.Net.Sockets.Socket.SocketType" /> property of the <paramref name="socket" /> parameter is not <see cref="F:System.Net.Sockets.SocketType.Stream" />.
 | |
|                                 -or- 
 | |
|                                 The <paramref name="socket" /> parameter is in a nonblocking state. 
 | |
|                             </exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ReusableSocketNetworkStream.#ctor(System.Net.Sockets.Socket,System.Boolean)">
 | |
|             <summary>
 | |
|                                 Initializes a new instance of the <see cref="T:System.Net.Sockets.NetworkStream" /> class for the specified <see cref="T:System.Net.Sockets.Socket" /> with the specified <see cref="T:System.Net.Sockets.Socket" /> ownership.
 | |
|             </summary>
 | |
|             <param name="socket">
 | |
|                                 The <see cref="T:System.Net.Sockets.Socket" /> that the <see cref="T:System.Net.Sockets.NetworkStream" /> will use to send and receive data. 
 | |
|                             </param>
 | |
|             <param name="ownsSocket">
 | |
|                                 Set to true to indicate that the <see cref="T:System.Net.Sockets.NetworkStream" /> will take ownership of the <see cref="T:System.Net.Sockets.Socket" />; otherwise, false. 
 | |
|                             </param>
 | |
|             <exception cref="T:System.ArgumentNullException">
 | |
|                                 The <paramref name="socket" /> parameter is null. 
 | |
|                             </exception>
 | |
|             <exception cref="T:System.IO.IOException">
 | |
|                                 The <paramref name="socket" /> parameter is not connected.
 | |
|                                 -or- 
 | |
|                                 the value of the <see cref="P:System.Net.Sockets.Socket.SocketType" /> property of the <paramref name="socket" /> parameter is not <see cref="F:System.Net.Sockets.SocketType.Stream" />.
 | |
|                                 -or- 
 | |
|                                 the <paramref name="socket" /> parameter is in a nonblocking state. 
 | |
|                             </exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ReusableSocketNetworkStream.#ctor(System.Net.Sockets.Socket,System.IO.FileAccess)">
 | |
|             <summary>
 | |
|                                 Creates a new instance of the <see cref="T:System.Net.Sockets.NetworkStream" /> class for the specified <see cref="T:System.Net.Sockets.Socket" /> with the specified access rights.
 | |
|             </summary>
 | |
|             <param name="socket">
 | |
|                                 The <see cref="T:System.Net.Sockets.Socket" /> that the <see cref="T:System.Net.Sockets.NetworkStream" /> will use to send and receive data. 
 | |
|                             </param>
 | |
|             <param name="access">
 | |
|                                 A bitwise combination of the <see cref="T:System.IO.FileAccess" /> values that specify the type of access given to the <see cref="T:System.Net.Sockets.NetworkStream" /> over the provided <see cref="T:System.Net.Sockets.Socket" />. 
 | |
|                             </param>
 | |
|             <exception cref="T:System.ArgumentNullException">
 | |
|                                 The <paramref name="socket" /> parameter is null. 
 | |
|                             </exception>
 | |
|             <exception cref="T:System.IO.IOException">
 | |
|                                 The <paramref name="socket" /> parameter is not connected.
 | |
|                                 -or- 
 | |
|                                 the <see cref="P:System.Net.Sockets.Socket.SocketType" /> property of the <paramref name="socket" /> parameter is not <see cref="F:System.Net.Sockets.SocketType.Stream" />.
 | |
|                                 -or- 
 | |
|                                 the <paramref name="socket" /> parameter is in a nonblocking state. 
 | |
|                             </exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ReusableSocketNetworkStream.#ctor(System.Net.Sockets.Socket,System.IO.FileAccess,System.Boolean)">
 | |
|             <summary>
 | |
|                                 Creates a new instance of the <see cref="T:System.Net.Sockets.NetworkStream" /> class for the specified <see cref="T:System.Net.Sockets.Socket" /> with the specified access rights and the specified <see cref="T:System.Net.Sockets.Socket" /> ownership.
 | |
|             </summary>
 | |
|             <param name="socket">
 | |
|                                 The <see cref="T:System.Net.Sockets.Socket" /> that the <see cref="T:System.Net.Sockets.NetworkStream" /> will use to send and receive data. 
 | |
|                             </param>
 | |
|             <param name="access">
 | |
|                                 A bitwise combination of the <see cref="T:System.IO.FileAccess" /> values that specifies the type of access given to the <see cref="T:System.Net.Sockets.NetworkStream" /> over the provided <see cref="T:System.Net.Sockets.Socket" />. 
 | |
|                             </param>
 | |
|             <param name="ownsSocket">
 | |
|                                 Set to true to indicate that the <see cref="T:System.Net.Sockets.NetworkStream" /> will take ownership of the <see cref="T:System.Net.Sockets.Socket" />; otherwise, false. 
 | |
|                             </param>
 | |
|             <exception cref="T:System.ArgumentNullException">
 | |
|                                 The <paramref name="socket" /> parameter is null. 
 | |
|                             </exception>
 | |
|             <exception cref="T:System.IO.IOException">
 | |
|                                 The <paramref name="socket" /> parameter is not connected.
 | |
|                                 -or- 
 | |
|                                 The <see cref="P:System.Net.Sockets.Socket.SocketType" /> property of the <paramref name="socket" /> parameter is not <see cref="F:System.Net.Sockets.SocketType.Stream" />.
 | |
|                                 -or- 
 | |
|                                 The <paramref name="socket" /> parameter is in a nonblocking state. 
 | |
|                             </exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ReusableSocketNetworkStream.Close">
 | |
|             <summary>
 | |
|             Closes the current stream and releases any resources (such as sockets and file handles) associated with the current stream.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ReusableSocketNetworkStream.Dispose(System.Boolean)">
 | |
|             <summary>
 | |
|             Releases the unmanaged resources used by the <see cref="T:System.Net.Sockets.NetworkStream"/> and optionally releases the managed resources.
 | |
|             </summary>
 | |
|             <param name="disposing">true to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpModules.ResourceFileModule">
 | |
|             <summary>
 | |
|             Serves files that are stored in embedded resources.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpModules.HttpModule">
 | |
|             <summary>
 | |
|             A HttpModule can be used to serve Uri's. The module itself
 | |
|             decides if it should serve a Uri or not. In this way, you can
 | |
|             get a very flexible http application since you can let multiple modules
 | |
|             serve almost similar urls.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Throw <see cref="T:HttpServer.Exceptions.UnauthorizedException"/> if you are using a <see cref="T:HttpServer.Authentication.AuthenticationModule"/> and want to prompt for user name/password.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.HttpModule.Process(HttpServer.IHttpRequest,HttpServer.IHttpResponse,HttpServer.Sessions.IHttpSession)">
 | |
|             <summary>
 | |
|             Method that process the url
 | |
|             </summary>
 | |
|             <param name="request">Information sent by the browser about the request</param>
 | |
|             <param name="response">Information that is being sent back to the client.</param>
 | |
|             <param name="session">Session used to </param>
 | |
|             <returns>true if this module handled the request.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.HttpModule.SetLogWriter(HttpServer.ILogWriter)">
 | |
|             <summary>
 | |
|             Set the log writer to use.
 | |
|             </summary>
 | |
|             <param name="writer">logwriter to use.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.HttpModule.Write(HttpServer.LogPrio,System.String)">
 | |
|             <summary>
 | |
|             Log something.
 | |
|             </summary>
 | |
|             <param name="prio">importance of log message</param>
 | |
|             <param name="message">message</param>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpModules.HttpModule.AllowSecondaryProcessing">
 | |
|             <summary>
 | |
|             If true specifies that the module doesn't consume the processing of a request so that subsequent modules
 | |
|             can continue processing afterwards. Default is false.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.ResourceFileModule.#ctor">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpModules.ResourceFileModule"/> class.
 | |
|             Runs <see cref="M:HttpServer.HttpModules.ResourceFileModule.AddDefaultMimeTypes"/> to make sure the basic mime types are available, they can be cleared later
 | |
|             through the use of <see cref="P:HttpServer.HttpModules.ResourceFileModule.MimeTypes"/> if desired.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.ResourceFileModule.#ctor(HttpServer.ILogWriter)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpModules.ResourceFileModule"/> class.
 | |
|             Runs <see cref="M:HttpServer.HttpModules.ResourceFileModule.AddDefaultMimeTypes"/> to make sure the basic mime types are available, they can be cleared later
 | |
|             through the use of <see cref="P:HttpServer.HttpModules.ResourceFileModule.MimeTypes"/> if desired.
 | |
|             </summary>
 | |
|             <param name="logWriter">The log writer to use when logging events</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.ResourceFileModule.AddDefaultMimeTypes">
 | |
|             <summary>
 | |
|             Mimtypes that this class can handle per default
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.ResourceFileModule.AddResources(System.String,System.Reflection.Assembly,System.String)">
 | |
|             <summary>
 | |
|             Loads resources from a namespace in the given assembly to an uri
 | |
|             </summary>
 | |
|             <param name="toUri">The uri to map the resources to</param>
 | |
|             <param name="fromAssembly">The assembly in which the resources reside</param>
 | |
|             <param name="fromNamespace">The namespace from which to load the resources</param>
 | |
|             <usage>
 | |
|             resourceLoader.LoadResources("/user/", typeof(User).Assembly, "MyLib.Models.User.Views");
 | |
|             
 | |
|             will make ie the resource MyLib.Models.User.Views.stylesheet.css accessible via /user/stylesheet.css
 | |
|             </usage>
 | |
|             <returns>The amount of loaded files, giving you the possibility of making sure the resources needed gets loaded</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.ResourceFileModule.CanHandle(HttpServer.IHttpRequest)">
 | |
|             <summary>
 | |
|             Returns true if the module can handle the request
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.ResourceFileModule.Process(HttpServer.IHttpRequest,HttpServer.IHttpResponse,HttpServer.Sessions.IHttpSession)">
 | |
|             <summary>
 | |
|             Method that process the url
 | |
|             </summary>
 | |
|             <param name="request">Information sent by the browser about the request</param>
 | |
|             <param name="response">Information that is being sent back to the client.</param>
 | |
|             <param name="session">Session used to </param>
 | |
|             <returns>true if this module handled the request.</returns>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpModules.ResourceFileModule.MimeTypes">
 | |
|             <summary>
 | |
|             List with all mime-type that are allowed. 
 | |
|             </summary>
 | |
|             <remarks>All other mime types will result in a Forbidden http status code.</remarks>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpModules.FileModule">
 | |
|             <summary>
 | |
|             The purpose of this module is to serve files.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.FileModule.#ctor(System.String,System.String,System.Boolean)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpModules.FileModule"/> class.
 | |
|             </summary>
 | |
|             <param name="baseUri">Uri to serve, for instance "/files/"</param>
 | |
|             <param name="basePath">Path on hard drive where we should start looking for files</param>
 | |
|             <param name="useLastModifiedHeader">If true a Last-Modifed header will be sent upon requests urging web browser to cache files</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.FileModule.#ctor(System.String,System.String)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpModules.FileModule"/> class.
 | |
|             </summary>
 | |
|             <param name="baseUri">Uri to serve, for instance "/files/"</param>
 | |
|             <param name="basePath">Path on hard drive where we should start looking for files</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.FileModule.AddDefaultMimeTypes">
 | |
|             <summary>
 | |
|             Mimtypes that this class can handle per default
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.FileModule.CanHandle(System.Uri)">
 | |
|             <summary>
 | |
|             Determines if the request should be handled by this module.
 | |
|             Invoked by the <see cref="T:HttpServer.HttpServer"/>
 | |
|             </summary>
 | |
|             <param name="uri"></param>
 | |
|             <returns>true if this module should handle it.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.FileModule.GetPath(System.Uri)">
 | |
|             <exception cref="T:HttpServer.Exceptions.BadRequestException">Illegal path</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.FileModule.Contains(System.String,System.Collections.Generic.IEnumerable{System.String})">
 | |
|             <summary>
 | |
|             check if source contains any of the chars.
 | |
|             </summary>
 | |
|             <param name="source"></param>
 | |
|             <param name="chars"></param>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.FileModule.Process(HttpServer.IHttpRequest,HttpServer.IHttpResponse,HttpServer.Sessions.IHttpSession)">
 | |
|             <summary>
 | |
|             Method that process the Uri.
 | |
|             </summary>
 | |
|             <param name="request">Information sent by the browser about the request</param>
 | |
|             <param name="response">Information that is being sent back to the client.</param>
 | |
|             <param name="session">Session used to </param>
 | |
|             <exception cref="T:HttpServer.Exceptions.InternalServerException">Failed to find file extension</exception>
 | |
|             <exception cref="T:HttpServer.Exceptions.ForbiddenException">File type is forbidden.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.FileModule.GetFileExtension(System.String)">
 | |
|             <summary>
 | |
|             return a file extension from an absolute Uri path (or plain filename)
 | |
|             </summary>
 | |
|             <param name="uri"></param>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpModules.FileModule.MimeTypes">
 | |
|             <summary>
 | |
|             List with all mime-type that are allowed. 
 | |
|             </summary>
 | |
|             <remarks>All other mime types will result in a Forbidden http status code.</remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpModules.FileModule.ForbiddenChars">
 | |
|             <summary>
 | |
|             characters that may not  exist in a path.
 | |
|             </summary>
 | |
|             <example>
 | |
|             fileMod.ForbiddenChars = new string[]{ "\\", "..", ":" };
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Exceptions.InternalServerException">
 | |
|             <summary>
 | |
|             The server encountered an unexpected condition which prevented it from fulfilling the request.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Exceptions.InternalServerException.#ctor">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Exceptions.InternalServerException"/> class.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Exceptions.InternalServerException.#ctor(System.String)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Exceptions.InternalServerException"/> class.
 | |
|             </summary>
 | |
|             <param name="message">error message.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Exceptions.InternalServerException.#ctor(System.String,System.Exception)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Exceptions.InternalServerException"/> class.
 | |
|             </summary>
 | |
|             <param name="message">error message.</param>
 | |
|             <param name="inner">inner exception.</param>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Rules.RegexRedirectRule">
 | |
|             <summary>
 | |
|             Class to make dynamic binding of redirects. Instead of having to specify a number of similar redirect rules
 | |
|             a regular expression can be used to identify redirect URLs and their targets.
 | |
|             </summary>
 | |
|             <example>
 | |
|             <![CDATA[
 | |
|             new RegexRedirectRule("/(?<target>[a-z0-9]+)", "/users/${target}?find=true", RegexOptions.IgnoreCase)
 | |
|             ]]>
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Rules.RegexRedirectRule.#ctor(System.String,System.String)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Rules.RegexRedirectRule"/> class.
 | |
|             </summary>
 | |
|             <param name="fromUrlExpression">Expression to match URL</param>
 | |
|             <param name="toUrlExpression">Expression to generate URL</param>
 | |
|             <example>
 | |
|             <![CDATA[
 | |
|             server.Add(new RegexRedirectRule("/(?<first>[a-zA-Z0-9]+)", "/user/${first}"));
 | |
|             Result of ie. /employee1 will then be /user/employee1
 | |
|             ]]>
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Rules.RegexRedirectRule.#ctor(System.String,System.String,System.Text.RegularExpressions.RegexOptions)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Rules.RegexRedirectRule"/> class.
 | |
|             </summary>
 | |
|             <param name="fromUrlExpression">Expression to match URL</param>
 | |
|             <param name="toUrlExpression">Expression to generate URL</param>
 | |
|             <param name="options">Regular expression options to use, can be null</param>
 | |
|             <example>
 | |
|             <![CDATA[
 | |
|             server.Add(new RegexRedirectRule("/(?<first>[a-zA-Z0-9]+)", "/user/{first}", RegexOptions.IgnoreCase));
 | |
|             Result of ie. /employee1 will then be /user/employee1
 | |
|             ]]>
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Rules.RegexRedirectRule.#ctor(System.String,System.String,System.Text.RegularExpressions.RegexOptions,System.Boolean)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Rules.RegexRedirectRule"/> class.
 | |
|             </summary>
 | |
|             <param name="fromUrlExpression">Expression to match URL</param>
 | |
|             <param name="toUrlExpression">Expression to generate URL</param>
 | |
|             <param name="options">Regular expression options to apply</param>
 | |
|             <param name="shouldRedirect"><c>true</c> if request should be redirected, <c>false</c> if the request URI should be replaced.</param>
 | |
|             <example>
 | |
|             <![CDATA[
 | |
|             server.Add(new RegexRedirectRule("/(?<first>[a-zA-Z0-9]+)", "/user/${first}", RegexOptions.None));
 | |
|             Result of ie. /employee1 will then be /user/employee1
 | |
|             ]]>
 | |
|             </example>
 | |
|             <exception cref="T:System.ArgumentNullException">Argument is null.</exception>
 | |
|             <seealso cref="P:HttpServer.Rules.RedirectRule.ShouldRedirect"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Rules.RegexRedirectRule.Process(HttpServer.IHttpRequest,HttpServer.IHttpResponse)">
 | |
|             <summary>
 | |
|             Process the incoming request.
 | |
|             </summary>
 | |
|             <param name="request">incoming HTTP request</param>
 | |
|             <param name="response">outgoing HTTP response</param>
 | |
|             <returns>true if response should be sent to the browser directly (no other rules or modules will be processed).</returns>
 | |
|             <remarks>
 | |
|             returning true means that no modules will get the request. Returning true is typically being done
 | |
|             for redirects.
 | |
|             </remarks>
 | |
|             <exception cref="T:System.ArgumentNullException">If request or response is null</exception>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Parser.RequestLineEventArgs">
 | |
|             <summary>
 | |
|             Used when the request line have been successfully parsed.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Parser.RequestLineEventArgs.#ctor(System.String,System.String,System.String)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Parser.RequestLineEventArgs"/> class.
 | |
|             </summary>
 | |
|             <param name="httpMethod">The HTTP method.</param>
 | |
|             <param name="uriPath">The URI path.</param>
 | |
|             <param name="httpVersion">The HTTP version.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Parser.RequestLineEventArgs.#ctor">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Parser.RequestLineEventArgs"/> class.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Parser.RequestLineEventArgs.HttpMethod">
 | |
|             <summary>
 | |
|             Gets or sets http method.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Should be one of the methods declared in <see cref="T:HttpServer.Method"/>.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Parser.RequestLineEventArgs.HttpVersion">
 | |
|             <summary>
 | |
|             Gets or sets the version of the HTTP protocol that the client want to use.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Parser.RequestLineEventArgs.UriPath">
 | |
|             <summary>
 | |
|             Gets or sets requested URI path.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.RealmHandler">
 | |
|             <summary>
 | |
|             Delegate used to find a realm/domain.
 | |
|             </summary>
 | |
|             <param name="domain"></param>
 | |
|             <returns></returns>
 | |
|             <remarks>
 | |
|             Realms are used during HTTP Authentication
 | |
|             </remarks>
 | |
|             <seealso cref="T:HttpServer.Authentication.AuthenticationModule"/>
 | |
|             <seealso cref="T:HttpServer.Authentication.AuthenticationHandler"/>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpServer">
 | |
|             <summary>
 | |
|             A complete HTTP server, you need to add a module to it to be able to handle incoming requests.
 | |
|             </summary>
 | |
|             <example>
 | |
|             <code>
 | |
|             // this small example will add two web site modules, thus handling
 | |
|             // two different sites. In reality you should add Controller modules or something
 | |
|             // two the website modules to be able to handle different requests.
 | |
|             HttpServer server = new HttpServer();
 | |
|             server.Add(new WebSiteModule("www.gauffin.com", "Gauffin Telecom AB"));
 | |
|             server.Add(new WebSiteModule("www.vapadi.se", "Remote PBX"));
 | |
|             
 | |
|             // start regular http
 | |
|             server.Start(IPAddress.Any, 80);
 | |
|             
 | |
|             // start https
 | |
|             server.Start(IPAddress.Any, 443, myCertificate);
 | |
|             </code>
 | |
|             </example>
 | |
|             <seealso cref="T:HttpServer.HttpModules.HttpModule"/>
 | |
|             <seealso cref="T:HttpServer.HttpModules.FileModule"/>
 | |
|             <seealso cref="T:HttpServer.HttpListener"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.#ctor(HttpServer.IComponentProvider)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpServer"/> class.
 | |
|             </summary>
 | |
|             <param name="provider">Used to get all components used in the server..</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.#ctor">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpServer"/> class.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.#ctor(HttpServer.FormDecoders.FormDecoderProvider)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpServer"/> class.
 | |
|             </summary>
 | |
|             <param name="decoderProvider">Form decoders are used to convert different types of posted data to the <see cref="T:HttpServer.HttpInput"/> object types.</param>
 | |
|             <seealso cref="T:HttpServer.FormDecoders.IFormDecoder"/>
 | |
|             <seealso cref="P:HttpServer.HttpServer.FormDecoderProviders"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.#ctor(HttpServer.Sessions.IHttpSessionStore)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpServer"/> class.
 | |
|             </summary>
 | |
|             <param name="sessionStore">A session store is used to save and retrieve sessions</param>
 | |
|             <seealso cref="T:HttpServer.Sessions.IHttpSessionStore"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.#ctor(HttpServer.ILogWriter)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpServer"/> class.
 | |
|             </summary>
 | |
|             <param name="logWriter">The log writer.</param>
 | |
|             <seealso cref="P:HttpServer.HttpServer.LogWriter"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.#ctor(HttpServer.FormDecoders.FormDecoderProvider,HttpServer.ILogWriter)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpServer"/> class.
 | |
|             </summary>
 | |
|             <param name="decoderProvider">Form decoders are used to convert different types of posted data to the <see cref="T:HttpServer.HttpInput"/> object types.</param>
 | |
|             <param name="logWriter">The log writer.</param>
 | |
|             <seealso cref="T:HttpServer.FormDecoders.IFormDecoder"/>
 | |
|             <seealso cref="P:HttpServer.HttpServer.FormDecoderProviders"/>
 | |
|             <seealso cref="P:HttpServer.HttpServer.LogWriter"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.#ctor(HttpServer.FormDecoders.FormDecoderProvider,HttpServer.Sessions.IHttpSessionStore,HttpServer.ILogWriter)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpServer"/> class.
 | |
|             </summary>
 | |
|             <param name="decoderProvider">Form decoders are used to convert different types of posted data to the <see cref="T:HttpServer.HttpInput"/> object types.</param>
 | |
|             <param name="sessionStore">A session store is used to save and retrieve sessions</param>
 | |
|             <param name="logWriter">The log writer.</param>
 | |
|             <seealso cref="T:HttpServer.FormDecoders.IFormDecoder"/>
 | |
|             <seealso cref="P:HttpServer.HttpServer.FormDecoderProviders"/>
 | |
|             <seealso cref="P:HttpServer.HttpServer.LogWriter"/>
 | |
|             <seealso cref="T:HttpServer.Sessions.IHttpSessionStore"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.Add(HttpServer.Rules.IRule)">
 | |
|             <summary>
 | |
|             Adds the specified rule.
 | |
|             </summary>
 | |
|             <param name="rule">The rule.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.Add(HttpServer.HttpModules.HttpModule)">
 | |
|             <summary>
 | |
|             Add a <see cref="T:HttpServer.HttpModules.HttpModule"/> to the server.
 | |
|             </summary>
 | |
|             <param name="module">mode to add</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.DecodeBody(HttpServer.IHttpRequest)">
 | |
|             <summary>
 | |
|             Decodes the request body.
 | |
|             </summary>
 | |
|             <param name="request">The request.</param>
 | |
|             <exception cref="T:HttpServer.Exceptions.InternalServerException">Failed to decode form data.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.ErrorPage(HttpServer.IHttpResponse,System.Net.HttpStatusCode,System.String)">
 | |
|             <summary>
 | |
|             Generate a HTTP error page (that will be added to the response body).
 | |
|             response status code is also set.
 | |
|             </summary>
 | |
|             <param name="response">Response that the page will be generated in.</param>
 | |
|             <param name="error"><see cref="T:System.Net.HttpStatusCode"/>.</param>
 | |
|             <param name="body">response body contents.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.ErrorPage(HttpServer.IHttpResponse,HttpServer.Exceptions.HttpException)">
 | |
|             <summary>
 | |
|             Generate a HTTP error page (that will be added to the response body).
 | |
|             response status code is also set.
 | |
|             </summary>
 | |
|             <param name="response">Response that the page will be generated in.</param>
 | |
|             <param name="err">exception.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.GetRealm(HttpServer.IHttpRequest)">
 | |
|             <summary>
 | |
|             Realms are used by the <see cref="T:HttpServer.Authentication.AuthenticationModule"/>s.
 | |
|             </summary>
 | |
|             <param name="request">HTTP request</param>
 | |
|             <returns>domain/realm.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.HandleRequest(HttpServer.IHttpClientContext,HttpServer.IHttpRequest,HttpServer.IHttpResponse,HttpServer.Sessions.IHttpSession)">
 | |
|             <summary>
 | |
|             Process an incoming request.
 | |
|             </summary>
 | |
|             <param name="context">connection to client</param>
 | |
|             <param name="request">request information</param>
 | |
|             <param name="response">response that should be filled</param>
 | |
|             <param name="session">session information</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.OnClientDisconnected(HttpServer.IHttpClientContext,System.Net.Sockets.SocketError)">
 | |
|             <summary>
 | |
|             Can be overloaded to implement stuff when a client have been connected.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Default implementation does nothing.
 | |
|             </remarks>
 | |
|             <param name="client">client that disconnected</param>
 | |
|             <param name="error">disconnect reason</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.ProcessAuthentication(HttpServer.IHttpRequest,HttpServer.IHttpResponse,HttpServer.Sessions.IHttpSession)">
 | |
|             <summary>
 | |
|             Handle authentication
 | |
|             </summary>
 | |
|             <param name="request"></param>
 | |
|             <param name="response"></param>
 | |
|             <param name="session"></param>
 | |
|             <returns>true if request can be handled; false if not.</returns>
 | |
|             <exception cref="T:HttpServer.Exceptions.BadRequestException">Invalid authorization header</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.RequestAuthentication(HttpServer.Authentication.AuthenticationModule,HttpServer.IHttpRequest,HttpServer.IHttpResponse)">
 | |
|             <summary>
 | |
|             Will request authentication.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Sends respond to client, nothing else can be done with the response after this.
 | |
|             </remarks>
 | |
|             <param name="mod"></param>
 | |
|             <param name="request"></param>
 | |
|             <param name="response"></param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.OnRequest(System.Object,HttpServer.RequestEventArgs)">
 | |
|             <summary>
 | |
|             Received from a <see cref="T:HttpServer.IHttpClientContext"/> when a request have been parsed successfully.
 | |
|             </summary>
 | |
|             <param name="source"><see cref="T:HttpServer.IHttpClientContext"/> that received the request.</param>
 | |
|             <param name="args">The request.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.ProcessRequestWrapper(HttpServer.IHttpClientContext,HttpServer.IHttpRequest)">
 | |
|             <summary>
 | |
|             To be able to track request count.
 | |
|             </summary>
 | |
|             <param name="context"></param>
 | |
|             <param name="request"></param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.Start(System.Net.IPAddress,System.Int32)">
 | |
|             <summary>
 | |
|             Start the web server using regular HTTP.
 | |
|             </summary>
 | |
|             <param name="address">IP Address to listen on, use <c>IpAddress.Any </c>to accept connections on all IP addresses/network cards.</param>
 | |
|             <param name="port">Port to listen on. 80 can be a good idea =)</param>
 | |
|             <exception cref="T:System.ArgumentNullException"><c>address</c> is null.</exception>
 | |
|             <exception cref="T:System.ArgumentException">Port must be a positive number.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.Start(System.Net.IPAddress,System.Int32,System.Security.Cryptography.X509Certificates.X509Certificate)">
 | |
|             <summary>
 | |
|             Accept secure connections.
 | |
|             </summary>
 | |
|             <param name="address">IP Address to listen on, use <see cref="F:System.Net.IPAddress.Any"/> to accept connections on all IP Addresses / network cards.</param>
 | |
|             <param name="port">Port to listen on. 80 can be a good idea =)</param>
 | |
|             <param name="certificate">Certificate to use</param>
 | |
|             <exception cref="T:System.ArgumentNullException"><c>address</c> is null.</exception>
 | |
|             <exception cref="T:System.ArgumentException">Port must be a positive number.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.Stop">
 | |
|             <summary>
 | |
|             shut down the server and listeners
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.WriteLog(HttpServer.LogPrio,System.String)">
 | |
|             <summary>
 | |
|             write an entry to the log file
 | |
|             </summary>
 | |
|             <param name="prio">importance of the message</param>
 | |
|             <param name="message">log message</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpServer.WriteLog(System.Object,HttpServer.LogPrio,System.String)">
 | |
|             <summary>
 | |
|             write an entry to the log file
 | |
|             </summary>
 | |
|             <param name="source">object that wrote the message</param>
 | |
|             <param name="prio">importance of the message</param>
 | |
|             <param name="message">log message</param>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpServer.Current">
 | |
|             <summary>
 | |
|             Server that is handling the current request.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Will be set as soon as a request arrives to the <see cref="T:HttpServer.HttpServer"/> object.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpServer.AuthenticationModules">
 | |
|             <summary>
 | |
|             Modules used for authentication. The module that is is added first is used as 
 | |
|             the default authentication module.
 | |
|             </summary>
 | |
|             <remarks>Use the corresponding property
 | |
|             in the <see cref="T:HttpServer.HttpModules.WebSiteModule"/> if you are using multiple websites.</remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpServer.FormDecoderProviders">
 | |
|             <summary>
 | |
|             Form decoder providers are used to decode request body (which normally contains form data).
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpServer.ServerName">
 | |
|             <summary>
 | |
|             Server name sent in HTTP responses.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Do NOT include version in name, since it makes it 
 | |
|             easier for hackers.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpServer.SessionCookieName">
 | |
|             <summary>
 | |
|             Name of cookie where session id is stored.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpServer.LogWriter">
 | |
|             <summary>
 | |
|             Specified where logging should go.
 | |
|             </summary>
 | |
|             <seealso cref="T:HttpServer.NullLogWriter"/>
 | |
|             <seealso cref="T:HttpServer.ConsoleLogWriter"/>
 | |
|             <seealso cref="P:HttpServer.HttpServer.LogWriter"/>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpServer.BackLog">
 | |
|             <summary>
 | |
|             Number of connections that can wait to be accepted by the server.
 | |
|             </summary>
 | |
|             <remarks>Default is 10.</remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpServer.MaxRequestCount">
 | |
|             <summary>
 | |
|             Gets or sets maximum number of allowed simultaneous requests.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             <para>
 | |
|             This property is useful in busy systems. The HTTP server
 | |
|             will start queuing new requests if this limit is hit, instead
 | |
|             of trying to process all incoming requests directly.
 | |
|             </para>
 | |
|             <para>
 | |
|             The default number if allowed simultaneous requests are 10.
 | |
|             </para>
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpServer.MaxQueueSize">
 | |
|             <summary>
 | |
|             Gets or sets maximum number of requests queuing to be handled.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             <para>
 | |
|             The WebServer will start turning requests away if response code
 | |
|             <see cref="F:System.Net.HttpStatusCode.ServiceUnavailable"/> to indicate that the server
 | |
|             is too busy to be able to handle the request.
 | |
|             </para>
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.HttpServer.RealmWanted">
 | |
|             <summary>
 | |
|             Realms are used during HTTP authentication.
 | |
|             Default realm is same as server name.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.HttpServer.ExceptionThrown">
 | |
|             <summary>
 | |
|             Let's to receive unhandled exceptions from the threads.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Exceptions will be thrown during debug mode if this event is not used,
 | |
|             exceptions will be printed to console and suppressed during release mode.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Exceptions.UnauthorizedException">
 | |
|             <summary>
 | |
|             The request requires user authentication. The response MUST include a 
 | |
|             WWW-Authenticate header field (section 14.47) containing a challenge 
 | |
|             applicable to the requested resource. 
 | |
|             
 | |
|             The client MAY repeat the request with a suitable Authorization header 
 | |
|             field (section 14.8). If the request already included Authorization 
 | |
|             credentials, then the 401 response indicates that authorization has been 
 | |
|             refused for those credentials. If the 401 response contains the same challenge 
 | |
|             as the prior response, and the user agent has already attempted authentication 
 | |
|             at least once, then the user SHOULD be presented the entity that was given in the response, 
 | |
|             since that entity might include relevant diagnostic information. 
 | |
|             
 | |
|             HTTP access authentication is explained in rfc2617:
 | |
|             http://www.ietf.org/rfc/rfc2617.txt
 | |
|             
 | |
|             (description is taken from 
 | |
|             http://www.submissionchamber.com/help-guides/error-codes.php#sec10.4.2)
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Exceptions.UnauthorizedException.#ctor">
 | |
|             <summary>
 | |
|             Create a new unauhtorized exception.
 | |
|             </summary>
 | |
|             <seealso cref="T:HttpServer.Exceptions.UnauthorizedException"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Exceptions.UnauthorizedException.#ctor(System.String,System.Exception)">
 | |
|             <summary>
 | |
|             Create a new unauhtorized exception.
 | |
|             </summary>
 | |
|             <param name="message">reason to why the request was unauthorized.</param>
 | |
|             <param name="inner">inner exception</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Exceptions.UnauthorizedException.#ctor(System.String)">
 | |
|             <summary>
 | |
|             Create a new unauhtorized exception.
 | |
|             </summary>
 | |
|             <param name="message">reason to why the request was unauthorized.</param>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.ContentType">
 | |
|             <summary>
 | |
|             Lists content type mime types.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.ContentType.Text">
 | |
|             <summary>
 | |
|             text/plain
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.ContentType.Html">
 | |
|             <summary>
 | |
|             text/haml
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.ContentType.Javascript">
 | |
|             <summary>
 | |
|             content type for javascript documents = application/javascript
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             <para>
 | |
|             RFC 4329 states that text/javascript have been superseeded by
 | |
|             application/javascript. You might still want to check browser versions
 | |
|             since older ones do not support application/javascript.
 | |
|             </para>
 | |
|             <para>Browser support: http://krijnhoetmer.nl/stuff/javascript/mime-types/</para>
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.ContentType.Xml">
 | |
|             <summary>
 | |
|             text/xml
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.ContentTypes">
 | |
|             <summary>
 | |
|             A list of content types
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ContentTypes.#ctor(System.String)">
 | |
|             <summary>
 | |
|             
 | |
|             </summary>
 | |
|             <param name="types">Semicolon separated content types.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ContentTypes.GetEnumerator">
 | |
|             <summary>
 | |
|             Returns an enumerator that iterates through a collection.
 | |
|             </summary>
 | |
|             <returns>
 | |
|             An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
 | |
|             </returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ContentTypes.Contains(System.String)">
 | |
|             <summary>
 | |
|             Searches for the specified type
 | |
|             </summary>
 | |
|             <param name="type">Can also be a part of a type (searching for "xml" would return true for "application/xml").</param>
 | |
|             <returns>true if type was found.</returns>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.ContentTypes.First">
 | |
|             <summary>
 | |
|             Get this first content type.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.ContentTypes.Item(System.String)">
 | |
|             <summary>
 | |
|             Fetch a content type
 | |
|             </summary>
 | |
|             <param name="type">Part of type ("xml" would return "application/xml")</param>
 | |
|             <returns></returns>
 | |
|             <remarks>All content types are in lower case.</remarks>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Sessions.MemorySessionStore">
 | |
|             <summary>
 | |
|             Session store using memory for each session.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.MemorySessionStore.#ctor">
 | |
|             <summary>
 | |
|             Initializes the class setting the expirationtimer to clean the session every minute
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.MemorySessionStore.Cleanup(System.Object)">
 | |
|             <summary>
 | |
|             Delegate for the cleanup timer
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.MemorySessionStore.Create">
 | |
|             <summary>
 | |
|             Creates a new http session
 | |
|             </summary>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.MemorySessionStore.Create(System.String)">
 | |
|             <summary>
 | |
|             Creates a new http session with a specific id
 | |
|             </summary>
 | |
|             <param name="id">Id used to identify the new cookie..</param>
 | |
|             <returns>A <see cref="T:HttpServer.Sessions.IHttpSession"/> object.</returns>
 | |
|             <remarks>
 | |
|             Id should be generated by the store implementation if it's null or <see cref="F:System.String.Empty"/>.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.MemorySessionStore.Load(System.String)">
 | |
|             <summary>
 | |
|             Load an existing session.
 | |
|             </summary>
 | |
|             <param name="sessionId"></param>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.MemorySessionStore.Save(HttpServer.Sessions.IHttpSession)">
 | |
|             <summary>
 | |
|             Save an updated session to the store.
 | |
|             </summary>
 | |
|             <param name="session"></param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.MemorySessionStore.AddUnused(HttpServer.Sessions.IHttpSession)">
 | |
|             <summary>
 | |
|             We use the flyweight pattern which reuses small objects
 | |
|             instead of creating new each time.
 | |
|             </summary>
 | |
|             <param name="session">EmptyLanguageNode (unused) session that should be reused next time Create is called.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.MemorySessionStore.Cleanup">
 | |
|             <summary>
 | |
|             Remove expired sessions
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Sessions.MemorySessionStore.Remove(System.String)">
 | |
|             <summary>
 | |
|             Remove a session
 | |
|             </summary>
 | |
|             <param name="sessionId">id of the session.</param>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Sessions.MemorySessionStore.Item(System.String)">
 | |
|             <summary>
 | |
|             Load a session from the store
 | |
|             </summary>
 | |
|             <param name="sessionId"></param>
 | |
|             <returns>null if session is not found.</returns>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Sessions.MemorySessionStore.ExpireTime">
 | |
|             <summary>
 | |
|             Number of minutes before a session expires.
 | |
|             Default is 20 minutes.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Helpers.WebHelper">
 | |
|             <summary>
 | |
|             Webhelper provides helpers for common tasks in HTML.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Helpers.WebHelper.JSImplementation">
 | |
|             <summary>
 | |
|             Used to let the website use different javascript libraries.
 | |
|             Default is <see cref="T:HttpServer.Helpers.Implementations.PrototypeImp"/>
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.AjaxRequest(System.String,System.String,System.String[])">
 | |
|             <summary>
 | |
|             Creates a link that invokes through ajax.
 | |
|             </summary>
 | |
|             <param name="url">url to fetch</param>
 | |
|             <param name="title">link title</param>
 | |
|             <param name="options">
 | |
|             optional options in format "key, value, key, value". 
 | |
|             Javascript options starts with ':'.
 | |
|             </param>
 | |
|             <returns>a link tag</returns>
 | |
|             <example>
 | |
|             WebHelper.AjaxRequest("/users/add/", "Add user", "method:", "post", "onclick", "validate('this');");
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.AjaxUpdater(System.String,System.String,System.String,System.String[])">
 | |
|             <summary>
 | |
|             Builds a link that updates an element with the fetched ajax content.
 | |
|             </summary>
 | |
|             <param name="url">Url to fetch content from</param>
 | |
|             <param name="title">link title</param>
 | |
|             <param name="targetId">html element to update with the results of the ajax request.</param>
 | |
|             <param name="options">optional options in format "key, value, key, value"</param>
 | |
|             <returns>A link tag.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.DialogLink(System.String,System.String,System.String[])">
 | |
|             <summary>
 | |
|             A link that pop ups a Dialog (overlay div)
 | |
|             </summary>
 | |
|             <param name="url">url to contents of dialog</param>
 | |
|             <param name="title">link title</param>
 | |
|             <param name="htmlAttributes">name/value of html attributes.</param>
 | |
|             <returns>A "a"-tag that popups a dialog when clicked</returns>
 | |
|             <example>
 | |
|             WebHelper.DialogLink("/user/show/1", "show user", "onmouseover", "alert('booh!');");
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.CreateDialog(System.String,System.String,System.String[])">
 | |
|             <summary>
 | |
|             Create/Open a dialog box using ajax
 | |
|             </summary>
 | |
|             <param name="url"></param>
 | |
|             <param name="title"></param>
 | |
|             <param name="parameters"></param>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.CloseDialog">
 | |
|             <summary>
 | |
|             Close a javascript dialog window/div.
 | |
|             </summary>
 | |
|             <returns>javascript for closing a dialog.</returns>
 | |
|             <see cref="M:HttpServer.Helpers.WebHelper.DialogLink(System.String,System.String,System.String[])"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.FormStart(System.String,System.String,System.Boolean)">
 | |
|             <summary>
 | |
|             Create a <form> tag.
 | |
|             </summary>
 | |
|             <param name="name">name of form</param>
 | |
|             <param name="action">action to invoke on submit</param>
 | |
|             <param name="isAjax">form should be posted as ajax</param>
 | |
|             <returns>html code</returns>
 | |
|             <example>
 | |
|             WebHelper.FormStart("frmLogin", "/user/login", Request.IsAjax);
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.Link(System.String,System.String,System.String[])">
 | |
|             <summary>
 | |
|             Create a link tag.
 | |
|             </summary>
 | |
|             <param name="url">url to go to</param>
 | |
|             <param name="title">link title (text that is displayed)</param>
 | |
|             <param name="htmlAttributes">html attributes, name, value, name, value</param>
 | |
|             <returns>html code</returns>
 | |
|             <example>
 | |
|             WebHelper.Link("/user/show/1", "Show user", "id", "showUser", "onclick", "return confirm('Are you shure?');");
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.BuildLink(System.String,System.String,System.String[])">
 | |
|             <summary>
 | |
|             Build a link
 | |
|             </summary>
 | |
|             <param name="url">url to go to.</param>
 | |
|             <param name="title">title of link (displayed text)</param>
 | |
|             <param name="htmlAttributes">extra html attributes.</param>
 | |
|             <returns>a complete link</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.BuildLink(System.String,System.String,System.String[],System.String[])">
 | |
|             <summary>
 | |
|             Build a link
 | |
|             </summary>
 | |
|             <param name="url">url to go to.</param>
 | |
|             <param name="title">title of link (displayed text)</param>
 | |
|             <param name="htmlAttributes">extra html attributes.</param>
 | |
|             <returns>a complete link</returns>
 | |
|             <param name="options">more options</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.Select(System.String,System.Collections.ICollection,HttpServer.Helpers.GetIdTitle,System.Object,System.Boolean)">
 | |
|             <summary>
 | |
|             Obsolete
 | |
|             </summary>
 | |
|             <param name="name">Obsolete</param>
 | |
|             <param name="collection">Obsolete</param>
 | |
|             <param name="getIdTitle">Obsolete</param>
 | |
|             <param name="selectedValue">Obsolete</param>
 | |
|             <param name="firstEmpty">Obsolete</param>
 | |
|             <returns>Obsolete</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.Select(System.String,System.String,System.Collections.ICollection,HttpServer.Helpers.GetIdTitle,System.Object,System.Boolean)">
 | |
|             <summary>
 | |
|             Obsolete
 | |
|             </summary>
 | |
|             <param name="name">Obsolete</param>
 | |
|             <param name="id">Obsolete</param>
 | |
|             <param name="collection">Obsolete</param>
 | |
|             <param name="getIdTitle">Obsolete</param>
 | |
|             <param name="selectedValue">Obsolete</param>
 | |
|             <param name="firstEmpty">Obsolete</param>
 | |
|             <returns>Obsolete</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.List(System.Collections.Generic.IEnumerable{System.Object},System.String)">
 | |
|             <summary>
 | |
|             Render errors into a UL with class "errors"
 | |
|             </summary>
 | |
|             <param name="className">class used by UL-tag.</param>
 | |
|             <param name="theList">items to list</param>
 | |
|             <returns>an unordered html list.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.List(System.Collections.Specialized.NameValueCollection,System.String)">
 | |
|             <summary>
 | |
|             Render errors into a UL with class "errors"
 | |
|             </summary>
 | |
|             <param name="className">class used by UL-tag.</param>
 | |
|             <param name="theList">items to list</param>
 | |
|             <returns>an unordered html list.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.Errors(System.Collections.Specialized.NameValueCollection)">
 | |
|             <summary>
 | |
|             Render errors into a UL with class "errors"
 | |
|             </summary>
 | |
|             <param name="errors"></param>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.GenerateHtmlAttributes(System.Text.StringBuilder,System.String[],System.String[])">
 | |
|             <summary>
 | |
|             Generates a list with html attributes.
 | |
|             </summary>
 | |
|             <param name="sb">StringBuilder that the options should be added to.</param>
 | |
|             <param name="firstOptions">attributes set by user.</param>
 | |
|             <param name="secondOptions">attributes set by any of the helper classes.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.WebHelper.GenerateHtmlAttributes(System.Text.StringBuilder,System.String[])">
 | |
|             <summary>
 | |
|             Generates a list with html attributes.
 | |
|             </summary>
 | |
|             <param name="sb">StringBuilder that the options should be added to.</param>
 | |
|             <param name="options"></param>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Helpers.JavascriptHelperImplementation">
 | |
|             <summary>
 | |
|             Purpose of this class is to create a javascript toolkit independent javascript helper.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.JavascriptHelperImplementation.GenerateOptions(System.Text.StringBuilder,System.String[],System.Boolean)">
 | |
|             <summary>
 | |
|             Generates a list with JS options.
 | |
|             </summary>
 | |
|             <param name="sb">StringBuilder that the options should be added to.</param>
 | |
|             <param name="options">the javascript options. name, value pairs. each string value should be escaped by YOU!</param>
 | |
|             <param name="startWithComma">true if we should start with a comma.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.JavascriptHelperImplementation.RemoveJavascriptOptions(System.String[])">
 | |
|             <summary>
 | |
|             Removes any javascript parameters from an array of parameters
 | |
|             </summary>
 | |
|             <param name="options">The array of parameters to remove javascript params from</param>
 | |
|             <returns>An array of html parameters</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.JavascriptHelperImplementation.AjaxFormOnSubmit(System.String[])">
 | |
|             <summary>
 | |
|             javascript action that should be added to the "onsubmit" event in the form tag.
 | |
|             </summary>
 | |
|             <returns></returns>
 | |
|             <remarks>All javascript option names should end with colon.</remarks>
 | |
|             <example>
 | |
|             <code>
 | |
|             JSHelper.AjaxRequest("/user/show/1", "onsuccess:", "$('userInfo').update(result);");
 | |
|             </code>
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.JavascriptHelperImplementation.AjaxRequest(System.String,System.String[])">
 | |
|             <summary>
 | |
|             Requests a url through ajax
 | |
|             </summary>
 | |
|             <param name="url">url to fetch</param>
 | |
|             <param name="options">optional options in format "key, value, key, value", used in JS request object.</param>
 | |
|             <returns>a link tag</returns>
 | |
|             <remarks>All javascript option names should end with colon.</remarks>
 | |
|             <example>
 | |
|             <code>
 | |
|             JSHelper.AjaxRequest("/user/show/1", "onsuccess:", "$('userInfo').update(result);");
 | |
|             </code>
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.JavascriptHelperImplementation.AjaxUpdater(System.String,System.String,System.String[])">
 | |
|             <summary>
 | |
|             Ajax requests that updates an element with
 | |
|             the fetched content
 | |
|             </summary>
 | |
|             <param name="url">Url to fetch content from</param>
 | |
|             <param name="targetId">element to update</param>
 | |
|             <param name="options">optional options in format "key, value, key, value", used in JS updater object.</param>
 | |
|             <returns>A link tag.</returns>
 | |
|             <remarks>All javascript option names should end with colon.</remarks>
 | |
|             <example>
 | |
|             <code>
 | |
|             JSHelper.AjaxUpdater("/user/show/1", "userInfo", "onsuccess:", "alert('Successful!');");
 | |
|             </code>
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.JavascriptHelperImplementation.DialogLink(System.String,System.String,System.String[])">
 | |
|             <summary>
 | |
|             A link that pop ups a Dialog (overlay div)
 | |
|             </summary>
 | |
|             <param name="url">url to contents of dialog</param>
 | |
|             <param name="title">link title</param>
 | |
|             <returns>A "a"-tag that popups a dialog when clicked</returns>
 | |
|             <param name="htmlAttributes">name/value of html attributes</param>
 | |
|             <example>
 | |
|             WebHelper.DialogLink("/user/show/1", "show user", "onmouseover", "alert('booh!');");
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.JavascriptHelperImplementation.CloseDialog">
 | |
|             <summary>
 | |
|             Close a javascript dialog window/div.
 | |
|             </summary>
 | |
|             <returns>javascript for closing a dialog.</returns>
 | |
|             <see cref="M:HttpServer.Helpers.JavascriptHelperImplementation.DialogLink(System.String,System.String,System.String[])"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.JavascriptHelperImplementation.CreateDialog(System.String,System.String,System.String[])">
 | |
|             <summary>
 | |
|             Creates a new modal dialog window
 | |
|             </summary>
 | |
|             <param name="url">url to open in window.</param>
 | |
|             <param name="title">window title (may not be supported by all js implementations)</param>
 | |
|             <param name="options"></param>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.FormDecoders.HttpMultipart.ReadLine">
 | |
|             <summary>
 | |
|             
 | |
|             </summary>
 | |
|             <returns></returns>
 | |
|             <exception cref="T:System.ArgumentOutOfRangeException"></exception>
 | |
|             <exception cref="T:System.ObjectDisposedException"></exception>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.FormDecoders.HttpMultipart.Element">
 | |
|             <summary>Represents a field in a multipart form</summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Exceptions.BadRequestException">
 | |
|             <summary>
 | |
|             The request could not be understood by the server due to malformed syntax. 
 | |
|             The client SHOULD NOT repeat the request without modifications.
 | |
|             
 | |
|             Text taken from: http://www.submissionchamber.com/help-guides/error-codes.php
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Exceptions.BadRequestException.#ctor(System.String)">
 | |
|             <summary>
 | |
|             Create a new bad request exception.
 | |
|             </summary>
 | |
|             <param name="errMsg">reason to why the request was bad.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Exceptions.BadRequestException.#ctor(System.String,System.Exception)">
 | |
|             <summary>
 | |
|             Create a new bad request exception.
 | |
|             </summary>
 | |
|             <param name="errMsg">reason to why the request was bad.</param>
 | |
|             <param name="inner">inner exception</param>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpFile">
 | |
|             <summary>
 | |
|             Container class for posted files
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpFile.#ctor(System.String,System.String,System.String,System.String)">
 | |
|             <summary>
 | |
|             Creates a container for a posted file
 | |
|             </summary>
 | |
|             <param name="name">The identifier of the post field</param>
 | |
|             <param name="filename">The file path</param>
 | |
|             <param name="contentType">The content type of the file</param>
 | |
|             <param name="uploadFilename">The name of the file uploaded</param>
 | |
|             <exception cref="T:System.ArgumentNullException">If any parameter is null or empty</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpFile.#ctor(System.String,System.String,System.String)">
 | |
|             <summary>
 | |
|             Creates a container for a posted file <see cref="M:HttpServer.HttpFile.#ctor(System.String,System.String,System.String,System.String)"/>
 | |
|             </summary>
 | |
|             <exception cref="T:System.ArgumentNullException">If any parameter is null or empty</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpFile.Finalize">
 | |
|             <summary>Destructor disposing the file</summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpFile.Dispose(System.Boolean)">
 | |
|             <summary>
 | |
|             Deletes the temporary file
 | |
|             </summary>
 | |
|             <param name="disposing">True if manual dispose</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpFile.Dispose">
 | |
|             <summary>
 | |
|             Disposing interface, cleans up managed resources (the temporary file) and suppresses finalization
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpFile.Name">
 | |
|             <summary>
 | |
|             The name/id of the file
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpFile.Filename">
 | |
|             <summary>
 | |
|             The full file path
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpFile.UploadFilename">
 | |
|             <summary>
 | |
|             The name of the uploaded file
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpFile.ContentType">
 | |
|             <summary>
 | |
|             The type of file
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Helpers.JSHelper">
 | |
|             <summary>
 | |
|             Will contain helper functions for javascript.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.JSHelper.AjaxRequest(System.String,System.String[])">
 | |
|             <summary>
 | |
|             Requests a url through ajax
 | |
|             </summary>
 | |
|             <param name="url">url to fetch. Url is NOT enclosed in quotes by the implementation. You need to do that yourself.</param>
 | |
|             <param name="options">optional options in format "key, value, key, value", used in JS request object. All keys should end with colon.</param>
 | |
|             <returns>a link tag</returns>
 | |
|             <remarks>onclick attribute is used by this method.</remarks>
 | |
|             <example>
 | |
|             <code>
 | |
|             // plain text
 | |
|             JSHelper.AjaxRequest("'/user/show/1'");
 | |
|             
 | |
|             // ajax request using this.href
 | |
|             string link = "<a href=\"/user/call/1\" onclick=\"" + JSHelper.AjaxRequest("this.href") + "/<call user</a>";
 | |
|             </code>
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.JSHelper.AjaxUpdater(System.String,System.String,System.String[])">
 | |
|             <summary>
 | |
|             Ajax requests that updates an element with
 | |
|             the fetched content
 | |
|             </summary>
 | |
|             <param name="url">url to fetch. Url is NOT enclosed in quotes by the implementation. You need to do that yourself.</param>
 | |
|             <param name="targetId">element to update</param>
 | |
|             <param name="options">options in format "key, value, key, value". All keys should end with colon.</param>
 | |
|             <returns>A link tag.</returns>
 | |
|             <example>
 | |
|             <code>
 | |
|             JSHelper.AjaxUpdater("'/user/show/1'", "user", "onsuccess:", "alert('hello');", "asynchronous:", "true");
 | |
|             </code>
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.JSHelper.CreateDialog(System.String,System.String,System.String[])">
 | |
|             <summary>
 | |
|             Opens contents in a dialog window.
 | |
|             </summary>
 | |
|             <param name="url">url to contents of dialog</param>
 | |
|             <param name="title">link title</param>
 | |
|             <param name="options">name, value, name, value, all parameter names should end with colon.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.JSHelper.CloseDialog">
 | |
|             <summary>
 | |
|             Close a javascript dialog window/div.
 | |
|             </summary>
 | |
|             <returns>javascript for closing a dialog.</returns>
 | |
|             <see cref="M:HttpServer.Helpers.JSHelper.CreateDialog(System.String,System.String,System.String[])"/>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpRequest">
 | |
|             <summary>
 | |
|             Contains server side HTTP request information.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.HttpRequest.UriSplitters">
 | |
|             <summary>
 | |
|             Chars used to split an URL path into multiple parts.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpRequest.AssignForm(HttpServer.HttpForm)">
 | |
|             <summary>
 | |
|             Assign a form.
 | |
|             </summary>
 | |
|             <param name="form"></param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpRequest.Clone">
 | |
|             <summary>
 | |
|             Creates a new object that is a copy of the current instance.
 | |
|             </summary>
 | |
|             
 | |
|             <returns>
 | |
|             A new object that is a copy of this instance.
 | |
|             </returns>
 | |
|             <filterpriority>2</filterpriority>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpRequest.DecodeBody(HttpServer.FormDecoders.FormDecoderProvider)">
 | |
|             <summary>
 | |
|             Decode body into a form.
 | |
|             </summary>
 | |
|             <param name="providers">A list with form decoders.</param>
 | |
|             <exception cref="T:System.IO.InvalidDataException">If body contents is not valid for the chosen decoder.</exception>
 | |
|             <exception cref="T:System.InvalidOperationException">If body is still being transferred.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpRequest.SetCookies(HttpServer.RequestCookies)">
 | |
|             <summary>
 | |
|              Cookies
 | |
|             </summary>
 | |
|             <param name="cookies">the cookies</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpRequest.CreateResponse(HttpServer.IHttpClientContext)">
 | |
|             <summary>
 | |
|             Create a response object.
 | |
|             </summary>
 | |
|             <returns>A new <see cref="T:HttpServer.IHttpResponse"/>.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpRequest.AddHeader(System.String,System.String)">
 | |
|             <summary>
 | |
|             Called during parsing of a <see cref="T:HttpServer.IHttpRequest"/>.
 | |
|             </summary>
 | |
|             <param name="name">Name of the header, should not be URL encoded</param>
 | |
|             <param name="value">Value of the header, should not be URL encoded</param>
 | |
|             <exception cref="T:HttpServer.Exceptions.BadRequestException">If a header is incorrect.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpRequest.AddToBody(System.Byte[],System.Int32,System.Int32)">
 | |
|             <summary>
 | |
|             Add bytes to the body
 | |
|             </summary>
 | |
|             <param name="bytes">buffer to read bytes from</param>
 | |
|             <param name="offset">where to start read</param>
 | |
|             <param name="length">number of bytes to read</param>
 | |
|             <returns>Number of bytes actually read (same as length unless we got all body bytes).</returns>
 | |
|             <exception cref="T:System.InvalidOperationException">If body is not writable</exception>
 | |
|             <exception cref="T:System.ArgumentNullException"><c>bytes</c> is null.</exception>
 | |
|             <exception cref="T:System.ArgumentOutOfRangeException"><c>offset</c> is out of range.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpRequest.Clear">
 | |
|             <summary>
 | |
|             Clear everything in the request
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.Secure">
 | |
|             <summary>
 | |
|             Gets or sets a value indicating whether this <see cref="T:HttpServer.HttpRequest"/> is secure.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.UriPath">
 | |
|             <summary>
 | |
|             Path and query (will be merged with the host header) and put in Uri
 | |
|             </summary>
 | |
|             <see cref="P:HttpServer.HttpRequest.Uri"/>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.BodyIsComplete">
 | |
|             <summary>
 | |
|             Gets whether the body is complete.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.AcceptTypes">
 | |
|             <summary>
 | |
|             Gets kind of types accepted by the client.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.Body">
 | |
|             <summary>
 | |
|             Gets or sets body stream.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.Connection">
 | |
|             <summary>
 | |
|             Gets or sets kind of connection used for the session.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.ContentLength">
 | |
|             <summary>
 | |
|             Gets or sets number of bytes in the body.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.Headers">
 | |
|             <summary>
 | |
|             Gets headers sent by the client.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.HttpVersion">
 | |
|             <summary>
 | |
|             Gets or sets version of HTTP protocol that's used.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Probably <see cref="F:HttpServer.HttpHelper.HTTP10"/> or <see cref="F:HttpServer.HttpHelper.HTTP11"/>.
 | |
|             </remarks>
 | |
|             <seealso cref="T:HttpServer.HttpHelper"/>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.Method">
 | |
|             <summary>
 | |
|             Gets or sets requested method.
 | |
|             </summary>
 | |
|             <value></value>
 | |
|             <remarks>
 | |
|             Will always be in upper case.
 | |
|             </remarks>
 | |
|             <see cref="!:HttpServer.Method"/>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.QueryString">
 | |
|             <summary>
 | |
|             Gets variables sent in the query string
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.Uri">
 | |
|             <summary>
 | |
|             Gets or sets requested URI.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.UriParts">
 | |
|             <summary>
 | |
|             Uri absolute path splitted into parts.
 | |
|             </summary>
 | |
|             <example>
 | |
|             // uri is: http://gauffin.com/code/tiny/
 | |
|             Console.WriteLine(request.UriParts[0]); // result: code
 | |
|             Console.WriteLine(request.UriParts[1]); // result: tiny
 | |
|             </example>
 | |
|             <remarks>
 | |
|             If you're using controllers than the first part is controller name,
 | |
|             the second part is method name and the third part is Id property.
 | |
|             </remarks>
 | |
|             <seealso cref="P:HttpServer.HttpRequest.Uri"/>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.Param">
 | |
|             <summary>
 | |
|             Gets parameter from <see cref="P:HttpServer.HttpRequest.QueryString"/> or <see cref="P:HttpServer.HttpRequest.Form"/>.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.Form">
 | |
|             <summary>
 | |
|             Gets form parameters.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.IsAjax">
 | |
|             <summary>
 | |
|             Gets whether the request was made by Ajax (Asynchronous JavaScript)
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpRequest.Cookies">
 | |
|             <summary>
 | |
|             Gets cookies that was sent with the request.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpModules.WebSiteModule">
 | |
|             <summary>
 | |
|             The website module let's you handle multiple websites in the same server.
 | |
|             It uses the "Host" header to check which site you want.
 | |
|             </summary>
 | |
|             <remarks>It's recommended that you do not
 | |
|             add any other modules to HttpServer if you are using the website module. Instead,
 | |
|             add all wanted modules to each website.</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.WebSiteModule.#ctor(System.String,System.String)">
 | |
|             <summary>
 | |
|             
 | |
|             </summary>
 | |
|             <param name="host">domain name that should be handled.</param>
 | |
|             <param name="name"></param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.WebSiteModule.Process(HttpServer.IHttpRequest,HttpServer.IHttpResponse,HttpServer.Sessions.IHttpSession)">
 | |
|             <summary>
 | |
|             Method that process the url
 | |
|             </summary>
 | |
|             <param name="request">Information sent by the browser about the request</param>
 | |
|             <param name="response">Information that is being sent back to the client.</param>
 | |
|             <param name="session">Session used to </param>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpModules.WebSiteModule.SiteName">
 | |
|             <summary>
 | |
|             Name of site.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Helpers.ResourceInfo">
 | |
|             <summary>
 | |
|             Container to bind resource names to assemblies
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ResourceInfo.#ctor(System.String,System.String,System.Reflection.Assembly)">
 | |
|             <summary>
 | |
|             Instantiates an instance of <see cref="T:HttpServer.Helpers.ResourceInfo"/>
 | |
|             </summary>
 | |
|             <param name="uri">The dot seperated uri the resource maps to</param>
 | |
|             <param name="resourceName">The full resource name</param>
 | |
|             <param name="assembly">The assembly the resource exists in</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.ResourceInfo.GetStream">
 | |
|             <summary>
 | |
|             Retrieves a stream to the resource
 | |
|             </summary>
 | |
|             <returns>Null if the resource couldn't be located somehow</returns>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Helpers.ResourceInfo.Assembly">
 | |
|             <summary>
 | |
|             Retrieves the assembly the resource resides in
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Helpers.ResourceInfo.Uri">
 | |
|             <summary>
 | |
|             Retrieves the full name/path of the assembly
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Helpers.ResourceInfo.Extension">
 | |
|             <summary>
 | |
|             Retrieves the extension of the resource
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Helpers.ResourceInfo.ExtensionLessUri">
 | |
|             <summary>Returns the Uri without extension</summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Helpers.ResourceInfo.ResourceName">
 | |
|             <summary>Retrieves the full path name to the resource file</summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.RequestParserFactory">
 | |
|             <summary>
 | |
|             Creates request parsers when needed.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.IRequestParserFactory">
 | |
|             <summary>
 | |
|             Creates request parsers when needed.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.IRequestParserFactory.CreateParser(HttpServer.ILogWriter)">
 | |
|             <summary>
 | |
|             Create a new request parser.
 | |
|             </summary>
 | |
|             <param name="logWriter">Used when logging should be enabled.</param>
 | |
|             <returns>A new request parser.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.RequestParserFactory.CreateParser(HttpServer.ILogWriter)">
 | |
|             <summary>
 | |
|             Create a new request parser.
 | |
|             </summary>
 | |
|             <param name="logWriter">Used when logging should be enabled.</param>
 | |
|             <returns>A new request parser.</returns>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Authentication.BasicAuthentication">
 | |
|             <summary>
 | |
|             The "basic" authentication scheme is based on the model that the
 | |
|             client must authenticate itself with a user-ID and a password for
 | |
|             each realm.  The realm value should be considered an opaque string
 | |
|             which can only be compared for equality with other realms on that
 | |
|             server. The server will service the request only if it can validate
 | |
|             the user-ID and password for the protection space of the Request-URI.
 | |
|             There are no optional authentication parameters.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.BasicAuthentication.#ctor(HttpServer.Authentication.AuthenticationHandler,HttpServer.Authentication.AuthenticationRequiredHandler)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Authentication.BasicAuthentication"/> class.
 | |
|             </summary>
 | |
|             <param name="authenticator">Delegate used to provide information used during authentication.</param>
 | |
|             <param name="authenticationRequiredHandler">Delegate used to determine if authentication is required (may be null).</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.BasicAuthentication.#ctor(HttpServer.Authentication.AuthenticationHandler)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Authentication.BasicAuthentication"/> class.
 | |
|             </summary>
 | |
|             <param name="authenticator">Delegate used to provide information used during authentication.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.BasicAuthentication.CreateResponse(System.String,System.Object[])">
 | |
|             <summary>
 | |
|             Create a response that can be sent in the WWW-Authenticate header.
 | |
|             </summary>
 | |
|             <param name="realm">Realm that the user should authenticate in</param>
 | |
|             <param name="options">Not used in basic auth</param>
 | |
|             <returns>A correct auth request.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.BasicAuthentication.Authenticate(System.String,System.String,System.String,System.Object[])">
 | |
|             <summary>
 | |
|             An authentication response have been received from the web browser.
 | |
|             Check if it's correct
 | |
|             </summary>
 | |
|             <param name="authenticationHeader">Contents from the Authorization header</param>
 | |
|             <param name="realm">Realm that should be authenticated</param>
 | |
|             <param name="httpVerb">GET/POST/PUT/DELETE etc.</param>
 | |
|             <param name="options">Not used in basic auth</param>
 | |
|             <returns>Authentication object that is stored for the request. A user class or something like that.</returns>
 | |
|             <exception cref="T:System.ArgumentException">if authenticationHeader is invalid</exception>
 | |
|             <exception cref="T:System.ArgumentNullException">If any of the paramters is empty or null.</exception>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Authentication.BasicAuthentication.Name">
 | |
|             <summary>
 | |
|             name used in http request.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.RequestParserState">
 | |
|             <summary>
 | |
|             Current state in the parsing.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.RequestParserState.FirstLine">
 | |
|             <summary>
 | |
|             Should parse the request line
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.RequestParserState.HeaderName">
 | |
|             <summary>
 | |
|             Searching for a complete header name
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.RequestParserState.AfterName">
 | |
|             <summary>
 | |
|             Searching for colon after header name (ignoring white spaces)
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.RequestParserState.Between">
 | |
|             <summary>
 | |
|             Searching for start of header value (ignoring white spaces)
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.RequestParserState.HeaderValue">
 | |
|             <summary>
 | |
|             Searching for a complete header value (can span over multiple lines, as long as they are prefixed with one/more whitespaces)
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.RequestParserState.Body">
 | |
|             <summary>
 | |
|             Adding bytes to body
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.FormDecoders.XmlDecoder">
 | |
|             <summary>
 | |
|             This decoder converts XML documents to form items.
 | |
|             Each element becomes a subitem in the form, and each attribute becomes an item.
 | |
|             </summary>
 | |
|             <example>
 | |
|             // xml: <hello id="1">something<world id="2">data</world></hello>
 | |
|             // result: 
 | |
|             // form["hello"].Value = "something"
 | |
|             // form["hello"]["id"].Value = 1
 | |
|             // form["hello"]["world]["id"].Value = 1
 | |
|             // form["hello"]["world"].Value = "data"
 | |
|             </example>
 | |
|             <remarks>
 | |
|             The original xml document is stored in form["__xml__"].Value.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.FormDecoders.XmlDecoder.Decode(System.IO.Stream,System.String,System.Text.Encoding)">
 | |
|             <summary>
 | |
|             
 | |
|             </summary>
 | |
|             <param name="stream">Stream containing the content</param>
 | |
|             <param name="contentType">Content type (with any additional info like boundry). Content type is always supplied in lower case</param>
 | |
|             <param name="encoding">Stream encoding</param>
 | |
|             Note: contentType and encoding are not used?
 | |
|             <returns>A http form, or null if content could not be parsed.</returns>
 | |
|             <exception cref="T:System.IO.InvalidDataException"></exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.FormDecoders.XmlDecoder.TraverseNode(HttpServer.IHttpInput,System.Xml.XmlNode)">
 | |
|             <summary>
 | |
|             Recursive function that will go through an xml element and store it's content 
 | |
|             to the form item.
 | |
|             </summary>
 | |
|             <param name="item">(parent) Item in form that content should be added to.</param>
 | |
|             <param name="node">Node that should be parsed.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.FormDecoders.XmlDecoder.CanParse(System.String)">
 | |
|             <summary>
 | |
|             Checks if the decoder can handle the mime type
 | |
|             </summary>
 | |
|             <param name="contentType">Content type (with any additional info like boundry). Content type is always supplied in lower case.</param>
 | |
|             <returns>True if the decoder can parse the specified content type</returns>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.ResponseCookies">
 | |
|             <summary>
 | |
|             Cookies that should be set.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ResponseCookies.Add(HttpServer.ResponseCookie)">
 | |
|             <summary>
 | |
|             Adds a cookie in the collection.
 | |
|             </summary>
 | |
|             <param name="cookie">cookie to add</param>
 | |
|             <exception cref="T:System.ArgumentNullException">cookie is null</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ResponseCookies.Add(HttpServer.RequestCookie,System.DateTime)">
 | |
|             <summary>
 | |
|             Copy a request cookie
 | |
|             </summary>
 | |
|             <param name="cookie"></param>
 | |
|             <param name="expires">When the cookie should expire</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ResponseCookies.GetEnumerator">
 | |
|             <summary>
 | |
|             Gets a collection enumerator on the cookie list.
 | |
|             </summary>
 | |
|             <returns>collection enumerator</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ResponseCookies.Clear">
 | |
|             <summary>
 | |
|             Remove all cookies
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.ResponseCookies.System#Collections#Generic#IEnumerable{HttpServer#ResponseCookie}#GetEnumerator">
 | |
|             <summary>
 | |
|             Returns an enumerator that iterates through the collection.
 | |
|             </summary>
 | |
|             
 | |
|             <returns>
 | |
|             A <see cref="T:System.Collections.Generic.IEnumerator`1"></see> that can be used to iterate through the collection.
 | |
|             </returns>
 | |
|             <filterpriority>1</filterpriority>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.ResponseCookies.Count">
 | |
|             <summary>
 | |
|             Gets the count of cookies in the collection.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.ResponseCookies.Item(System.String)">
 | |
|             <summary>
 | |
|             Gets the cookie of a given identifier (null if not existing).
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.RequestCookies">
 | |
|             <summary>
 | |
|             This class is created as a wrapper, since there are two different cookie types in .Net (Cookie and HttpCookie).
 | |
|             The framework might switch class in the future and we dont want to have to replace all instances
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.RequestCookies.#ctor(System.String)">
 | |
|             <summary>
 | |
|             Let's copy all the cookies.
 | |
|             </summary>
 | |
|             <param name="cookies">value from cookie header.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.RequestCookies.Add(HttpServer.RequestCookie)">
 | |
|             <summary>
 | |
|             Adds a cookie in the collection.
 | |
|             </summary>
 | |
|             <param name="cookie">cookie to add</param>
 | |
|             <exception cref="T:System.ArgumentNullException">cookie is null</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.RequestCookies.GetEnumerator">
 | |
|             <summary>
 | |
|             Gets a collection enumerator on the cookie list.
 | |
|             </summary>
 | |
|             <returns>collection enumerator</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.RequestCookies.Clear">
 | |
|             <summary>
 | |
|             Remove all cookies.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.RequestCookies.System#Collections#Generic#IEnumerable{HttpServer#RequestCookie}#GetEnumerator">
 | |
|             <summary>
 | |
|             Returns an enumerator that iterates through the collection.
 | |
|             </summary>
 | |
|             
 | |
|             <returns>
 | |
|             A <see cref="T:System.Collections.Generic.IEnumerator`1"></see> that can be used to iterate through the collection.
 | |
|             </returns>
 | |
|             <filterpriority>1</filterpriority>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.RequestCookies.Remove(System.String)">
 | |
|             <summary>
 | |
|             Remove a cookie from the collection.
 | |
|             </summary>
 | |
|             <param name="cookieName">Name of cookie.</param>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.RequestCookies.Count">
 | |
|             <summary>
 | |
|             Gets the count of cookies in the collection.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.RequestCookies.Item(System.String)">
 | |
|             <summary>
 | |
|             Gets the cookie of a given identifier (null if not existing).
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpListener">
 | |
|             <summary>
 | |
|             New implementation of the HTTP listener.
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Use the <c>Create</c> methods to create a default listener.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpListener.#ctor(System.Net.IPAddress,System.Int32,HttpServer.IHttpContextFactory)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpListener"/> class.
 | |
|             </summary>
 | |
|             <param name="address">IP Address to accept connections on</param>
 | |
|             <param name="port">TCP Port to listen on, default HTTP port is 80.</param>
 | |
|             <param name="factory">Factory used to create <see cref="T:HttpServer.IHttpClientContext"/>es.</param>
 | |
|             <exception cref="T:System.ArgumentNullException"><c>address</c> is null.</exception>
 | |
|             <exception cref="T:System.ArgumentException">Port must be a positive number.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpListener.#ctor(System.Net.IPAddress,System.Int32,HttpServer.IHttpContextFactory,System.Security.Cryptography.X509Certificates.X509Certificate)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpListener"/> class.
 | |
|             </summary>
 | |
|             <param name="address">The address.</param>
 | |
|             <param name="port">The port.</param>
 | |
|             <param name="factory">The factory.</param>
 | |
|             <param name="certificate">The certificate.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpListener.#ctor(System.Net.IPAddress,System.Int32,HttpServer.IHttpContextFactory,System.Security.Cryptography.X509Certificates.X509Certificate,System.Security.Authentication.SslProtocols)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.HttpListener"/> class.
 | |
|             </summary>
 | |
|             <param name="address">The address.</param>
 | |
|             <param name="port">The port.</param>
 | |
|             <param name="factory">The factory.</param>
 | |
|             <param name="certificate">The certificate.</param>
 | |
|             <param name="protocol">The protocol.</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpListener.Create(System.Net.IPAddress,System.Int32)">
 | |
|             <summary>
 | |
|             Creates a new <see cref="T:HttpServer.HttpListener"/> instance with default factories.
 | |
|             </summary>
 | |
|             <param name="address">Address that the listener should accept connections on.</param>
 | |
|             <param name="port">Port that listener should accept connections on.</param>
 | |
|             <returns>Created HTTP listener.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpListener.Create(System.Net.IPAddress,System.Int32,System.Security.Cryptography.X509Certificates.X509Certificate)">
 | |
|             <summary>
 | |
|             Creates a new <see cref="T:HttpServer.HttpListener"/> instance with default factories.
 | |
|             </summary>
 | |
|             <param name="address">Address that the listener should accept connections on.</param>
 | |
|             <param name="port">Port that listener should accept connections on.</param>
 | |
|             <param name="certificate">Certificate to use</param>
 | |
|             <returns>Created HTTP listener.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpListener.Create(System.Net.IPAddress,System.Int32,System.Security.Cryptography.X509Certificates.X509Certificate,System.Security.Authentication.SslProtocols)">
 | |
|             <summary>
 | |
|             Creates a new <see cref="T:HttpServer.HttpListener"/> instance with default factories.
 | |
|             </summary>
 | |
|             <param name="address">Address that the listener should accept connections on.</param>
 | |
|             <param name="port">Port that listener should accept connections on.</param>
 | |
|             <param name="certificate">Certificate to use</param>
 | |
|             <param name="protocol">which HTTPS protocol to use, default is TLS.</param>
 | |
|             <returns>Created HTTP listener.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpListener.OnAcceptingSocket(System.Net.Sockets.Socket)">
 | |
|             <summary>
 | |
|             Can be used to create filtering of new connections.
 | |
|             </summary>
 | |
|             <param name="socket">Accepted socket</param>
 | |
|             <returns>
 | |
|             true if connection can be accepted; otherwise false.
 | |
|             </returns>
 | |
|         </member>
 | |
|         <member name="E:HttpServer.HttpListener.Accepted">
 | |
|             <summary>
 | |
|             A client have been accepted, but not handled, by the listener.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpHelper">
 | |
|             <summary>
 | |
|             Generic helper functions for HTTP
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.HttpHelper.HTTP10">
 | |
|             <summary>
 | |
|             Version string for HTTP v1.0
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.HttpHelper.HTTP11">
 | |
|             <summary>
 | |
|             Version string for HTTP v1.1
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.HttpHelper.EmptyUri">
 | |
|             <summary>
 | |
|             An empty URI
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpHelper.ParseQueryString(System.String)">
 | |
|             <summary>
 | |
|             Parses a query string.
 | |
|             </summary>
 | |
|             <param name="queryString">Query string (URI encoded)</param>
 | |
|             <returns>A <see cref="T:HttpServer.HttpInput"/> object if successful; otherwise <see cref="F:HttpServer.HttpInput.Empty"/></returns>
 | |
|             <exception cref="T:System.ArgumentNullException"><c>queryString</c> is null.</exception>
 | |
|             <exception cref="T:System.FormatException">If string cannot be parsed.</exception>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpModules.ReverseProxyModule">
 | |
|             <summary>
 | |
|             A reverse proxy are used to act as a bridge between local (protected/hidden) websites
 | |
|             and public clients.
 | |
|             
 | |
|             A typical usage is to allow web servers on non standard ports to still be available
 | |
|             to the public clients, or allow web servers on private ips to be available.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.ReverseProxyModule.#ctor(System.String,System.String)">
 | |
|             <summary>
 | |
|             
 | |
|             </summary>
 | |
|             <param name="source">Base url requested from browser</param>
 | |
|             <param name="destination">Base url on private web server</param>
 | |
|             <example>
 | |
|             // this will return contents from http://192.168.1.128/view/jonas when client requests http://www.gauffin.com/user/view/jonas
 | |
|             _server.Add(new ReverseProxyModule("http://www.gauffin.com/user/", "http://192.168.1.128/");
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.ReverseProxyModule.CanHandle(System.Uri)">
 | |
|             <summary>
 | |
|             Method that determines if an url should be handled or not by the module
 | |
|             </summary>
 | |
|             <param name="uri">Url requested by the client.</param>
 | |
|             <returns>true if module should handle the url.</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.ReverseProxyModule.Process(HttpServer.IHttpRequest,HttpServer.IHttpResponse,HttpServer.Sessions.IHttpSession)">
 | |
|             <summary>
 | |
|             Method that process the url
 | |
|             </summary>
 | |
|             <param name="request">Information sent by the browser about the request</param>
 | |
|             <param name="response">Information that is being sent back to the client.</param>
 | |
|             <param name="session">Session used to </param>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.HttpModules.HttpModuleExceptionEventArgs">
 | |
|             <summary>
 | |
|             Used to inform http server that 
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.HttpModules.HttpModuleExceptionEventArgs.#ctor(System.Exception)">
 | |
|             <summary>
 | |
|             Eventarguments used when an exception is thrown by a module
 | |
|             </summary>
 | |
|             <param name="e">the exception</param>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.HttpModules.HttpModuleExceptionEventArgs.Exception">
 | |
|             <summary>
 | |
|             Exception thrown in a module
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Helpers.Implementations.PrototypeImp">
 | |
|             <summary>
 | |
|             PrototypeJS implementation of the javascript functions.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.Implementations.PrototypeImp.AjaxRequest(System.String,System.String[])">
 | |
|             <summary>
 | |
|             Requests a url through ajax
 | |
|             </summary>
 | |
|             <param name="url">url to fetch. Url is NOT enclosed in quotes by the implementation. You need to do that yourself.</param>
 | |
|             <param name="options">optional options in format "key, value, key, value", used in JS request object. All keys should end with colon.</param>
 | |
|             <returns>a link tag</returns>
 | |
|             <remarks>onclick attribute is used by this method.</remarks>
 | |
|             <example>
 | |
|             <code>
 | |
|             // plain text
 | |
|             JSHelper.AjaxRequest("'/user/show/1'");
 | |
|             
 | |
|             // ajax request using this.href
 | |
|             string link = "<a href=\"/user/call/1\" onclick=\"" + JSHelper.AjaxRequest("this.href") + "/<call user</a>";
 | |
|             </code>
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.Implementations.PrototypeImp.Contains(System.Collections.Generic.IEnumerable{System.String},System.String)">
 | |
|             <summary>
 | |
|             Determins if a list of strings contains a specific value
 | |
|             </summary>
 | |
|             <param name="options">options to check in</param>
 | |
|             <param name="value">value to find</param>
 | |
|             <returns>true if value was found</returns>
 | |
|             <remarks>case insensitive</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.Implementations.PrototypeImp.AjaxUpdater(System.String,System.String,System.String[])">
 | |
|             <summary>
 | |
|             Ajax requests that updates an element with
 | |
|             the fetched content
 | |
|             </summary>
 | |
|             <param name="url">URL to fetch. URL is NOT enclosed in quotes by the implementation. You need to do that yourself.</param>
 | |
|             <param name="targetId">element to update</param>
 | |
|             <param name="options">options in format "key, value, key, value". All keys should end with colon.</param>
 | |
|             <returns>A link tag.</returns>
 | |
|             <example>
 | |
|             <code>
 | |
|             JSHelper.AjaxUpdater("'/user/show/1'", "user", "onsuccess:", "alert('hello');", "asynchronous:", "true");
 | |
|             </code>
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.Implementations.PrototypeImp.DialogLink(System.String,System.String,System.String[])">
 | |
|             <summary>
 | |
|             A link that pop ups a Dialog (overlay div)
 | |
|             </summary>
 | |
|             <param name="url">URL to contents of dialog</param>
 | |
|             <param name="title">link title</param>
 | |
|             <param name="htmlAttributes">name, value, name, value</param>
 | |
|             <returns>
 | |
|             A "a"-tag that popups a dialog when clicked
 | |
|             </returns>
 | |
|             <remarks><para>Requires Control.Modal found here: http://livepipe.net/projects/control_modal/</para>
 | |
|             And the following JavaScript (load it in application.js):
 | |
|             <code>
 | |
|             Event.observe(window, 'load',
 | |
|               function() {
 | |
|                 document.getElementsByClassName('modal').each(function(link){  new Control.Modal(link);  });
 | |
|               }
 | |
|             );
 | |
|             </code>
 | |
|             </remarks>
 | |
|             <example>
 | |
|             WebHelper.DialogLink("/user/show/1", "show user", "onmouseover", "alert('booh!');");
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.Implementations.PrototypeImp.CreateDialog(System.String,System.String,System.String[])">
 | |
|             <summary>
 | |
|             create a modal dialog (usually using DIVs)
 | |
|             </summary>
 | |
|             <param name="url">url to fetch</param>
 | |
|             <param name="title">dialog title</param>
 | |
|             <param name="options">javascript/html attributes. javascript options ends with colon ':'.</param>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.Implementations.PrototypeImp.CloseDialog">
 | |
|             <summary>
 | |
|             Close a javascript dialog window/div.
 | |
|             </summary>
 | |
|             <returns>javascript for closing a dialog.</returns>
 | |
|             <see cref="M:HttpServer.Helpers.Implementations.PrototypeImp.DialogLink(System.String,System.String,System.String[])"/>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Helpers.Implementations.PrototypeImp.AjaxFormOnSubmit(System.String[])">
 | |
|             <summary>
 | |
|             javascript action that should be added to the "onsubmit" event in the form tag.
 | |
|             </summary>
 | |
|             <param name="options">remember to encapsulate strings in ''</param>
 | |
|             <returns></returns>
 | |
|             <remarks>All javascript option names should end with colon.</remarks>
 | |
|             <example>
 | |
|             	<code>
 | |
|             JSHelper.AjaxRequest("/user/show/1", "onsuccess:", "$('userInfo').update(result);");
 | |
|             </code>
 | |
|             </example>
 | |
|         </member>
 | |
|         <member name="T:HttpServer.Authentication.DigestAuthentication">
 | |
|             <summary>
 | |
|             Implements HTTP Digest authentication. It's more secure than Basic auth since password is 
 | |
|             encrypted with a "key" from the server. 
 | |
|             </summary>
 | |
|             <remarks>
 | |
|             Keep in mind that the password is encrypted with MD5. Use a combination of SSL and digest auth to be secure.
 | |
|             </remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.DigestAuthentication.#ctor(HttpServer.Authentication.AuthenticationHandler,HttpServer.Authentication.AuthenticationRequiredHandler)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Authentication.DigestAuthentication"/> class.
 | |
|             </summary>
 | |
|             <param name="authenticator">Delegate used to provide information used during authentication.</param>
 | |
|             <param name="authenticationRequiredHandler">Delegate used to determine if authentication is required (may be null).</param>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.DigestAuthentication.#ctor(HttpServer.Authentication.AuthenticationHandler)">
 | |
|             <summary>
 | |
|             Initializes a new instance of the <see cref="T:HttpServer.Authentication.DigestAuthentication"/> class.
 | |
|             </summary>
 | |
|             <param name="authenticator">Delegate used to provide information used during authentication.</param>
 | |
|         </member>
 | |
|         <member name="F:HttpServer.Authentication.DigestAuthentication.DisableNonceCheck">
 | |
|             <summary>
 | |
|             Used by test classes to be able to use hardcoded values
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.DigestAuthentication.Authenticate(System.String,System.String,System.String,System.Object[])">
 | |
|             <summary>
 | |
|             An authentication response have been received from the web browser.
 | |
|             Check if it's correct
 | |
|             </summary>
 | |
|             <param name="authenticationHeader">Contents from the Authorization header</param>
 | |
|             <param name="realm">Realm that should be authenticated</param>
 | |
|             <param name="httpVerb">GET/POST/PUT/DELETE etc.</param>
 | |
|             <param name="options">First option: true if username/password is correct but not cnonce</param>
 | |
|             <returns>
 | |
|             Authentication object that is stored for the request. A user class or something like that.
 | |
|             </returns>
 | |
|             <exception cref="T:System.ArgumentException">if authenticationHeader is invalid</exception>
 | |
|             <exception cref="T:System.ArgumentNullException">If any of the paramters is empty or null.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.DigestAuthentication.Encrypt(System.String,System.String,System.String,System.String,System.String,System.String,System.String,System.String,System.String)">
 | |
|             <summary>
 | |
|             Encrypts parameters into a Digest string
 | |
|             </summary>
 | |
|             <param name="realm">Realm that the user want to log into.</param>
 | |
|             <param name="userName">User logging in</param>
 | |
|             <param name="password">Users password.</param>
 | |
|             <param name="method">HTTP method.</param>
 | |
|             <param name="uri">Uri/domain that generated the login prompt.</param>
 | |
|             <param name="qop">Quality of Protection.</param>
 | |
|             <param name="nonce">"Number used ONCE"</param>
 | |
|             <param name="nc">Hexadecimal request counter.</param>
 | |
|             <param name="cnonce">"Client Number used ONCE"</param>
 | |
|             <returns>Digest encrypted string</returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.DigestAuthentication.Encrypt(System.String,System.String,System.String,System.String,System.String,System.String)">
 | |
|             <summary>
 | |
|             
 | |
|             </summary>
 | |
|             <param name="ha1">Md5 hex encoded "userName:realm:password", without the quotes.</param>
 | |
|             <param name="ha2">Md5 hex encoded "method:uri", without the quotes</param>
 | |
|             <param name="qop">Quality of Protection</param>
 | |
|             <param name="nonce">"Number used ONCE"</param>
 | |
|             <param name="nc">Hexadecimal request counter.</param>
 | |
|             <param name="cnonce">Client number used once</param>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.DigestAuthentication.CreateResponse(System.String,System.Object[])">
 | |
|             <summary>
 | |
|             Create a response that can be sent in the WWW-Authenticate header.
 | |
|             </summary>
 | |
|             <param name="realm">Realm that the user should authenticate in</param>
 | |
|             <param name="options">First options specifies if true if username/password is correct but not cnonce.</param>
 | |
|             <returns>A correct auth request.</returns>
 | |
|             <exception cref="T:System.ArgumentNullException">If realm is empty or null.</exception>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.DigestAuthentication.Decode(System.String,System.Text.Encoding)">
 | |
|             <summary>
 | |
|             Decodes authorization header value
 | |
|             </summary>
 | |
|             <param name="buffer">header value</param>
 | |
|             <param name="encoding">Encoding that the buffer is in</param>
 | |
|             <returns>All headers and their values if successful; otherwise null</returns>
 | |
|             <example>
 | |
|             NameValueCollection header = DigestAuthentication.Decode("response=\"6629fae49393a05397450978507c4ef1\",\r\nc=00001", Encoding.ASCII);
 | |
|             </example>
 | |
|             <remarks>Can handle lots of whitespaces and new lines without failing.</remarks>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.DigestAuthentication.GetCurrentNonce">
 | |
|             <summary>
 | |
|             Gets the current nonce.
 | |
|             </summary>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.DigestAuthentication.GetMD5HashBinHex2(System.String)">
 | |
|             <summary>
 | |
|             Gets the Md5 hash bin hex2.
 | |
|             </summary>
 | |
|             <param name="toBeHashed">To be hashed.</param>
 | |
|             <returns></returns>
 | |
|         </member>
 | |
|         <member name="M:HttpServer.Authentication.DigestAuthentication.IsValidNonce(System.String)">
 | |
|             <summary>
 | |
|             determines if the nonce is valid or has expired.
 | |
|             </summary>
 | |
|             <param name="nonce">nonce value (check wikipedia for info)</param>
 | |
|             <returns>true if the nonce has not expired.</returns>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Authentication.DigestAuthentication.Name">
 | |
|             <summary>
 | |
|             name used in http request.
 | |
|             </summary>
 | |
|         </member>
 | |
|         <member name="P:HttpServer.Authentication.DigestAuthentication.TokenIsHA1">
 | |
|             <summary>
 | |
|             Gets or sets whether the token supplied in <see cref="T:HttpServer.Authentication.AuthenticationHandler"/> is a
 | |
|             HA1 generated string.
 | |
|             </summary>
 | |
|         </member>
 | |
|     </members>
 | |
| </doc>
 |