diff --git a/lib/owin/Microsoft.Owin.Host.SystemWeb.dll b/lib/owin/Microsoft.Owin.Host.SystemWeb.dll index 7a2c75e3f..a8e370b87 100644 Binary files a/lib/owin/Microsoft.Owin.Host.SystemWeb.dll and b/lib/owin/Microsoft.Owin.Host.SystemWeb.dll differ diff --git a/lib/owin/Microsoft.Owin.Host.SystemWeb.xml b/lib/owin/Microsoft.Owin.Host.SystemWeb.xml index 7e5366f86..c164a1675 100644 --- a/lib/owin/Microsoft.Owin.Host.SystemWeb.xml +++ b/lib/owin/Microsoft.Owin.Host.SystemWeb.xml @@ -145,24 +145,6 @@ Looks up a localized string similar to The '{0}' method on class '{1}' does not have the expected signature 'void {0}(IAppBuilder)'.. - - - - - - - - - - - - - - - - - - Used to provide the data protection services that are derived from the MachineKey API. It is the best choice of @@ -177,35 +159,39 @@ An instance of a data protection service - Provides extension methods for . + + Provides extension methods for . + - + Gets the for the current request. - + Gets the for the current request. - Provides extension methods for . + + Provides extension methods for . + - + Gets the for the current request. - + Gets the for the current request. diff --git a/lib/owin/Microsoft.Owin.XML b/lib/owin/Microsoft.Owin.XML index 3c01fbdbd..c76bbd4ad 100644 --- a/lib/owin/Microsoft.Owin.XML +++ b/lib/owin/Microsoft.Owin.XML @@ -4,63 +4,14 @@ Microsoft.Owin - - - This wraps OWIN environment dictionary and provides strongly typed accessors. - - - This wraps OWIN environment dictionary and provides strongly typed accessors. - - - - - Gets a value from the OWIN environment, or returns default(T) if not present. - - - - - - - - Sets the given key and value in the OWIN environment. - - - - - - - - Access the Authentication middleware functionality available on the current request. - - - - - A wrapper exposing request specific properties - - - - - A wrapper exposing response specific properties - - - - - The wrapped OWIN environment. - - - - - Gets or sets the host.TraceOutput environment value. - - - Extension methods for IAppBuilder. + Extension methods for . - + Inserts a middleware into the OWIN pipeline. The middleware type @@ -69,14 +20,14 @@ - + Inserts into the OWIN pipeline a middleware which does not have a next middleware reference. An app that handles all requests - + Inserts a middleware into the OWIN pipeline. An app that handles the request or calls the given next Func @@ -84,56 +35,33 @@ - Middleware for executing in-line Func middleware. + Represents a middleware for executing in-line function middleware. - + - An abstract base class for a standard middleware pattern. + Initializes a new instance of the class. + The pointer to next middleware. + A function that handles all requests. - + - Instantiates the middleware with an optional pointer to the next component. + Initializes a new instance of the class. - + The pointer to next middleware. + A function that handles the request or calls the given next function. - + - Process an individual request. + Invokes the handler for processing the request. - - - - - - The optional next component. - - - - - - - - An app that handles all requests - - - - - - - An app that handles the request or calls the given next Func - - - - Process an individual request. - - - + The OWIN context. + The object that represents the request operation. - + Contains the parsed form values. @@ -214,230 +142,230 @@ - + Contains the parsed form values. - + Initializes a new instance of the class. - + The store for the form. - A wrapper for owin.RequestHeaders and owin.ResponseHeaders + Represents a wrapper for owin.RequestHeaders and owin.ResponseHeaders. - A wrapper for owin.RequestHeaders and owin.ResponseHeaders + Represents a wrapper for owin.RequestHeaders and owin.ResponseHeaders. - Parses out comma separated headers into individual values. Quoted values will not be coma split, and the quotes will be removed. + Get the associated values from the collection separated into individual values. + Quoted values will not be split, and the quotes will be removed. - - + The header name. + the associated values from the collection separated into individual values, or null if the key is not present. Add a new value. Appends to the header if already present - - + The header name. + The header value. Add new values. Each item remains a separate array entry. - - + The header name. + The header values. Quotes any values containing comas, and then coma joins all of the values with any existing values. - - + The header name. + The header values. - Sets a specific header value + Sets a specific header value. - - + The header name. + The header value. - Sets the specified header values without modification + Sets the specified header values without modification. - - + The header name. + The header values. Quotes any values containing comas, and then coma joins all of the values. - - + The header name. + The header values. - Get or set the associated header value in the collection. Multiple values will be merged. - Returns null if the key is not present. + Get or sets the associated value from the collection as a single string. - - + The header name. + the associated value from the collection as a single string or null if the key is not present. - Create a new wrapper + Initializes a new instance of the class. - + The underlying data store. - + Returns an enumerator that iterates through a collection. - + An object that can be used to iterate through the collection. - + Returns an enumerator that iterates through a collection. - + An object that can be used to iterate through the collection. - Get the associated value from the collection. Multiple values will be merged. - Returns null if the key is not present. + Get the associated value from the collection as a single string. - - + The header name. + the associated value from the collection as a single string or null if the key is not present. - Get the associated values from the collection in their original format. - Returns null if the key is not present. + Get the associated values from the collection without modification. - - + The header name. + the associated value from the collection without modification, or null if the key is not present. - Parses out comma separated headers into individual values. Quoted values will not be coma split, and the quotes will be removed. + Get the associated values from the collection separated into individual values. + Quoted values will not be split, and the quotes will be removed. - - + The header name. + the associated values from the collection separated into individual values, or null if the key is not present. Add a new value. Appends to the header if already present - - + The header name. + The header value. Add new values. Each item remains a separate array entry. - - + The header name. + The header values. Quotes any values containing comas, and then coma joins all of the values with any existing values. - - + The header name. + The header values. - Sets a specific header value + Sets a specific header value. - - + The header name. + The header value. - Sets the specified header values without modification + Sets the specified header values without modification. - - + The header name. + The header values. Quotes any values containing comas, and then coma joins all of the values. - - + The header name. + The header values. - + Adds the given header and values to the collection. - - + The header name. + The header values. - + Determines whether the contains a specific key. - - + The key. + true if the contains a specific key; otherwise, false. - + Removes the given header from the collection. - - + The header name. + true if the specified object was removed from the collection; otherwise, false. - + Retrieves a value from the dictionary. - - - + The header name. + The value. + true if the contains the key; otherwise, false. - + Adds a new list of items to the collection. - + The item to add. - + Clears the entire list of objects. - + Returns a value indicating whether the specified object occurs within this collection. - - + The item. + true if the specified object occurs within this collection; otherwise, false. - + Copies the elements to a one-dimensional Array instance at the specified index. - - + The one-dimensional Array that is the destination of the specified objects copied from the . + The zero-based index in at which copying begins. - + Removes the given item from the the collection. - - + The item. + true if the specified object was removed from the collection; otherwise, false. - + Gets an that contains the keys in the ;. + An that contains the keys in the . @@ -446,183 +374,394 @@ - + Gets the number of elements contained in the ;. + The number of elements contained in the . - + Gets a value that indicates whether the is in read-only mode. + true if the is in read-only mode; otherwise, false. - Get or set the associated header value in the collection. Multiple values will be merged. - Returns null if the key is not present. + Get or sets the associated value from the collection as a single string. - - + The header name. + the associated value from the collection as a single string or null if the key is not present. Throws KeyNotFoundException if the key is not present. - + The header name. + + + Represents the host portion of a Uri can be used to construct Uri's properly formatted and encoded for use in + HTTP headers. + + + + + Creates a new HostString without modification. The value should be Unicode rather than punycode, and may have a port. + IPv4 and IPv6 addresses are also allowed, and also may have ports. + + + + + + Returns the value as normalized by ToUriComponent(). + + + + + + Returns the value properly formatted and encoded for use in a URI in a HTTP header. + Any Unicode is converted to punycode. IPv6 addresses will have brackets added if they are missing. + + + + + + Creates a new HostString from the given uri component. + Any punycode will be converted to Unicode. + + + + + + + Creates a new HostString from the host and port of the give Uri instance. + Punycode will be converted to Unicode. + + + + + + + Compares the equality of the Value property, ignoring case. + + + + + + + Compares against the given object only if it is a HostString. + + + + + + + Gets a hash code for the value. + + + + + + Compares the two instances for equality. + + + + + + + + Compares the two instances for inequality. + + + + + + + + Returns the original value from the constructor. + + + + + This handles cookies that are limited by per cookie length. It breaks down long cookies for responses, and reassembles them + from requests. + + + + + Get the reassembled cookie. Non chunked cookies are returned normally. + Cookies with missing chunks just have their "chunks:XX" header returned. + + + + The reassembled cookie, if any, or null. + + + + Appends a new response cookie to the Set-Cookie header. If the cookie is larger than the given size limit + then it will be broken down into multiple cookies as follows: + Set-Cookie: CookieName=chunks:3; path=/ + Set-Cookie: CookieNameC1=Segment1; path=/ + Set-Cookie: CookieNameC2=Segment2; path=/ + Set-Cookie: CookieNameC3=Segment3; path=/ + + + + + + + + + Deletes the cookie with the given key by setting an expired state. If a matching chunked cookie exists on + the request, delete each chunk. + + + + + + + + The maximum size of cookie to send back to the client. If a cookie exceeds this size it will be broken down into multiple + cookies. Set this value to null to disable this behavior. The default is 4090 characters, which is supported by all + common browsers. + + Note that browsers may also have limits on the total size of all cookies per domain, and on the number of cookies per domain. + + + + + Throw if not all chunks of a cookie are available on a request for re-assembly. + + + + + This wraps OWIN environment dictionary and provides strongly typed accessors. + + + + + Gets a value from the OWIN environment, or returns default(T) if not present. + + The type of the value. + The key of the value to get. + The value with the specified key or the default(T) if not present. + + + + Sets the given key and value in the OWIN environment. + + The type of the value. + The key of the value to set. + The value to set. + This instance. + + + + Gets a wrapper exposing request specific properties. + + A wrapper exposing request specific properties. + + + + Gets a wrapper exposing response specific properties. + + A wrapper exposing response specific properties. + + + + Gets the Authentication middleware functionality available on the current request. + + The authentication middleware functionality available on the current request. + + + + Gets the OWIN environment. + + The OWIN environment. + + + + Gets or sets the host.TraceOutput environment value. + + The host.TraceOutput TextWriter. + This wraps OWIN environment dictionary and provides strongly typed accessors. + + - This wraps OWIN environment dictionary and provides strongly typed accessors. + Asynchronously reads and parses the request body as a form. + The parsed form data. Gets a value from the OWIN environment, or returns default(T) if not present. - - - + The type of the value. + The key of the value to get. + The value with the specified key or the default(T) if not present. Sets the given key and value in the OWIN environment. - - - - - - - Parses the request body as a form - + The type of the value. + The key of the value to set. + The value to set. + This instance. - The wrapped OWIN environment. + Gets the OWIN environment. + The OWIN environment. - + Gets the request context. + The request context. - The HTTP method/verb, e.g. GET, POST, etc.. + Gets or set the HTTP method. + The HTTP method. - The HTTP request scheme (e.g. http or https) from owin.RequestScheme. + Gets or set the HTTP request scheme from owin.RequestScheme. + The HTTP request scheme from owin.RequestScheme. Returns true if the owin.RequestScheme is https. + true if this request is using https; otherwise, false. - The request host, taken from the Host request header in owin.RequestHeaders. - May include the port. + Gets or set the Host header. May include the port. + The Host header. - See owin.RequestPathBase. + Gets or set the owin.RequestPathBase. + The owin.RequestPathBase. - The request path from owin.RequestPath. + Gets or set the request path from owin.RequestPath. + The request path from owin.RequestPath. - The query string from owin.RequestQueryString. + Gets or set the query string from owin.RequestQueryString. + The query string from owin.RequestQueryString. - owin.RequestQueryString parsed into a collection + Gets the query value collection parsed from owin.RequestQueryString. + The query value collection parsed from owin.RequestQueryString. - A Uri with the combine parts of owin.RequestScheme, the Host header, owin.RequestPathBase, owin.RequestPath, and owin.RequestQueryString. + Gets the uniform resource identifier (URI) associated with the request. + The uniform resource identifier (URI) associated with the request. - owin.RequestProtocol + Gets or set the owin.RequestProtocol. + The owin.RequestProtocol. - owin.RequestHeaders in a wrapper + Gets the request headers. + The request headers. - The Cookie header parsed into a collection + Gets the collection of Cookies for this request. + The collection of Cookies for this request. - The Content-Type header + Gets or sets the Content-Type header. + The Content-Type header. - The Cache-Control header + Gets or sets the Cache-Control header. + The Cache-Control header. - The Media-Type header + Gets or sets the Media-Type header. + The Media-Type header. - The Accept header + Gets or set the Accept header. + The Accept header. - The owin.RequestBody Stream. + Gets or set the owin.RequestBody Stream. + The owin.RequestBody Stream. - owin.CallCancelled + Gets or sets the cancellation token for the request. + The cancellation token for the request. - server.LocalIpAddress + Gets or set the server.LocalIpAddress. + The server.LocalIpAddress. - server.LocalPort + Gets or set the server.LocalPort. + The server.LocalPort. - server.RemoteIpAddress + Gets or set the server.RemoteIpAddress. + The server.RemoteIpAddress. - server.RemotePort + Gets or set the server.RemotePort. + The server.RemotePort. - server.User. + Gets or set the server.User. + The server.User. @@ -633,150 +772,163 @@ Registers for an event that fires when the response headers are sent. - - + The callback method. + The callback state. Sets a 302 response status code and the Location header. - + The location where to redirect the client. - Writes the given text to the response stream using UTF-8 + Writes the given text to the response body stream using UTF-8. - + The response data. - Writes the given bytes to the response stream + Writes the given bytes to the response body stream. - + The response data. - Writes the given bytes to the response stream + Writes the given bytes to the response body stream. - - - + The response data. + The zero-based byte offset in the parameter at which to begin copying bytes. + The number of bytes to write. - Writes the given text to the response stream using UTF-8 + Asynchronously writes the given text to the response body stream using UTF-8. - - + The response data. + A Task tracking the state of the write operation. - Writes the given text to the response stream using UTF-8 + Asynchronously writes the given text to the response body stream using UTF-8. - - - + The response data. + A token used to indicate cancellation. + A Task tracking the state of the write operation. - Writes the given bytes to the response stream + Asynchronously writes the given bytes to the response body stream. - - + The response data. + A Task tracking the state of the write operation. - Writes the given bytes to the response stream + Asynchronously writes the given bytes to the response body stream. - - - + The response data. + A token used to indicate cancellation. + A Task tracking the state of the write operation. - Writes the given bytes to the response stream + Asynchronously writes the given bytes to the response body stream. - - - - - + The response data. + The zero-based byte offset in the parameter at which to begin copying bytes. + The number of bytes to write. + A token used to indicate cancellation. + A Task tracking the state of the write operation. Gets a value from the OWIN environment, or returns default(T) if not present. - - - + The type of the value. + The key of the value to get. + The value with the specified key or the default(T) if not present. Sets the given key and value in the OWIN environment. - - - + The type of the value. + The key of the value to set. + The value to set. + This instance. - The wrapped OWIN environment. + Gets the OWIN environment. + The OWIN environment. - + Gets the request context. + The request context. - The optional owin.ResponseStatusCode. + Gets or sets the optional owin.ResponseStatusCode. + The optional owin.ResponseStatusCode, or 200 if not set. - The optional owin.ResponseReasonPhrase. + Gets or sets the the optional owin.ResponseReasonPhrase. + The the optional owin.ResponseReasonPhrase. - owin.ResponseProtocol + Gets or sets the owin.ResponseProtocol. + The owin.ResponseProtocol. - owin.ResponseHeaders in a wrapper + Gets the response header collection. + The response header collection. - The Set-Cookie header in a wrapper + Gets a collection used to manipulate the Set-Cookie header. + A collection used to manipulate the Set-Cookie header. - The Content-Length header + Gets or sets the Content-Length header. + The Content-Length header. - The Content-Type response header. + Gets or sets the Content-Type header. + The Content-Type header. - The Expires header + Gets or sets the Expires header. + The Expires header. - The E-Tag header + Gets or sets the E-Tag header. + The E-Tag header. - The owin.ResponseBody Stream. + Gets or sets the owin.ResponseBody Stream. + The owin.ResponseBody Stream. @@ -785,27 +937,27 @@ - + Initializes a new instance of the class The startup class - + Initializes a new instance of the class A non-default configuration, e.g. staging. The startup class - + Initializes a new instance of the class The startup class Specifies which method to call - + Initializes a new instance of the class A non-default configuration, e.g. staging. The startup class @@ -828,62 +980,62 @@ - An ordered list of known Asp.Net integrated pipeline stages. + An ordered list of known Asp.Net integrated pipeline stages. More details on the ASP.NET integrated pipeline can be found at http://msdn.microsoft.com/en-us/library/system.web.httpapplication.aspx - + Corresponds to the AuthenticateRequest stage of the ASP.NET integrated pipeline. - + Corresponds to the PostAuthenticateRequest stage of the ASP.NET integrated pipeline. - + Corresponds to the AuthorizeRequest stage of the ASP.NET integrated pipeline. - + Corresponds to the PostAuthorizeRequest stage of the ASP.NET integrated pipeline. - + Corresponds to the ResolveRequestCache stage of the ASP.NET integrated pipeline. - + Corresponds to the PostResolveRequestCache stage of the ASP.NET integrated pipeline. - + Corresponds to the MapRequestHandler stage of the ASP.NET integrated pipeline. - + Corresponds to the PostMapRequestHandler stage of the ASP.NET integrated pipeline. - + Corresponds to the AcquireRequestState stage of the ASP.NET integrated pipeline. - + Corresponds to the PostAcquireRequestState stage of the ASP.NET integrated pipeline. - + Corresponds to the PreRequestHandlerExecute stage of the ASP.NET integrated pipeline. @@ -891,6 +1043,16 @@ Extension methods for the MapMiddleware + + + If the request path starts with the given pathMatch, execute the app configured via configuration parameter instead of + continuing to the next component in the pipeline. + + + The path to match + The branch to take for positive path matches + + If the request path starts with the given pathMatch, execute the app configured via configuration parameter instead of @@ -908,18 +1070,18 @@ Matching paths have the matching piece removed from owin.RequestPath and added to the owin.RequestPathBase. - + - + Initializes a new instance of the class The normal pipeline taken for a negative match - + - + Process an individual request. - + @@ -966,47 +1128,41 @@ to a user defined callback. - + - + Initializes a new instance of the class The normal application pipeline - + - + Process an individual request. - + Options for the MapWhen middleware - - Options for the MapWhen middleware - The user callback that determines if the branch should be taken - - - The branch taken for a positive match - - The async user callback that determines if the branch should be taken - + - This wraps OWIN environment dictionary and provides strongly typed accessors. + The branch taken for a positive match + + This wraps OWIN environment dictionary and provides strongly typed accessors. @@ -1020,214 +1176,54 @@ Create a new wrapper. - + OWIN environment dictionary which stores state information about the request, response and relevant server state. Gets a value from the OWIN environment, or returns default(T) if not present. - - - + The type of the value. + The key of the value to get. + The value with the specified key or the default(T) if not present. Sets the given key and value in the OWIN environment. - - - + The type of the value. + The key of the value to set. + The value to set. + This instance. - A wrapper exposing request specific properties + Gets a wrapper exposing request specific properties. + A wrapper exposing request specific properties. - A wrapper exposing response specific properties + Gets a wrapper exposing response specific properties. + A wrapper exposing response specific properties. + + + + Gets the Authentication middleware functionality available on the current request. + + The authentication middleware functionality available on the current request. - The wrapped OWIN environment. + Gets the OWIN environment. + The OWIN environment. Gets or sets the host.TraceOutput environment value. - - - - Access the Authentication middleware functionality available on the current request. - - - - - This wraps OWIN environment dictionary and provides strongly typed accessors. - - - This wraps OWIN environment dictionary and provides strongly typed accessors. - - - - - Parses the request body as a form - - - - - Create a new context with only request and response header collections. - - - - - Create a new environment wrapper exposing request properties. - - - - - - Gets a value from the OWIN environment, or returns default(T) if not present. - - - - - - - - Sets the given key and value in the OWIN environment. - - - - - - - - The wrapped OWIN environment. - - - - - - - - - - The HTTP method/verb, e.g. GET, POST, etc.. - - - - - The HTTP request scheme (e.g. http or https) from owin.RequestScheme. - - - - - Returns true if the owin.RequestScheme is https. - - - - - The request host, taken from the Host request header in owin.RequestHeaders. - May include the port. - - - - - See owin.RequestPathBase. - - - - - The request path from owin.RequestPath. - - - - - The query string from owin.RequestQueryString. - - - - - owin.RequestQueryString parsed into a collection - - - - - A Uri with the combine parts of owin.RequestScheme, the Host header, owin.RequestPathBase, owin.RequestPath, and owin.RequestQueryString. - - - - - owin.RequestProtocol - - - - - owin.RequestHeaders in a wrapper - - - - - The Cookie header parsed into a collection - - - - - The Content-Type header - - - - - The Cache-Control header - - - - - The Media-Type header - - - - - The Accept header - - - - - The owin.RequestBody Stream. - - - - - owin.CallCancelled - - - - - server.LocalIpAddress - - - - - server.LocalPort - - - - - server.RemoteIpAddress - - - - - server.RemotePort - - - - - server.User. - + The host.TraceOutput TextWriter. @@ -1241,7 +1237,7 @@ - Initalize the path string with a given value. This value must be in unescaped format. Use + Initialize the path string with a given value. This value must be in un-escaped format. Use PathString.FromUriComponent(value) if you have a path value which is in an escaped format. The unescaped path to be assigned to the Value property. @@ -1273,6 +1269,21 @@ The Uri object The resulting PathString + + + Checks if this instance starts with or exactly matches the other instance. Only full segments are matched. + + + + + + + Checks if this instance starts with or exactly matches the other instance. Only full segments are matched. + + + Any remaining segments from this instance not included in the other instance. + + Adds two PathString instances into a combined PathString value. @@ -1367,7 +1378,7 @@ - Initalize the query string with a given value. This value must be in escaped and delimited format without + Initialize the query string with a given value. This value must be in escaped and delimited format without a leading '?' character. The query string to be assigned to the Value property. @@ -1382,7 +1393,7 @@ Provides the query string escaped in a way which is correct for combining into the URI representation. - A leading '?' character will be prepended unless the Value is null or empty. Characters which are potentally + A leading '?' character will be prepended unless the Value is null or empty. Characters which are potentially dangerous are escaped. The query string value @@ -1390,29 +1401,65 @@ Provides the query string escaped in a way which is correct for combining into the URI representation. - A leading '?' character will be prepended unless the Value is null or empty. Characters which are potentally + A leading '?' character will be prepended unless the Value is null or empty. Characters which are potentially dangerous are escaped. The query string value - Returns an PathString given the path as it is escaped in the URI format. The string MUST NOT contain any - value that is not a path. + Returns an QueryString given the query as it is escaped in the URI format. The string MUST NOT contain any + value that is not a query. - The escaped path as it appears in the URI format. - The resulting PathString + The escaped query as it appears in the URI format. + The resulting QueryString - Returns an PathString given the path as from a Uri object. Relative Uri objects are not supported. + Returns an QueryString given the query as from a Uri object. Relative Uri objects are not supported. The Uri object - The resulting PathString + The resulting QueryString + + + + Indicates whether the current instance is equal to the other instance. + + + + + + + Indicates whether the current instance is equal to the other instance. + + + + + + + Returns the hash code for this instance. + + + + + + Compares the two instances for equality. + + + + + + + + Compares the two instances for inequality. + + + + - The unescaped query string without the leading '?' character + The escaped query string without the leading '?' character @@ -1471,6 +1518,16 @@ Looks up a localized string similar to Conversion delegate must take one parameter.. + + + Looks up a localized string similar to The cookie key and options are larger than ChunksSize, leaving no room for data.. + + + + + Looks up a localized string similar to The chunked cookie is incomplete. Only {0} of the expected {1} chunks were found, totaling {2} characters. A client size limit may have been exceeded.. + + Looks up a localized string similar to The type '{0}' does not match any known middleware pattern.. @@ -1518,7 +1575,7 @@ - + Initializes a new instance of the the type. @@ -1597,6 +1654,7 @@ Contains arbitrary properties which may added, examined, and modified by components during the startup sequence. + Returns . @@ -1633,26 +1691,26 @@ Append the given query to the uri. - - - + The base uri. + The query string to append, if any. + The combine result. Append the given query key and value to the uri. - - - - + The base uri. + The name of the query key. + The query value. + The combine result. Append the given query keys and values to the uri. - - - + The base uri. + A collection of name value query pairs to append. + The combine result. @@ -1725,33 +1783,33 @@ - + Contains information describing an authentication provider. - + Initializes a new instance of the class - + Initializes a new instance of the class - + Contains metadata about the authentication provider. - + Gets or sets the name used to reference the authentication middleware instance. - + Gets or sets the display name for the authentication provider. @@ -1763,7 +1821,7 @@ Call after other middleware to specify when they should run in the integrated pipeline. - + The IAppBuilder. The name of the integrated pipeline in which to run. The original IAppBuilder for chaining. @@ -1771,7 +1829,7 @@ Call after other middleware to specify when they should run in the integrated pipeline. - + The IAppBuilder. The stage of the integrated pipeline in which to run. The original IAppBuilder for chaining. @@ -1850,371 +1908,383 @@ - Wraps an address in the host.Addresses list. + Contains the parts of an address. - Create a new Address wrapper + Initializes a new instance. - Create a new Address from the given parts + Initializes a new with the given parts. - - - - + The scheme. + The host. + The port. + The path. - + Creates a new - + A new - + Determines whether the specified object is equal to the current object. - - + The other object. + true if the specified object is equal to the current object; otherwise, false. - + Determines whether the specified object is equal to the current object. - - + The other object. + true if the specified object is equal to the current object; otherwise, false. - + Returns the hash code for this instance. - + The hash code for this instance. - + Determines whether two specified instances of are equal. - - - + The first object to compare. + The second object to compare. + true if left and right represent the same address; otherwise, false. - + Determines whether two specified instances of are not equal. - - - + The first object to compare. + The second object to compare. + true if left and right do not represent the same address; otherwise, false. - + Gets a specified key and value from the underlying dictionary. - + The key. - + Sets a specified key and value in the underlying dictionary. - - + The key. + The value. - Access the underlying IDictionary + Gets the internal dictionary for this collection. + The internal dictionary for this collection. - + The uri scheme. - + The uri host. - + The uri port. - + The uri path. - Wraps the host.Addresses list + Wraps the host.Addresses list. - Create a new wrapper + Initializes a new instance of the class. - + The address list to set to the collection. - + Adds the specified address to the collection. - + The address to add to the collection. - + Gets the enumerator that iterates through the collection. - + The enumerator that can be used to iterate through the collection. - + Gets the enumerator that iterates through the collection. - + The enumerator that can be used to iterate through the collection. - + Creates a new empty instance of . - + A new empty instance of . - + Determines whether the current collection is equal to the specified collection. - - + The other collection to compare to the current collection. + true if current collection is equal to the specified collection; otherwise, false. - + Determines whether the current collection is equal to the specified object. - - + The object to compare to the current collection. + true if current collection is equal to the specified object; otherwise, false. - + Gets the hash code for this instance. - + The hash code for this instance. - + Determines whether the first collection is equal to the second collection. - - - + The first collection to compare. + The second collection to compare. + true if both collections are equal; otherwise, false. - + Determines whether the first collection is not equal to the second collection. - - - + The first collection to compare. + The second collection to compare. + true if both collections are not equal; otherwise, false. - The underlying list + Gets the underlying address list. + The underlying address list. - + Gets the number of elements in the collection. + The number of elements in the collection. - + Gets the item with the specified index from the collection. - - + The index. + The item with the specified index. - A wrapper for the IAppBuilder.Properties IDictionary + A wrapper for the IDictionary. - Create a new wrapper + Initializes a new instance of the class. - + Determines whether the current AppProperties is equal to the specified AppProperties. - - + The other AppProperties to compare with the current instance. + true if the current AppProperties is equal to the specified AppProperties; otherwise, false. - + Determines whether the current AppProperties is equal to the specified object. - - + The object to compare with the current instance. + true if the current AppProperties is equal to the specified object; otherwise, false. - + Returns the hash code for this instance. - + The hash code for this instance. - + Determines whether the first AppPProperties is equal to the second AppProperties. - - - + The first AppPropeties to compare. + The second AppPropeties to compare. + true if both AppProperties are equal; otherwise, false. - + Determines whether the first AppPProperties is not equal to the second AppProperties. - - - + The first AppPropeties to compare. + The second AppPropeties to compare. + true if both AppProperties are not equal; otherwise, false. - + Gets the value from the dictionary with the specified key. - - - + The type of the value. + The key of the value to get. + The value with the specified key. - + Sets the value with the specified key. - - - + The key of the value to set. + The value to set. + This instance. - owin.Version 1.0 + Gets or sets the string value for “owin.Version”. + The string value for “owin.Version”. - builder.DefaultApp AppFunc (404) + Gets or sets the function delegate for “builder.DefaultApp”. + The function delegate for “builder.DefaultApp”. - builder.AddSignatureConversion + Gets or sets the action delegate for “builder.AddSignatureConversion”. + The action delegate for “builder.AddSignatureConversion”. - host.AppName string + Gets or sets the string value for “host.AppName”. + The string value for “host.AppName”. - host.TraceOutput TextWriter + Gets or sets the text writer for “host.TraceOutput”. + The text writer for “host.TraceOutput”. - host.OnAppDisposing CancellationToken + Gets or sets the cancellation token for “host.OnAppDisposing”. + The cancellation token for “host.OnAppDisposing”. - host.Addresses + Gets or sets the address collection for “host.Addresses”. + The address collection for “host.Addresses”. - server.Capabilities + Gets or sets the list of “server.Capabilities”. + The list of “server.Capabilities”. - The underlying IDictionary + Gets the underlying dictionary for this instance. + The underlying dictionary for this instance. - A wrapper for the server.Capabilities IDictionary + Represents the capabilities for the builder properties. - Create a new wrapper + Initializes a new instance of the class. - + Initializes a new instance of the class. - + A new instance of the class. - + Determines whether the current Capabilities instance is equal to the specified Capabilities. - - + The other Capabilities to compare with the current instance. + true if the specified object is equal to the current object; otherwise, false. - + Determines whether the current Capabilities is equal to the specified object. - - + The object to compare with the current instance. + true if the current Capabilities is equal to the specified object; otherwise, false. - + Returns the hash code for this instance. - + The hash code for this instance. - + Determines whether two specified instances of are equal. - - - + The first object to compare. + The second object to compare. + true if the two specified instances of are equal; otherwise, false. - + Determines whether two specified instances of are not equal. - - - + The first object to compare. + The second object to compare. + true if the two specified instances of are not equal; otherwise, false. - + Gets the value from the dictionary with the specified key. - - - + The type of the value. + The key of the value to get. + The value with the specified key. - + Sets the given key and value in the underlying dictionary. - - - + The key of the value to set. + The value to set. + This instance. @@ -2223,13 +2293,15 @@ - sendfile.Version + Gets or sets the string value for "sendfile.Version" + the string value for "sendfile.Version" - websocket.Version + Gets or sets the websocket version. + The websocket version. @@ -2243,28 +2315,33 @@ - The cookie domain. + Gets or sets the domain to associate the cookie with. + The domain to associate the cookie with. - The cookie path. + Gets or sets the cookie path. + The cookie path. - The cookie expiration date. + Gets or sets the expiration date and time for the cookie. + The expiration date and time for the cookie. - The cookie security requirement. + Gets or sets a value that indicates whether to transmit the cookie using Secure Sockets Layer (SSL)—that is, over HTTPS only. + true to transmit the cookie only over an SSL connection (HTTPS); otherwise, false. - + Gets or sets a value that indicates whether a cookie is accessible by client-side script. + true if a cookie is accessible by client-side script; otherwise, false. @@ -2316,21 +2393,44 @@ - Request processing helpers. + Provides helper methods for processing requests. Parses an HTTP form body. - - + The HTTP form body to parse. + The object containing the parsed HTTP form body. Converts between an OwinMiddlware and an . + + + An abstract base class for a standard middleware pattern. + + + + + Instantiates the middleware with an optional pointer to the next component. + + + + + + Process an individual request. + + + + + + + The optional next component. + + @@ -2359,7 +2459,7 @@ - + OWIN environment dictionary which stores state information about the request, response and relevant server state. @@ -2373,6 +2473,195 @@ + + + This wraps OWIN environment dictionary and provides strongly typed accessors. + + + + + Create a new context with only request and response header collections. + + + + + Create a new environment wrapper exposing request properties. + + OWIN environment dictionary which stores state information about the request, response and relevant server state. + + + + Asynchronously reads and parses the request body as a form. + + The parsed form data. + + + + Gets a value from the OWIN environment, or returns default(T) if not present. + + The type of the value. + The key of the value to get. + The value with the specified key or the default(T) if not present. + + + + Sets the given key and value in the OWIN environment. + + The type of the value. + The key of the value to set. + The value to set. + This instance. + + + + Gets the OWIN environment. + + The OWIN environment. + + + + Gets the request context. + + The request context. + + + + Gets or set the HTTP method. + + The HTTP method. + + + + Gets or set the HTTP request scheme from owin.RequestScheme. + + The HTTP request scheme from owin.RequestScheme. + + + + Returns true if the owin.RequestScheme is https. + + true if this request is using https; otherwise, false. + + + + Gets or set the Host header. May include the port. + + The Host header. + + + + Gets or set the owin.RequestPathBase. + + The owin.RequestPathBase. + + + + Gets or set the request path from owin.RequestPath. + + The request path from owin.RequestPath. + + + + Gets or set the query string from owin.RequestQueryString. + + The query string from owin.RequestQueryString. + + + + Gets the query value collection parsed from owin.RequestQueryString. + + The query value collection parsed from owin.RequestQueryString. + + + + Gets the uniform resource identifier (URI) associated with the request. + + The uniform resource identifier (URI) associated with the request. + + + + Gets or set the owin.RequestProtocol. + + The owin.RequestProtocol. + + + + Gets the request headers. + + The request headers. + + + + Gets the collection of Cookies for this request. + + The collection of Cookies for this request. + + + + Gets or sets the Content-Type header. + + The Content-Type header. + + + + Gets or sets the Cache-Control header. + + The Cache-Control header. + + + + Gets or sets the Media-Type header. + + The Media-Type header. + + + + Gets or set the Accept header. + + The Accept header. + + + + Gets or set the owin.RequestBody Stream. + + The owin.RequestBody Stream. + + + + Gets or sets the cancellation token for the request. + + The cancellation token for the request. + + + + Gets or set the server.LocalIpAddress. + + The server.LocalIpAddress. + + + + Gets or set the server.LocalPort. + + The server.LocalPort. + + + + Gets or set the server.RemoteIpAddress. + + The server.RemoteIpAddress. + + + + Gets or set the server.RemotePort. + + The server.RemotePort. + + + + Gets or set the server.User. + + The server.User. + This wraps OWIN environment dictionary and provides strongly typed accessors. @@ -2387,156 +2676,169 @@ Creates a new environment wrapper exposing response properties. - + OWIN environment dictionary which stores state information about the request, response and relevant server state. Registers for an event that fires when the response headers are sent. - - + The callback method. + The callback state. Sets a 302 response status code and the Location header. - + The location where to redirect the client. - Writes the given text to the response stream using UTF-8 + Writes the given text to the response body stream using UTF-8. - + The response data. - Writes the given bytes to the response stream + Writes the given bytes to the response body stream. - + The response data. - Writes the given bytes to the response stream + Writes the given bytes to the response body stream. - - - + The response data. + The zero-based byte offset in the parameter at which to begin copying bytes. + The number of bytes to write. - Writes the given text to the response stream using UTF-8 + Asynchronously writes the given text to the response body stream using UTF-8. - - + The response data. + A Task tracking the state of the write operation. - Writes the given text to the response stream using UTF-8 + Asynchronously writes the given text to the response body stream using UTF-8. - - - + The response data. + A token used to indicate cancellation. + A Task tracking the state of the write operation. - Writes the given bytes to the response stream + Asynchronously writes the given bytes to the response body stream. - - + The response data. + A Task tracking the state of the write operation. - Writes the given bytes to the response stream + Asynchronously writes the given bytes to the response body stream. - - - + The response data. + A token used to indicate cancellation. + A Task tracking the state of the write operation. - Writes the given bytes to the response stream + Asynchronously writes the given bytes to the response body stream. - - - - - + The response data. + The zero-based byte offset in the parameter at which to begin copying bytes. + The number of bytes to write. + A token used to indicate cancellation. + A Task tracking the state of the write operation. Gets a value from the OWIN environment, or returns default(T) if not present. - - - + The type of the value. + The key of the value to get. + The value with the specified key or the default(T) if not present. Sets the given key and value in the OWIN environment. - - - + The type of the value. + The key of the value to set. + The value to set. + This instance. - The wrapped OWIN environment. + Gets the OWIN environment. + The OWIN environment. - + Gets the request context. + The request context. - The optional owin.ResponseStatusCode. + Gets or sets the optional owin.ResponseStatusCode. + The optional owin.ResponseStatusCode, or 200 if not set. - The optional owin.ResponseReasonPhrase. + Gets or sets the the optional owin.ResponseReasonPhrase. + The the optional owin.ResponseReasonPhrase. - owin.ResponseProtocol + Gets or sets the owin.ResponseProtocol. + The owin.ResponseProtocol. - owin.ResponseHeaders in a wrapper + Gets the response header collection. + The response header collection. - The Set-Cookie header in a wrapper + Gets a collection used to manipulate the Set-Cookie header. + A collection used to manipulate the Set-Cookie header. - The Content-Length header + Gets or sets the Content-Length header. + The Content-Length header. - The Content-Type response header. + Gets or sets the Content-Type header. + The Content-Type header. - The Expires header + Gets or sets the Expires header. + The Expires header. - The ETag header + Gets or sets the E-Tag header. + The E-Tag header. - The owin.ResponseBody Stream. + Gets or sets the owin.ResponseBody Stream. + The owin.ResponseBody Stream. @@ -2625,6 +2927,16 @@ value to determine which claims are granted by which middleware. The recommended use is to have a single ClaimsIdentity which has the AuthenticationType matching a specific middleware. + + + Add information to the response environment that will cause the appropriate authentication middleware + to revoke any claims identity associated the the caller. The exact method varies. + + Additional arbitrary values which may be used by particular authentication types. + Identifies which middleware should perform the work to sign out. + Multiple authentication types may be provided to clear out more than one cookie at a time, or to clear + cookies and redirect to an external single-sign out url. + Add information to the response environment that will cause the appropriate authentication middleware @@ -2680,115 +2992,132 @@ - + Dictionary used to store state values about the authentication session. - + Initializes a new instance of the class - + Initializes a new instance of the class - + State values about the authentication session. - + Gets or sets whether the authentication session is persisted across multiple requests. - The full path or absolute URI to be used as an http redirect response value. + Gets or sets the full path or absolute URI to be used as an http redirect response value. - + Gets or sets the time at which the authentication ticket was issued. - + Gets or sets the time at which the authentication ticket expires. + + + + + Gets or sets if refreshing the authentication session should be allowed. - + Exposes the security.Challenge environment value as a strong type. - + Initializes a new instance of the class - + List of the authentication types that should send a challenge in the response. - + Dictionary used to store state values about the authentication session. - + Exposes the security.SignIn environment value as a strong type. - + Initializes a new instance of the class. - + Initializes a new instance of the class. - + The identity associated with the user sign in. - + The security principal associated with the user sign in. - + Dictionary used to store state values about the authentication session. - + Exposes the security.SignOut and security.SignOutProperties environment values as a strong type. - + Initializes a new instance of the class + + + Initializes a new instance of the class + + + + - + List of the authentication types that should be revoked on sign out. + + + + + Dictionary used to store state values about the authentication session. @@ -2797,13 +3126,16 @@ + + Initializes a new instance of the class. + Creates a factory named "Microsoft.Owin". - + Initializes a new instance of the class. diff --git a/lib/owin/Microsoft.Owin.dll b/lib/owin/Microsoft.Owin.dll index 7c64470de..478c6c2f0 100644 Binary files a/lib/owin/Microsoft.Owin.dll and b/lib/owin/Microsoft.Owin.dll differ diff --git a/src/Orchard.Tests/Environment/DefaultOrchardHostTests.cs b/src/Orchard.Tests/Environment/DefaultOrchardHostTests.cs index f0d82221e..a855aa6b8 100644 --- a/src/Orchard.Tests/Environment/DefaultOrchardHostTests.cs +++ b/src/Orchard.Tests/Environment/DefaultOrchardHostTests.cs @@ -19,6 +19,7 @@ using Orchard.FileSystems.AppData; using Orchard.FileSystems.VirtualPath; using Orchard.Mvc.ModelBinders; using Orchard.Mvc.Routes; +using Orchard.Owin; using Orchard.Tests.Environment.TestDependencies; using Orchard.Tests.Stubs; using Orchard.Tests.Utility; @@ -62,7 +63,9 @@ namespace Orchard.Tests.Environment { .Ignore() .Ignore() .Ignore() - .Ignore(); + .Ignore() + .Ignore() + .Ignore(); }); _lifetime = _container.BeginLifetimeScope(); diff --git a/src/Orchard.Tests/Mvc/Routes/ShellRouteTests.cs b/src/Orchard.Tests/Mvc/Routes/ShellRouteTests.cs index c443a6b6f..0f2444a2e 100644 --- a/src/Orchard.Tests/Mvc/Routes/ShellRouteTests.cs +++ b/src/Orchard.Tests/Mvc/Routes/ShellRouteTests.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Runtime.Remoting.Messaging; using System.Threading.Tasks; using System.Web; using System.Web.Mvc; @@ -47,7 +48,12 @@ namespace Orchard.Tests.Mvc.Routes { rootBuilder.Register>(c => { var context = c.Resolve(); - return new + return new Func(routeBase => + new ShellRoute( + routeBase, + _settingsA, + context.Resolve(), + context.Resolve(), objects => { return null; })); }); _rootContainer = rootBuilder.Build(); @@ -69,30 +75,34 @@ namespace Orchard.Tests.Mvc.Routes { [Test] public void FactoryMethodWillCreateShellRoutes() { - var settings = new ShellSettings { Name = "Alpha" }; var builder = new ContainerBuilder(); builder.RegisterType().InstancePerDependency(); builder.RegisterAutoMocking(); - builder.Register(ctx => settings); var container = builder.Build(); - var buildShellRoute = container.Resolve>(); + var buildShellRoute = new Func(routeBase => + new ShellRoute( + routeBase, + _settingsA, + container.Resolve(), + container.Resolve(), + objects => { return null; })); var routeA = new Route("foo", new MvcRouteHandler()); var route1 = buildShellRoute(routeA); var routeB = new Route("bar", new MvcRouteHandler()) { - DataTokens = new RouteValueDictionary { { "area", "Beta" } } + DataTokens = new RouteValueDictionary { { "area", _settingsB.Name } } }; var route2 = buildShellRoute(routeB); Assert.That(route1, Is.Not.SameAs(route2)); - Assert.That(route1.ShellSettingsName, Is.EqualTo("Alpha")); + Assert.That(route1.ShellSettingsName, Is.EqualTo(_settingsA.Name)); Assert.That(route1.Area, Is.Null); - Assert.That(route2.ShellSettingsName, Is.EqualTo("Alpha")); - Assert.That(route2.Area, Is.EqualTo("Beta")); + Assert.That(route2.ShellSettingsName, Is.EqualTo(_settingsA.Name)); + Assert.That(route2.Area, Is.EqualTo(_settingsB.Name)); } @@ -203,7 +213,13 @@ namespace Orchard.Tests.Mvc.Routes { .Returns(settings); - var shellRouteFactory = container.Resolve>(); + var shellRouteFactory = new Func(routeBase => + new ShellRoute( + routeBase, + settings, + container.Resolve(), + container.Resolve(), + objects => { return null; })); var helloRoute = shellRouteFactory(new Route( "hello", diff --git a/src/Orchard.Web/Orchard.Web.csproj b/src/Orchard.Web/Orchard.Web.csproj index e2183ce23..11749df13 100644 --- a/src/Orchard.Web/Orchard.Web.csproj +++ b/src/Orchard.Web/Orchard.Web.csproj @@ -50,6 +50,9 @@ ..\..\lib\autofac\Autofac.dll True + + ..\..\lib\owin\Microsoft.Owin.Host.SystemWeb.dll + ..\..\lib\aspnetmvc\Microsoft.Web.Infrastructure.dll True diff --git a/src/Orchard.Web/Web.config b/src/Orchard.Web/Web.config index 953f991d8..c1b7a98dd 100644 --- a/src/Orchard.Web/Web.config +++ b/src/Orchard.Web/Web.config @@ -14,7 +14,7 @@ - +