﻿<?xml version="1.0" encoding="utf-8"?><Type Name="Record" FullName="Mono.FastCgi.Record"><TypeSignature Language="C#" Value="public struct Record" /><TypeSignature Language="ILAsm" Value=".class public sequential ansi sealed beforefieldinit Record extends System.ValueType" /><AssemblyInfo><AssemblyName>fastcgi-mono-server2</AssemblyName><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><Base><BaseTypeName>System.ValueType</BaseTypeName></Base><Interfaces /><Docs><summary>
            This struct sends and receives FastCGI records.
            </summary><remarks>To be added.</remarks></Docs><Members><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public Record (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 receive the record data
            from.
            </param><summary>
            Constructs and initializes a new instance of <see cref="T:Mono.FastCgi.Record" /> by reading the contents from a specified
            socket.
            </summary><remarks>
            To improve performance, consider using a buffer and
            <see cref="T:Mono.FastCgi.Record" /> instead.
            </remarks><exception cref="T:System.ArgumentNullException"><paramref name="socket" /> is <see langword="null" />.
            </exception><exception cref="T:System.ArgumentException"><paramref name="socket" /> does not contain a complete
            record.
            </exception></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public Record (Mono.FastCgi.Socket socket, byte[] buffer);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class Mono.FastCgi.Socket socket, unsigned int8[] buffer) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><Parameters><Parameter Name="socket" Type="Mono.FastCgi.Socket" /><Parameter Name="buffer" Type="System.Byte[]" /></Parameters><Docs><param name="socket">
            A <see cref="T:Mono.FastCgi.Socket" /> object to receive the record data
            from.
            </param><param name="buffer">
            A <see cref="T:System.Byte[]" /> containing the buffer to use when
            receiving from the socket or <see langword="null" /> to
            create the buffers on the fly.
            </param><summary>
            Constructs and initializes a new instance of <see cref="T:Mono.FastCgi.Record" /> by reading the contents from a specified
            socket.
            </summary><remarks><para>If <paramref name="buffer" /> is not <see langword="null" />, the suggested size is <see cref="F:Mono.FastCgi.Record.SuggestedBufferSize" />. If the size of the buffer
            is insufficient to read the data, a sufficiently sized
            array will be created on a per-instance basis.</para><note type="caution"><para>If a buffer is used, the new instance
            is only valid until the same buffer is used again.
            Therefore, use an extra degree of caution when using
            this constructor.</para></note></remarks><exception cref="T:System.ArgumentNullException"><paramref name="socket" /> is <see langword="null" />.
            </exception><exception cref="T:System.ArgumentException"><paramref name="socket" /> does not contain a complete
            record.
            </exception></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public Record (byte version, Mono.FastCgi.RecordType type, ushort requestID, byte[] bodyData);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(unsigned int8 version, valuetype Mono.FastCgi.RecordType type, unsigned int16 requestID, unsigned int8[] bodyData) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><Parameters><Parameter Name="version" Type="System.Byte" /><Parameter Name="type" Type="Mono.FastCgi.RecordType" /><Parameter Name="requestID" Type="System.UInt16" /><Parameter Name="bodyData" Type="System.Byte[]" /></Parameters><Docs><param name="version">
            A <see cref="T:System.Byte" /> containing the FastCGI version the
            record is structured for.
            </param><param name="type">
            A <see cref="T:Mono.FastCgi.RecordType" /> containing the type of
            record to create.
            </param><param name="requestID">
            A <see cref="T:System.UInt16" /> containing the ID of the request
            associated with the new record.
            </param><param name="bodyData">
            A <see cref="T:System.Byte[]" /> containing the contents to use
            in the new record.
            </param><summary>
            Constructs and initializes a new instance of <see cref="T:Mono.FastCgi.Record" /> populating it with a specified version,
            type, ID, and body.
            </summary><remarks><note type="caution">
            The new instance will store a reference to <paramref name="bodyData" /> and as such be invalid when the
            value changes externally.
            </note></remarks><exception cref="T:System.ArgumentNullException"><paramref name="bodyData" /> is <see langword="null" />.
            </exception><exception cref="T:System.ArgumentException"><paramref name="bodyData" /> contains more than 65535
            bytes and cannot be sent.
            </exception></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public Record (byte version, Mono.FastCgi.RecordType type, ushort requestID, byte[] bodyData, int bodyIndex, int bodyLength);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(unsigned int8 version, valuetype Mono.FastCgi.RecordType type, unsigned int16 requestID, unsigned int8[] bodyData, int32 bodyIndex, int32 bodyLength) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><Parameters><Parameter Name="version" Type="System.Byte" /><Parameter Name="type" Type="Mono.FastCgi.RecordType" /><Parameter Name="requestID" Type="System.UInt16" /><Parameter Name="bodyData" Type="System.Byte[]" /><Parameter Name="bodyIndex" Type="System.Int32" /><Parameter Name="bodyLength" Type="System.Int32" /></Parameters><Docs><param name="version">
            A <see cref="T:System.Byte" /> containing the FastCGI version the
            record is structured for.
            </param><param name="type">
            A <see cref="T:Mono.FastCgi.RecordType" /> containing the type of
            record to create.
            </param><param name="requestID">
            A <see cref="T:System.UInt16" /> containing the ID of the request
            associated with the new record.
            </param><param name="bodyData">
            A <see cref="T:System.Byte[]" /> containing the contents to use
            in the new record.
            </param><param name="bodyIndex">
            A <see cref="T:System.Int32" /> specifying the index in <paramref name="bodyData" /> at which the body begins.
            </param><param name="bodyLength">
            A <see cref="T:System.Int32" /> specifying the length of the body in
            <paramref name="bodyData" /> or -1 if all remaining data
            (<c><paramref name="bodyData" />.Length - <paramref name="bodyIndex" /></c>) is used.
            </param><summary>
            Constructs and initializes a new instance of <see cref="T:Mono.FastCgi.Record" /> populating it with a specified version,
            type, ID, and body.
            </summary><remarks><note type="caution">
            The new instance will store a reference to <paramref name="bodyData" /> and as such be invalid when the
            value changes externally.
            </note></remarks><exception cref="T:System.ArgumentNullException"><paramref name="bodyData" /> is <see langword="null" />.
            </exception><exception cref="T:System.ArgumentOutOfRangeException"><paramref name="bodyIndex" /> is outside of the range
            of <paramref name="bodyData" />.
            </exception><exception cref="T:System.ArgumentException"><paramref name="bodyLength" /> contains more than 65535
            bytes or is set to -1 and calculated to be greater than
            65535 bytes.
            </exception></Docs></Member><Member MemberName="BodyLength"><MemberSignature Language="C#" Value="public ushort BodyLength { get; }" /><MemberSignature Language="ILAsm" Value=".property instance unsigned int16 BodyLength" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.UInt16</ReturnType></ReturnValue><Docs><summary>
            Gets the length of the body of the current instance.
            </summary><value>
            A <see cref="T:System.UInt16" /> containing the body length of the
            current instance.
            </value><remarks>To be added.</remarks></Docs></Member><Member MemberName="CopyTo"><MemberSignature Language="C#" Value="public void CopyTo (byte[] dest, int destIndex);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance void CopyTo(unsigned int8[] dest, int32 destIndex) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="dest" Type="System.Byte[]" /><Parameter Name="destIndex" Type="System.Int32" /></Parameters><Docs><param name="dest">
            A <see cref="T:System.Byte[]" /> to copy the body to.
            </param><param name="destIndex">
            A <see cref="T:System.Int32" /> specifying at what index to start
            copying.
            </param><summary>
            Copies the body to another array.
            </summary><remarks>To be added.</remarks><exception cref="T:System.ArgumentNullException"><paramref name="dest" /> is <see langref="null" />.
            </exception><exception cref="T:System.ArgumentOutOfRangeException"><paramref name="destIndex" /> is less than zero or does
            not provide enough space to copy the body.
            </exception></Docs></Member><Member MemberName="GetBody"><MemberSignature Language="C#" Value="public byte[] GetBody ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance unsigned int8[] GetBody() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Byte[]</ReturnType></ReturnValue><Parameters /><Docs><summary>
            Gets the body data of with the current instance.
            </summary><returns>
            A new <see cref="T:System.Byte[]" /> containing the body data of
            the current instance.
            </returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="HeaderSize"><MemberSignature Language="C#" Value="public const int HeaderSize = 8;" /><MemberSignature Language="ILAsm" Value=".field public static literal int32 HeaderSize = (8)" /><MemberType>Field</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Int32</ReturnType></ReturnValue><MemberValue>8</MemberValue><Docs><summary>
            The size of a FastCGI record header.
            </summary><remarks>To be added.</remarks></Docs></Member><Member MemberName="RequestID"><MemberSignature Language="C#" Value="public ushort RequestID { get; }" /><MemberSignature Language="ILAsm" Value=".property instance unsigned int16 RequestID" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.UInt16</ReturnType></ReturnValue><Docs><summary>
            Gets the ID of the request associated with the current
            instance.
            </summary><value>
            A <see cref="T:System.Byte" /> containing the ID of the request
            associated with the current instance.
            </value><remarks>To be added.</remarks></Docs></Member><Member MemberName="Send"><MemberSignature Language="C#" Value="public void Send (Mono.FastCgi.Socket socket);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Send(class Mono.FastCgi.Socket socket) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="socket" Type="Mono.FastCgi.Socket" /></Parameters><Docs><param name="socket">
            A <see cref="T:Mono.FastCgi.Socket" /> object to send the data over.
            </param><summary>
            Sends a FastCGI record with the data from the current
            instance over a given socket.
            </summary><remarks>To be added.</remarks></Docs></Member><Member MemberName="Send"><MemberSignature Language="C#" Value="public void Send (Mono.FastCgi.Socket socket, byte[] buffer);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig instance void Send(class Mono.FastCgi.Socket socket, unsigned int8[] buffer) cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Void</ReturnType></ReturnValue><Parameters><Parameter Name="socket" Type="Mono.FastCgi.Socket" /><Parameter Name="buffer" Type="System.Byte[]" /></Parameters><Docs><param name="socket">
            A <see cref="T:Mono.FastCgi.Socket" /> object to send the data over.
            </param><param name="buffer">
            A <see cref="T:System.Byte[]" /> to write the record to or <see langword="null" /> to create a temporary buffer during
            the send.
            </param><summary>
            Sends a FastCGI record with the data from the current
            instance over a given socket.
            </summary><remarks>
            If <paramref name="buffer" /> is of insufficient size to
            write to the buffer, a temporary buffer will be created.
            </remarks></Docs></Member><Member MemberName="SuggestedBufferSize"><MemberSignature Language="C#" Value="public const int SuggestedBufferSize = 65798;" /><MemberSignature Language="ILAsm" Value=".field public static literal int32 SuggestedBufferSize = (65798)" /><MemberType>Field</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Int32</ReturnType></ReturnValue><MemberValue>65798</MemberValue><Docs><summary>
            Contains the suggested buffer size, equal to the maximum
            possible size of a record.
            </summary><remarks>To be added.</remarks></Docs></Member><Member MemberName="ToString"><MemberSignature Language="C#" Value="public override string ToString ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig virtual instance string ToString() cil managed" /><MemberType>Method</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.String</ReturnType></ReturnValue><Parameters /><Docs><summary>
            Creates and returns a <see cref="T:System.String" />
            representation of the current instance.
            </summary><returns>
            A <see cref="T:System.String" /> representation of the current
            instance.
            </returns><remarks>To be added.</remarks></Docs></Member><Member MemberName="Type"><MemberSignature Language="C#" Value="public Mono.FastCgi.RecordType Type { get; }" /><MemberSignature Language="ILAsm" Value=".property instance valuetype Mono.FastCgi.RecordType Type" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>Mono.FastCgi.RecordType</ReturnType></ReturnValue><Docs><summary>
            Gets the FastCGI record type of the current instance.
            </summary><value>
            A <see cref="T:System.Byte" /> containing the FastCGI record type
            of the current instance.
            </value><remarks>To be added.</remarks></Docs></Member><Member MemberName="Version"><MemberSignature Language="C#" Value="public byte Version { get; }" /><MemberSignature Language="ILAsm" Value=".property instance unsigned int8 Version" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>2.8.1.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.Byte</ReturnType></ReturnValue><Docs><summary>
            Gets the FastCGI version of the current instance.
            </summary><value>
            A <see cref="T:System.Byte" /> containing the FastCGI version of
            the current instance.
            </value><remarks>To be added.</remarks></Docs></Member></Members></Type>