/*
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.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web.Mvc;
using Everest.CmsServices.Controllers;
namespace Everest.CmsServices.Extension.PagePlugin{
/// <summary>
///
/// </summary>
public abstract class ControllerPluginBase : IControllerPlugin
{
/// <summary>
/// Gets or sets the controller.
/// </summary>
/// <value>The controller.</value>
public CommonController Controller
{
get;
private set;
}
#region IControllerModule Members
/// <summary>
/// Initializes the specified controller.
/// </summary>
/// <param name="controller">The controller.</param>
public virtual void Initialize(Everest.CmsServices.Controllers.CommonController controller)
{
this.Controller = controller;
}
/// <summary>
/// Pres the get execute.
/// </summary>
/// <returns>
/// if return not null,will return the ActionResult to skip the default logic.
/// </returns>
public virtual ActionResult PreGetExecute(){
return null;
}
/// <summary>
/// Pres the post execute.
/// </summary>
/// <returns>
/// if return not null,will return the ActionResult to skip the default logic.
/// </returns>
public virtual ActionResult PrePostExecute(){
return null;
}
/// <summary>
/// Afters the get execute.
/// </summary>
/// <param name="actionResult">The action result.</param>
/// <returns></returns>
public virtual System.Web.Mvc.ActionResult AfterGetExecute(System.Web.Mvc.ActionResult actionResult)
{
return actionResult;
}
/// <summary>
/// Afters the post execute.
/// </summary>
/// <param name="actionResult">The action result.</param>
/// <returns></returns>
public virtual System.Web.Mvc.ActionResult AfterPostExecute(System.Web.Mvc.ActionResult actionResult)
{
return actionResult;
}
#endregion
}
}
|