diff --git a/src/Umbraco.Web/BatchedDatabaseServerMessenger.cs b/src/Umbraco.Web/BatchedDatabaseServerMessenger.cs
index f06a7a332f..23edb2dde2 100644
--- a/src/Umbraco.Web/BatchedDatabaseServerMessenger.cs
+++ b/src/Umbraco.Web/BatchedDatabaseServerMessenger.cs
@@ -60,7 +60,7 @@ namespace Umbraco.Web
}
}
- private void UmbracoModule_EndRequest(object sender, EventArgs e)
+ private void UmbracoModule_EndRequest(object sender, UmbracoRequestEventArgs e)
{
// will clear the batch - will remain in HttpContext though - that's ok
FlushBatch();
diff --git a/src/Umbraco.Web/BatchedWebServiceServerMessenger.cs b/src/Umbraco.Web/BatchedWebServiceServerMessenger.cs
index 63536ca9f7..805c2393a8 100644
--- a/src/Umbraco.Web/BatchedWebServiceServerMessenger.cs
+++ b/src/Umbraco.Web/BatchedWebServiceServerMessenger.cs
@@ -2,6 +2,7 @@
using System.Collections.Generic;
using System.Web;
using Umbraco.Core.Sync;
+using Umbraco.Web.Routing;
namespace Umbraco.Web
{
@@ -64,7 +65,7 @@ namespace Umbraco.Web
return batch;
}
- void UmbracoModule_EndRequest(object sender, EventArgs e)
+ void UmbracoModule_EndRequest(object sender, UmbracoRequestEventArgs e)
{
FlushBatch();
}
diff --git a/src/Umbraco.Web/Routing/EnsureRoutableOutcome.cs b/src/Umbraco.Web/Routing/EnsureRoutableOutcome.cs
index fd09f5ff8c..3eefbc4d0c 100644
--- a/src/Umbraco.Web/Routing/EnsureRoutableOutcome.cs
+++ b/src/Umbraco.Web/Routing/EnsureRoutableOutcome.cs
@@ -3,7 +3,7 @@ namespace Umbraco.Web.Routing
///
/// Represents the outcome of trying to route an incoming request.
///
- internal enum EnsureRoutableOutcome
+ public enum EnsureRoutableOutcome
{
///
/// Request routes to a document.
diff --git a/src/Umbraco.Web/Routing/RoutableAttemptEventArgs.cs b/src/Umbraco.Web/Routing/RoutableAttemptEventArgs.cs
index 7a7bc37d5c..ee93623252 100644
--- a/src/Umbraco.Web/Routing/RoutableAttemptEventArgs.cs
+++ b/src/Umbraco.Web/Routing/RoutableAttemptEventArgs.cs
@@ -5,7 +5,7 @@ namespace Umbraco.Web.Routing
///
/// Event args containing information about why the request was not routable, or if it is routable
///
- internal class RoutableAttemptEventArgs : UmbracoRequestEventArgs
+ public class RoutableAttemptEventArgs : UmbracoRequestEventArgs
{
public EnsureRoutableOutcome Outcome { get; private set; }
diff --git a/src/Umbraco.Web/Routing/UmbracoRequestEventArgs.cs b/src/Umbraco.Web/Routing/UmbracoRequestEventArgs.cs
index 2c50c972f5..3516277275 100644
--- a/src/Umbraco.Web/Routing/UmbracoRequestEventArgs.cs
+++ b/src/Umbraco.Web/Routing/UmbracoRequestEventArgs.cs
@@ -6,7 +6,7 @@ namespace Umbraco.Web.Routing
///
/// Event args used for event launched during a request (like in the UmbracoModule)
///
- internal class UmbracoRequestEventArgs : EventArgs
+ public class UmbracoRequestEventArgs : EventArgs
{
public UmbracoContext UmbracoContext { get; private set; }
public HttpContextBase HttpContext { get; private set; }
diff --git a/src/Umbraco.Web/UmbracoModule.cs b/src/Umbraco.Web/UmbracoModule.cs
index a80188f449..f2503b88c6 100644
--- a/src/Umbraco.Web/UmbracoModule.cs
+++ b/src/Umbraco.Web/UmbracoModule.cs
@@ -524,9 +524,9 @@ namespace Umbraco.Web
"Total milliseconds for umbraco request to process: {0}", () => DateTime.Now.Subtract(UmbracoContext.Current.ObjectCreated).TotalMilliseconds);
}
- OnEndRequest(new EventArgs());
+ OnEndRequest(new UmbracoRequestEventArgs(UmbracoContext.Current, new HttpContextWrapper(httpContext)));
- DisposeHttpContextItems(httpContext);
+ DisposeHttpContextItems(httpContext);
};
}
@@ -536,18 +536,19 @@ namespace Umbraco.Web
}
- #endregion
+ #endregion
#region Events
- internal static event EventHandler RouteAttempt;
+
+ public static event EventHandler RouteAttempt;
private void OnRouteAttempt(RoutableAttemptEventArgs args)
{
if (RouteAttempt != null)
RouteAttempt(this, args);
}
- internal static event EventHandler EndRequest;
- private void OnEndRequest(EventArgs args)
+ public static event EventHandler EndRequest;
+ private void OnEndRequest(UmbracoRequestEventArgs args)
{
if (EndRequest != null)
EndRequest(this, args);