Castle.MonoRail.Framework.CacheAttribute.ICachePolicyConfigurer C# (CSharp) Method

ICachePolicyConfigurer() private method

Configures ASP.Net's Cache policy based on properties set
private ICachePolicyConfigurer ( System.Web.HttpCachePolicy policy ) : void
policy System.Web.HttpCachePolicy cache policy to set
return void
		void ICachePolicyConfigurer.Configure(HttpCachePolicy policy)
		{
			policy.SetCacheability(cacheability);
			policy.SetSlidingExpiration(slidingExpiration);
			policy.SetValidUntilExpires(validUntilExpires);
			policy.SetAllowResponseInBrowserHistory(allowInHistory);
			
			if (duration != 0)
			{
				policy.SetExpires(DateTime.Now.AddSeconds(duration));
			}

			if (varyByCustom != null)
			{
				policy.SetVaryByCustom(varyByCustom);
			}
			
			if (varyByHeaders != null)
			{
				foreach(String header in varyByHeaders.Split(','))
				{
					policy.VaryByHeaders[header.Trim()] = true;
				}
			}

			if (varyByParams != null)
			{
				foreach(String param in varyByParams.Split(','))
				{
					policy.VaryByParams[param.Trim()] = true;
				}
			}

			if (etag != null)
			{
				policy.SetETag(etag);
			}
		}
	}