﻿<?xml version="1.0" encoding="utf-8"?><Type Name="Server" FullName="Mono.FastCgi.Server"><TypeSignature Language="C#" Value="public class Server" /><TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit Server extends System.Object" /><AssemblyInfo><AssemblyName>fastcgi-mono-server2</AssemblyName><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><Base><BaseTypeName>System.Object</BaseTypeName></Base><Interfaces /><Docs><summary>
            This class runs a FastCGI server and registers responder types.
            </summary><remarks>To be added.</remarks></Docs><Members><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public Server (Mono.FastCgi.Socket socket);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class Mono.FastCgi.Socket socket) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><Parameters><Parameter Name="socket" Type="Mono.FastCgi.Socket" /></Parameters><Docs><param name="socket">
            A <see cref="T:Mono.FastCgi.Socket" /> object to listen on.
            </param><summary>
            Constructs and initializes a new instance of
            <see cref="T:Mono.FastCgi.Server" /> with a given socket.
            </summary><remarks>To be added.</remarks><exception cref="T:System.ArgumentNullException"><paramref name="socket" /> is <see langword="null" />.
            </exception></Docs></Member><Member MemberName="AllocateBuffers"><MemberSignature Language="C#" Value="public void AllocateBuffers (out byte[] buffer1, out byte[] buffer2);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance void AllocateBuffers(unsigned int8[] buffer1, unsigned int8[] buffer2) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="buffer1" Type="System.Byte[]&amp;" RefType="out" /><Parameter Name="buffer2" Type="System.Byte[]&amp;" RefType="out" /></Parameters><Docs><param name="buffer1">
            A <see cref="T:System.Byte[]" /> of size <see cref="F:Mono.FastCgi.Record.SuggestedBufferSize" />.
            </param><param name="buffer2">
            A <see cref="T:System.Byte[]" /> of size <see cref="F:Mono.FastCgi.Record.SuggestedBufferSize" />.
            </param><summary>
            Allocates two buffers from the current instance for use
            in sending and receiving records.
            </summary><remarks>
            The current instance manages buffers to improve
            performance. To release buffers back to the current
            instance, use <see cref="M:Mono.FastCgi.Server.ReleaseBuffers(System.Byte[],System.Byte[])" />.
            </remarks></Docs></Member><Member MemberName="CanAccept"><MemberSignature Language="C#" Value="public bool CanAccept { get; }" /><MemberSignature Language="ILAsm" Value=".property instance bool CanAccept" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Docs><summary>
            Gets whether or not the current instance can accept
            another connection.
            </summary><value>
            A <see cref="T:System.Boolean" /> indicating whether or not
            the current instance will permit another connection.
            </value><remarks>To be added.</remarks></Docs></Member><Member MemberName="CanRequest"><MemberSignature Language="C#" Value="public bool CanRequest { get; }" /><MemberSignature Language="ILAsm" Value=".property instance bool CanRequest" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Docs><summary>
            Gets whether or not the current instance can accept
            another request.
            </summary><value>
            A <see cref="T:System.Boolean" /> indicating whether or not
            the current instance will permit another request.
            </value><remarks>To be added.</remarks></Docs></Member><Member MemberName="ConnectionCount"><MemberSignature Language="C#" Value="public int ConnectionCount { get; }" /><MemberSignature Language="ILAsm" Value=".property instance int32 ConnectionCount" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Int32</ReturnType></ReturnValue><Docs><summary>
            Gets the total number of open connections managed by the
            current instance.
            </summary><value>
            A <see cref="T:System.Int32" /> containing the total number of
            open connections managed by the current instance.
            </value><remarks>To be added.</remarks></Docs></Member><Member MemberName="CreateResponder"><MemberSignature Language="C#" Value="public Mono.FastCgi.IResponder CreateResponder (Mono.FastCgi.ResponderRequest request);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance class Mono.FastCgi.IResponder CreateResponder(class Mono.FastCgi.ResponderRequest request) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>Mono.FastCgi.IResponder</ReturnType></ReturnValue><Parameters><Parameter Name="request" Type="Mono.FastCgi.ResponderRequest" /></Parameters><Docs><param name="request">
            A <see cref="T:Mono.FastCgi.ResponderRequest" /> object to create a
            responder for.
            </param><summary>
            Creates a new <see cref="T:Mono.FastCgi.IResponder" /> object for a
            specified request.
            </summary><returns>
            A <see cref="T:Mono.FastCgi.IResponder" /> object for the provided
            request.
            </returns><remarks>To be added.</remarks><exception cref="T:System.InvalidOperationException">
            The responder role is not supported.
            </exception></Docs></Member><Member MemberName="EndConnection"><MemberSignature Language="C#" Value="public void EndConnection (Mono.FastCgi.Connection connection);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance void EndConnection(class Mono.FastCgi.Connection connection) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="connection" Type="Mono.FastCgi.Connection" /></Parameters><Docs><param name="connection">
            A <see cref="T:Mono.FastCgi.Connection" /> object to terminate.
            </param><summary>
            Ends a specified connection.
            </summary><remarks><para>This method stops a connection by closing its
            requests and listening sockets, permitting its thread to
            terminate.</para><para>Once the connection is stopped, it is removed from
            the list of managed connections, and if the server is not
            accepting, begins the connection process.</para></remarks><exception cref="T:System.ArgumentNullException"><paramref name="connection" /> is
            <see langword="null" />.
            </exception></Docs></Member><Member MemberName="GetValues"><MemberSignature Language="C#" Value="public System.Collections.Generic.IDictionary&lt;string,string&gt; GetValues (System.Collections.Generic.IEnumerable&lt;string&gt; names);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance class System.Collections.Generic.IDictionary`2&lt;string, string&gt; GetValues(class System.Collections.Generic.IEnumerable`1&lt;string&gt; names) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Collections.Generic.IDictionary&lt;System.String,System.String&gt;</ReturnType></ReturnValue><Parameters><Parameter Name="names" Type="System.Collections.Generic.IEnumerable&lt;System.String&gt;" /></Parameters><Docs><param name="names">
            A <see cref="T:System.Collections.Generic.IEnumerable&lt;string&gt;" />
            object containing FastCGI server variable names.
            </param><summary>
            Gets name/value pairs for server variables.
            </summary><returns>
            A <see cref="T:System.Collections.Generic.IDictionary&lt;string,string&gt;" />
            object containing the server variables used by the
            current instance.
            </returns><remarks><para>A FastCGI client can at any time request
            information on a collection of server variables. It
            provides a list of variable names to which the server
            responds with name/value pairs containing their
            content.</para></remarks><exception cref="T:System.ArgumentNullException"><paramref name="names" /> is
            <see langword="null" />.
            </exception><exception cref="T:System.ArgumentException"><paramref name="names" /> contains a non-string value.
            </exception></Docs></Member><Member MemberName="MaxConnections"><MemberSignature Language="C#" Value="public int MaxConnections { set; get; }" /><MemberSignature Language="ILAsm" Value=".property instance int32 MaxConnections" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Int32</ReturnType></ReturnValue><Docs><summary>
            Gets and sets the maximum number of concurrent
            connections the current instance will allow before it
            stops accepting new ones.
            </summary><value>
            A <see cref="T:System.Int32" /> containing the number of
            concurrent connections allowed by the current instance.
            </value><remarks>
            When the maximum number of connections has been reached,
            the server will stop accepting connections until one of
            the existing connection is terminated.
            </remarks><exception cref="T:System.ArgumentOutOfRangeException">
            The value is less than 1.
            </exception></Docs></Member><Member MemberName="MaxRequests"><MemberSignature Language="C#" Value="public int MaxRequests { set; get; }" /><MemberSignature Language="ILAsm" Value=".property instance int32 MaxRequests" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Int32</ReturnType></ReturnValue><Docs><summary>
            Gets and sets the maximum number of concurrent requests
            the current instance will allow before it starts
            rejecting new ones.
            </summary><value>
            A <see cref="T:System.Int32" /> containing the number of
            concurrent requests allowed by the current instance.
            </value><remarks><para>When the maximum number of requests has been
            reached, the server will respond to requests with the
            FastCGI "Overloaded" end-of-request record.</para><para>In the case the connection multiplexing is
            disabled, this property is redundant to
            <see cref="P:Mono.FastCgi.Server.MaxConnections" />, as only one request is
            permitted per connection. In such a case, this property
            should be no less than <see cref="P:Mono.FastCgi.Server.MaxConnections" /> to
            avoid unnecessary connections.</para></remarks><exception cref="T:System.ArgumentOutOfRangeException">
            The value is less than 1.
            </exception></Docs></Member><Member MemberName="MultiplexConnections"><MemberSignature Language="C#" Value="public bool MultiplexConnections { set; get; }" /><MemberSignature Language="ILAsm" Value=".property instance bool MultiplexConnections" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Docs><summary>
            Gets and sets whether or not the multiplexing of
            requests is permitted in the current instance.
            </summary><value>
            A <see cref="T:System.Boolean" /> indicating whether or not
            multiplexing is permitted in the current instance.
            </value><remarks>
            Multiplexing of connections allows multiple requests and
            responses to be sent simultaneously. This allows for
            improved response times for multiple requests send over a
            single connection.
            </remarks></Docs></Member><Member MemberName="ReleaseBuffers"><MemberSignature Language="C#" Value="public void ReleaseBuffers (byte[] buffer1, byte[] buffer2);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance void ReleaseBuffers(unsigned int8[] buffer1, unsigned int8[] buffer2) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="buffer1" Type="System.Byte[]" /><Parameter Name="buffer2" Type="System.Byte[]" /></Parameters><Docs><param name="buffer1">
            A <see cref="T:System.Byte[]" /> allocated by <see cref="M:Mono.FastCgi.Server.AllocateBuffers(System.Byte[],System.Byte[])" />.
            </param><param name="buffer2">
            A <see cref="T:System.Byte[]" /> allocated by <see cref="M:Mono.FastCgi.Server.AllocateBuffers(System.Byte[],System.Byte[])" />.
            </param><summary>
            Releases two buffers back to the current instance.
            </summary><remarks>
            The current instance manages buffers to improve
            performance. To allocate buffers, use <see cref="M:Mono.FastCgi.Server.AllocateBuffers(System.Byte[],System.Byte[])" />.
            </remarks></Docs></Member><Member MemberName="RequestCount"><MemberSignature Language="C#" Value="public int RequestCount { get; }" /><MemberSignature Language="ILAsm" Value=".property instance int32 RequestCount" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Int32</ReturnType></ReturnValue><Docs><summary>
            Gets the total number of open requests managed by the
            current instance.
            </summary><value>
            A <see cref="T:System.Int32" /> containing the total number of
            open requests managed by the current instance.
            </value><remarks>To be added.</remarks></Docs></Member><Member MemberName="SetResponder"><MemberSignature Language="C#" Value="public void SetResponder (Type responder);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance void SetResponder(class System.Type responder) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="responder" Type="System.Type" /></Parameters><Docs><param name="responder">
            A <see cref="T:System.Type" /> for a class implementing the
            <see cref="T:Mono.FastCgi.IResponder" /> interface.
            </param><summary>
            Sets the <see cref="T:Mono.FastCgi.IResponder" /> type to use for the
            FastCGI responder role.
            </summary><remarks>To be added.</remarks><exception cref="T:System.ArgumentException"><paramref name="responder" /> does not implement the
            <see cref="T:Mono.FastCgi.IResponder" /> interface or does not provide
            the proper constructor.
            </exception></Docs></Member><Member MemberName="Start"><MemberSignature Language="C#" Value="public void Start (bool background);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Start(bool background) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="background" Type="System.Boolean" /></Parameters><Docs><param name="background">
            A <see cref="T:System.Boolean" /> specifying whether or not the
            server thread should be run as a background thread.
            </param><summary>
            Starts the server in a different thread.
            </summary><remarks><para>The behavior of background and foreground threads
            are identical except in that fact that the application
            will not terminate while foreground threads are
            running.</para><para>See <see cref="P:System.Threading.Thread.IsBackground" /> for more
            details.</para></remarks><exception cref="T:System.InvalidOperationException">
            The server is already started.
            </exception></Docs></Member><Member MemberName="Stop"><MemberSignature Language="C#" Value="public void Stop ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Stop() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters /><Docs><summary>
            Stops the server.
            </summary><remarks>
            This closes all connections and aborts the thread. If
            the thread is a foreground thread, this will allow the
            program to terminate.
            </remarks><exception cref="T:System.InvalidOperationException">
            The server is not started.
            </exception></Docs></Member><Member MemberName="SupportsResponder"><MemberSignature Language="C#" Value="public bool SupportsResponder { get; }" /><MemberSignature Language="ILAsm" Value=".property instance bool SupportsResponder" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Boolean</ReturnType></ReturnValue><Docs><summary>
            Gets whether or not the current instance supports
            the role of FastCGI responder.
            </summary><value>
            A <see cref="T:System.Boolean" /> indicating whether or not the
            responder role is supported by the current instance.
            </value><remarks>To be added.</remarks></Docs></Member></Members></Type>