diff --git a/src/Orchard/Owin/IOwinMiddlewareProvider.cs b/src/Orchard/Owin/IOwinMiddlewareProvider.cs
index e7a274e91..be65ad426 100644
--- a/src/Orchard/Owin/IOwinMiddlewareProvider.cs
+++ b/src/Orchard/Owin/IOwinMiddlewareProvider.cs
@@ -1,7 +1,18 @@
using System.Collections.Generic;
namespace Orchard.Owin {
+ ///
+ /// Represents a provider that makes Owin middlewares available for the Orchard Owin pipeline.
+ ///
+ ///
+ /// If you want to write an Owin middleware and inject it into the Orchard Owin pipeline, implement this interface. For more information
+ /// about Owin http://owin.org/.
+ ///
public interface IOwinMiddlewareProvider : IDependency {
+ ///
+ /// Gets Owin middlewares that will be injected into the Orchard Owin pipeline.
+ ///
+ /// Owin middlewares that will be injected into the Orchard Owin pipeline.
IEnumerable GetOwinMiddlewares();
}
}
\ No newline at end of file
diff --git a/src/Orchard/Owin/OrchardMiddleware.cs b/src/Orchard/Owin/OrchardMiddleware.cs
index 69d6bfe38..611bfc5d1 100644
--- a/src/Orchard/Owin/OrchardMiddleware.cs
+++ b/src/Orchard/Owin/OrchardMiddleware.cs
@@ -3,6 +3,9 @@ using System.Threading.Tasks;
using Owin;
namespace Orchard.Owin {
+ ///
+ /// A special Owin middleware that is executed last in the Owin pipeline and runs the non-Owin part of the request.
+ ///
public static class OrchardMiddleware {
public static IAppBuilder UseOrchard(this IAppBuilder app) {
app.Use(async (context, next) => {
diff --git a/src/Orchard/Owin/OwinMiddleware.cs b/src/Orchard/Owin/OwinMiddleware.cs
index 9a9784d9b..2b8330afd 100644
--- a/src/Orchard/Owin/OwinMiddleware.cs
+++ b/src/Orchard/Owin/OwinMiddleware.cs
@@ -2,8 +2,22 @@
using Owin;
namespace Orchard.Owin {
+ ///
+ /// An Owin middleware representation that can make changes to the Owin pipeline, like registering middlewares to be injected into the Orchard
+ /// Owin pipeline.
+ ///
public class OwinMiddleware {
+ ///
+ /// Gets or sets the delegate that you can use to make changes to the Owin pipeline, like registering middlewares to be injected into
+ /// the Orchard Owin pipeline.
+ ///
public Action Configure { get; set; }
+
+ ///
+ /// Gets or sets the priority value that decides the order in which such objects are processed. I.e. "0" will run before "10",
+ /// but middlewares without a priority value will run before the ones that have it set.
+ /// Note that this priority notation is the same as the one for shape placement (so you can e.g. use ":before").
+ ///
public string Priority { get; set; }
}
}
diff --git a/src/Orchard/Owin/Startup.cs b/src/Orchard/Owin/Startup.cs
index 456bed044..aac67855e 100644
--- a/src/Orchard/Owin/Startup.cs
+++ b/src/Orchard/Owin/Startup.cs
@@ -1,6 +1,10 @@
using Owin;
namespace Orchard.Owin {
+ ///
+ /// The entry point for the Owin pipeline that doesn't really do anything on its own but is necessary for bootstrapping.
+ ///
+ /// Also, startups are hip nowadays.
public class Startup {
public void Configuration(IAppBuilder app) {
app.Use((context, next) => {