/*
Kooboo is a content management system based on ASP.NET MVC framework. Copyright 2009 Yardi Technology Limited.
This program is free software: you can redistribute it and/or modify it under the terms of the
GNU General Public License version 3 as published by the Free Software Foundation.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program.
If not, see http://www.kooboo.com/gpl3/.
*/
using System;
using System.Web.Routing;
using System.Web;
using System.Web.Mvc;
using Everest.Library.Mvc.Routing;
namespace Everest.Library.Mvc{
public class XmlRoutesModule : IHttpModule
{
bool registered = false;
static object lockHelper = new object();
public XmlRoutesModule()
{
}
protected virtual void RegisterRoutes(System.Web.Routing.RouteCollection routeCollection)
{
routeCollection.Clear();
RouteTableManager.RegisterRoutes(routeCollection);
}
private RouteCollection _routeCollection;
public RouteCollection RouteCollection
{
get
{
if (this._routeCollection == null)
{
this._routeCollection = RouteTable.Routes;
}
return this._routeCollection;
}
set
{
this._routeCollection = value;
}
}
#region IHttpModule Members
public void Dispose()
{
}
public void Init(HttpApplication context)
{
if (registered == false)
{
lock (lockHelper)
{
if (registered == false)
{
RegisterRoutes(RouteCollection);
// base.Init(application);
registered = true;
}
}
}
}
#endregion
}
}
|