コード例 #1
0
ファイル: CachePolicy.cs プロジェクト: darkmice/junior-route
        public CachePolicy Revalidation(HttpCacheRevalidation revalidation)
        {
            _revalidation = revalidation;
            _hasPolicy    = true;

            return(this);
        }
コード例 #2
0
		/// <summary>
		/// Initializes a new instance of the <see cref="CacheAttribute"/> class.
		/// </summary>
		/// <param name="cacheability">Sets the Cache-Control HTTP header. 
		/// The Cache-Control HTTP header controls how documents are to be cached on the network.</param>
		public CacheAttribute(HttpCacheability cacheability)
		{
			this.cacheability = cacheability;

			allowInHistory = true;
			validUntilExpires = true;
			revalidation = HttpCacheRevalidation.None;
		}
コード例 #3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BrowserCacheAttribute"/> class.
 /// </summary>
 /// <param name="cacheability"></param>
 /// <param name="revalidation"></param>
 /// <param name="cacheDuration"></param>
 /// <param name="maxProxyAge"></param>
 public BrowserCacheAttribute(HttpCacheability cacheability, HttpCacheRevalidation revalidation, TimeSpan cacheDuration, TimeSpan maxProxyAge)
     : base()
 {
     this.Revalidation = revalidation;
     this.Cacheability = cacheability;
     this.CacheDuration = cacheDuration;
     this.MaxProxyAge = maxProxyAge;
 }
コード例 #4
0
        /// <summary>
        /// Initializes a new instance of the <see cref="CacheAttribute"/> class.
        /// </summary>
        /// <param name="cacheability">Sets the Cache-Control HTTP header.
        /// The Cache-Control HTTP header controls how documents are to be cached on the network.</param>
        public CacheAttribute(HttpCacheability cacheability)
        {
            this.cacheability = cacheability;

            allowInHistory    = true;
            validUntilExpires = true;
            revalidation      = HttpCacheRevalidation.None;
        }
コード例 #5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BrowserCacheAttribute"/> class.
 /// </summary>
 /// <param name="cacheability"></param>
 /// <param name="revalidation"></param>
 /// <param name="cacheDuration"></param>
 /// <param name="maxProxyAge"></param>
 public BrowserCacheAttribute(HttpCacheability cacheability, HttpCacheRevalidation revalidation, TimeSpan cacheDuration, TimeSpan maxProxyAge)
     : base()
 {
     this.Revalidation  = revalidation;
     this.Cacheability  = cacheability;
     this.CacheDuration = cacheDuration;
     this.MaxProxyAge   = maxProxyAge;
 }
コード例 #6
0
 public void SetRevalidation(HttpCacheRevalidation revalidation)
 {
     if ((revalidation < HttpCacheRevalidation.AllCaches) || (HttpCacheRevalidation.None < revalidation))
     {
         throw new ArgumentOutOfRangeException("revalidation");
     }
     if (revalidation < this._revalidation)
     {
         this.Dirtied();
         this._revalidation = revalidation;
     }
 }
コード例 #7
0
        public void SetRevalidation(HttpCacheRevalidation revalidation)
        {
            if (revalidation < HttpCacheRevalidation.AllCaches ||
                revalidation > HttpCacheRevalidation.None)
            {
                throw new ArgumentOutOfRangeException("revalidation");
            }

            if (this.revalidation > revalidation)
            {
                this.revalidation = revalidation;
            }
        }
コード例 #8
0
 internal void Reset()
 {
     this._varyByContentEncodings.Reset();
     this._varyByHeaders.Reset();
     this._varyByParams.Reset();
     this._isModified          = false;
     this._hasSetCookieHeader  = false;
     this._noServerCaching     = false;
     this._cacheExtension      = null;
     this._noTransforms        = false;
     this._ignoreRangeRequests = false;
     this._varyByCustom        = null;
     this._cacheability        = HttpCacheability.Public | HttpCacheability.Private;
     this._noStore             = false;
     this._privateFields       = null;
     this._noCacheFields       = null;
     this._utcExpires          = DateTime.MinValue;
     this._isExpiresSet        = false;
     this._maxAge              = TimeSpan.Zero;
     this._isMaxAgeSet         = false;
     this._proxyMaxAge         = TimeSpan.Zero;
     this._isProxyMaxAgeSet    = false;
     this._slidingExpiration   = -1;
     this._slidingDelta        = TimeSpan.Zero;
     this._utcTimestampCreated = DateTime.MinValue;
     this._utcTimestampRequest = DateTime.MinValue;
     this._validUntilExpires   = -1;
     this._allowInHistory      = -1;
     this._revalidation        = HttpCacheRevalidation.None;
     this._utcLastModified     = DateTime.MinValue;
     this._isLastModifiedSet   = false;
     this._etag = null;
     this._generateLastModifiedFromFiles = false;
     this._generateEtagFromFiles         = false;
     this._validationCallbackInfo        = null;
     this._useCachedHeaders            = false;
     this._headerCacheControl          = null;
     this._headerPragma                = null;
     this._headerExpires               = null;
     this._headerLastModified          = null;
     this._headerEtag                  = null;
     this._headerVaryBy                = null;
     this._noMaxAgeInCacheControl      = false;
     this._hasUserProvidedDependencies = false;
     this._omitVaryStar                = -1;
 }
コード例 #9
0
 internal HttpCachePolicySettings(bool isModified, System.Web.ValidationCallbackInfo[] validationCallbackInfo, bool hasSetCookieHeader, bool noServerCaching, string cacheExtension, bool noTransforms, bool ignoreRangeRequests, string[] varyByContentEncodings, string[] varyByHeaderValues, string[] varyByParamValues, string varyByCustom, HttpCacheability cacheability, bool noStore, string[] privateFields, string[] noCacheFields, DateTime utcExpires, bool isExpiresSet, TimeSpan maxAge, bool isMaxAgeSet, TimeSpan proxyMaxAge, bool isProxyMaxAgeSet, int slidingExpiration, TimeSpan slidingDelta, DateTime utcTimestampCreated, int validUntilExpires, int allowInHistory, HttpCacheRevalidation revalidation, DateTime utcLastModified, bool isLastModifiedSet, string etag, bool generateLastModifiedFromFiles, bool generateEtagFromFiles, int omitVaryStar, HttpResponseHeader headerCacheControl, HttpResponseHeader headerPragma, HttpResponseHeader headerExpires, HttpResponseHeader headerLastModified, HttpResponseHeader headerEtag, HttpResponseHeader headerVaryBy, bool hasUserProvidedDependencies)
 {
     this._isModified             = isModified;
     this._validationCallbackInfo = validationCallbackInfo;
     this._hasSetCookieHeader     = hasSetCookieHeader;
     this._noServerCaching        = noServerCaching;
     this._cacheExtension         = cacheExtension;
     this._noTransforms           = noTransforms;
     this._ignoreRangeRequests    = ignoreRangeRequests;
     this._varyByContentEncodings = varyByContentEncodings;
     this._varyByHeaderValues     = varyByHeaderValues;
     this._varyByParamValues      = varyByParamValues;
     this._varyByCustom           = varyByCustom;
     this._cacheability           = cacheability;
     this._noStore             = noStore;
     this._privateFields       = privateFields;
     this._noCacheFields       = noCacheFields;
     this._utcExpires          = utcExpires;
     this._isExpiresSet        = isExpiresSet;
     this._maxAge              = maxAge;
     this._isMaxAgeSet         = isMaxAgeSet;
     this._proxyMaxAge         = proxyMaxAge;
     this._isProxyMaxAgeSet    = isProxyMaxAgeSet;
     this._slidingExpiration   = slidingExpiration;
     this._slidingDelta        = slidingDelta;
     this._utcTimestampCreated = utcTimestampCreated;
     this._validUntilExpires   = validUntilExpires;
     this._allowInHistory      = allowInHistory;
     this._revalidation        = revalidation;
     this._utcLastModified     = utcLastModified;
     this._isLastModifiedSet   = isLastModifiedSet;
     this._etag = etag;
     this._generateLastModifiedFromFiles = generateLastModifiedFromFiles;
     this._generateEtagFromFiles         = generateEtagFromFiles;
     this._omitVaryStar                = omitVaryStar;
     this._headerCacheControl          = headerCacheControl;
     this._headerPragma                = headerPragma;
     this._headerExpires               = headerExpires;
     this._headerLastModified          = headerLastModified;
     this._headerEtag                  = headerEtag;
     this._headerVaryBy                = headerVaryBy;
     this._hasUserProvidedDependencies = hasUserProvidedDependencies;
 }
 internal HttpCachePolicySettings(bool isModified, System.Web.ValidationCallbackInfo[] validationCallbackInfo, bool hasSetCookieHeader, bool noServerCaching, string cacheExtension, bool noTransforms, bool ignoreRangeRequests, string[] varyByContentEncodings, string[] varyByHeaderValues, string[] varyByParamValues, string varyByCustom, HttpCacheability cacheability, bool noStore, string[] privateFields, string[] noCacheFields, DateTime utcExpires, bool isExpiresSet, TimeSpan maxAge, bool isMaxAgeSet, TimeSpan proxyMaxAge, bool isProxyMaxAgeSet, int slidingExpiration, TimeSpan slidingDelta, DateTime utcTimestampCreated, int validUntilExpires, int allowInHistory, HttpCacheRevalidation revalidation, DateTime utcLastModified, bool isLastModifiedSet, string etag, bool generateLastModifiedFromFiles, bool generateEtagFromFiles, int omitVaryStar, HttpResponseHeader headerCacheControl, HttpResponseHeader headerPragma, HttpResponseHeader headerExpires, HttpResponseHeader headerLastModified, HttpResponseHeader headerEtag, HttpResponseHeader headerVaryBy, bool hasUserProvidedDependencies)
 {
     this._isModified = isModified;
     this._validationCallbackInfo = validationCallbackInfo;
     this._hasSetCookieHeader = hasSetCookieHeader;
     this._noServerCaching = noServerCaching;
     this._cacheExtension = cacheExtension;
     this._noTransforms = noTransforms;
     this._ignoreRangeRequests = ignoreRangeRequests;
     this._varyByContentEncodings = varyByContentEncodings;
     this._varyByHeaderValues = varyByHeaderValues;
     this._varyByParamValues = varyByParamValues;
     this._varyByCustom = varyByCustom;
     this._cacheability = cacheability;
     this._noStore = noStore;
     this._privateFields = privateFields;
     this._noCacheFields = noCacheFields;
     this._utcExpires = utcExpires;
     this._isExpiresSet = isExpiresSet;
     this._maxAge = maxAge;
     this._isMaxAgeSet = isMaxAgeSet;
     this._proxyMaxAge = proxyMaxAge;
     this._isProxyMaxAgeSet = isProxyMaxAgeSet;
     this._slidingExpiration = slidingExpiration;
     this._slidingDelta = slidingDelta;
     this._utcTimestampCreated = utcTimestampCreated;
     this._validUntilExpires = validUntilExpires;
     this._allowInHistory = allowInHistory;
     this._revalidation = revalidation;
     this._utcLastModified = utcLastModified;
     this._isLastModifiedSet = isLastModifiedSet;
     this._etag = etag;
     this._generateLastModifiedFromFiles = generateLastModifiedFromFiles;
     this._generateEtagFromFiles = generateEtagFromFiles;
     this._omitVaryStar = omitVaryStar;
     this._headerCacheControl = headerCacheControl;
     this._headerPragma = headerPragma;
     this._headerExpires = headerExpires;
     this._headerLastModified = headerLastModified;
     this._headerEtag = headerEtag;
     this._headerVaryBy = headerVaryBy;
     this._hasUserProvidedDependencies = hasUserProvidedDependencies;
 }
コード例 #11
0
        /*
         * Reset based on a cached response. Includes data needed to generate
         * header for a cached response.
         */
        internal void ResetFromHttpCachePolicySettings(
                HttpCachePolicySettings settings,
                DateTime                utcTimestampRequest) {

            int i, n;
            string[] fields;
            
            _utcTimestampRequest = utcTimestampRequest;

            _varyByContentEncodings.ResetFromContentEncodings(settings.VaryByContentEncodings);
            _varyByHeaders.ResetFromHeaders(settings.VaryByHeaders);                          
            _varyByParams.ResetFromParams(settings.VaryByParams);

            _isModified                       = settings.IsModified;                    
            _hasSetCookieHeader               = settings.hasSetCookieHeader;
            _noServerCaching                  = settings.NoServerCaching;               
            _cacheExtension                   = settings.CacheExtension;                
            _noTransforms                     = settings.NoTransforms;                  
            _ignoreRangeRequests              = settings.IgnoreRangeRequests;
            _varyByCustom                     = settings.VaryByCustom;
            _cacheability                     = settings.CacheabilityInternal;                  
            _noStore                          = settings.NoStore;
            _utcExpires                       = settings.UtcExpires;                       
            _isExpiresSet                     = settings.IsExpiresSet;                  
            _maxAge                           = settings.MaxAge;                        
            _isMaxAgeSet                      = settings.IsMaxAgeSet;                   
            _proxyMaxAge                      = settings.ProxyMaxAge;                   
            _isProxyMaxAgeSet                 = settings.IsProxyMaxAgeSet;              
            _slidingExpiration                = settings.SlidingExpirationInternal;             
            _slidingDelta                     = settings.SlidingDelta;
            _utcTimestampCreated              = settings.UtcTimestampCreated;
            _validUntilExpires                = settings.ValidUntilExpiresInternal;
            _allowInHistory                   = settings.AllowInHistoryInternal;
            _revalidation                     = settings.Revalidation;                  
            _utcLastModified                  = settings.UtcLastModified;                  
            _isLastModifiedSet                = settings.IsLastModifiedSet;             
            _etag                             = settings.ETag;                          
            _generateLastModifiedFromFiles    = settings.GenerateLastModifiedFromFiles; 
            _generateEtagFromFiles            = settings.GenerateEtagFromFiles;         
            _omitVaryStar                     = settings.OmitVaryStarInternal;
            _hasUserProvidedDependencies      = settings.HasUserProvidedDependencies;

            _useCachedHeaders = true;
            _headerCacheControl = settings.HeaderCacheControl;
            _headerPragma = settings.HeaderPragma;        
            _headerExpires = settings.HeaderExpires;       
            _headerLastModified = settings.HeaderLastModified;  
            _headerEtag = settings.HeaderEtag;          
            _headerVaryBy = settings.HeaderVaryBy;        

            _noMaxAgeInCacheControl = false;

            fields = settings.PrivateFields;
            if (fields != null) {
                _privateFields = new HttpDictionary();
                for (i = 0, n = fields.Length; i < n; i++) {
                    _privateFields.SetValue(fields[i], fields[i]);
                }
            }

            fields = settings.NoCacheFields;
            if (fields != null) {
                _noCacheFields = new HttpDictionary();
                for (i = 0, n = fields.Length; i < n; i++) {
                    _noCacheFields.SetValue(fields[i], fields[i]);
                }
            }

            if (settings.ValidationCallbackInfo != null) {
                _validationCallbackInfo = new ArrayList();
                for (i = 0, n = settings.ValidationCallbackInfo.Length; i < n; i++) {
                    _validationCallbackInfo.Add(new ValidationCallbackInfo(
                            settings.ValidationCallbackInfo[i].handler,
                            settings.ValidationCallbackInfo[i].data));
                }
            }
        }
コード例 #12
0
        /* 
         * Validation policy. 
         */

        /*
         * Cache-control: must-revalidate | proxy-revalidate
         */

        /// <devdoc>
        ///    <para>Set the Cache-Control: header to reflect either the must-revalidate or 
        ///       proxy-revalidate directives based on the supplied value. The default is to
        ///       not send either of these directives unless explicitly enabled using this
        ///       method.</para>
        /// </devdoc>
        public void SetRevalidation(HttpCacheRevalidation revalidation) {
            if ((int) revalidation < (int) HttpCacheRevalidationLimits.MinValue || 
                (int) HttpCacheRevalidationLimits.MaxValue < (int) revalidation) {
                throw new ArgumentOutOfRangeException("revalidation");
            }

            if ((int) revalidation < (int) _revalidation) {
                Dirtied();
                _revalidation = revalidation;
            }
        }
コード例 #13
0
 /// <summary>
 ///     Sets the Cache-Control HTTP header to either the must-revalidate or the proxy-revalidate directives based on the
 ///     supplied enumeration value.
 /// </summary>
 /// <param name="revalidation">
 ///     The <see cref="T:System.Web.HttpCacheRevalidation" /> enumeration value to set the
 ///     Cache-Control header to.
 /// </param>
 /// <exception cref="T:System.ArgumentOutOfRangeException">
 ///     <paramref name="revalidation" /> is not one of the enumeration
 ///     values.
 /// </exception>
 public void SetRevalidation(HttpCacheRevalidation revalidation)
 {
     policy.SetRevalidation(revalidation);
 }
コード例 #14
0
ファイル: HttpCachePolicy.cs プロジェクト: stabbylambda/mono
		public void SetRevalidation (HttpCacheRevalidation revalidation)
		{
			if (revalidation < HttpCacheRevalidation.AllCaches ||
			    revalidation > HttpCacheRevalidation.None)
				throw new ArgumentOutOfRangeException ("revalidation");

			if (this.revalidation > revalidation)
				this.revalidation = revalidation;
		}
コード例 #15
0
 public override void SetRevalidation(HttpCacheRevalidation revalidation)
 {
     this._httpCachePolicy.SetRevalidation(revalidation);
 }
コード例 #16
0
 public virtual new void SetRevalidation(HttpCacheRevalidation revalidation)
 {
 }
コード例 #17
0
ファイル: CachePolicy.cs プロジェクト: dblchu/JuniorRoute
        public CachePolicy Revalidation(HttpCacheRevalidation revalidation)
        {
            _revalidation = revalidation;
            _hasPolicy = true;

            return this;
        }
コード例 #18
0
 public override void SetRevalidation(HttpCacheRevalidation revalidation)
 {
 }
コード例 #19
0
 public void SetRevalidation(HttpCacheRevalidation revalidation)
 {
 }
コード例 #20
0
ファイル: FakeCachePolicy.cs プロジェクト: nhsevidence/Snooze
 public override void SetRevalidation(HttpCacheRevalidation revalidation)
 {
     throw new NotImplementedException();
 }
コード例 #21
0
ファイル: HttpCachePolicyBase.cs プロジェクト: nobled/mono
		public virtual void SetRevalidation (HttpCacheRevalidation revalidation)
		{
			NotImplemented ();
		}
コード例 #22
0
 public void SetRevalidation(HttpCacheRevalidation revalidation)
 {
     _httpCachePolicy.SetRevalidation(revalidation);
 }
コード例 #23
0
 public void SetRevalidation (HttpCacheRevalidation revalidation)
 {
 }
コード例 #24
0
 public override void SetRevalidation(HttpCacheRevalidation revalidation)
 {
     this._httpCachePolicy.SetRevalidation(revalidation);
 }
コード例 #25
0
 public virtual void SetRevalidation(HttpCacheRevalidation revalidation)
 {
     NotImplemented();
 }
コード例 #26
0
 public HttpCacheAttribute()
 {
     _cacheability = HttpCacheability.Public;
     _revalidation = HttpCacheRevalidation.None;
 }
コード例 #27
0
		public override void SetRevalidation(HttpCacheRevalidation revalidation)
		{
			this.revalidation = revalidation;
		}
コード例 #28
0
 public HttpCacheAttribute(HttpCacheability cacheability)
 {
     _cacheability = cacheability;
     _revalidation = HttpCacheRevalidation.None;
 }
コード例 #29
0
 public virtual void SetRevalidation(HttpCacheRevalidation revalidation)
 {
     throw new NotImplementedException();
 }
コード例 #30
0
 public HttpCacheAttribute(HttpCacheability cacheability,
     HttpCacheRevalidation revalidation)
 {
     _cacheability = cacheability;
     _revalidation = revalidation;
 }
コード例 #31
0
 public virtual new void SetRevalidation (HttpCacheRevalidation revalidation)
 {
 }
コード例 #32
0
 public override void SetRevalidation(HttpCacheRevalidation revalidation)
 {
     _policy.SetRevalidation(revalidation);
 }
コード例 #33
0
		public override void SetRevalidation (HttpCacheRevalidation revalidation)
		{
			w.SetRevalidation (revalidation);
		}
コード例 #34
0
 public HttpCacheAttribute(HttpCacheability cacheability,
                           HttpCacheRevalidation revalidation)
 {
     _cacheability = cacheability;
     _revalidation = revalidation;
 }
コード例 #35
0
        /*
         * Restore original values
         */
        internal void Reset() {
            _varyByContentEncodings.Reset();
            _varyByHeaders.Reset();
            _varyByParams.Reset();

            _isModified = false;
            _hasSetCookieHeader = false;
            _noServerCaching = false;
            _cacheExtension = null;
            _noTransforms = false;
            _ignoreRangeRequests = false;
            _varyByCustom = null;
            _cacheability = (HttpCacheability) (int) HttpCacheabilityLimits.None;
            _noStore = false;
            _privateFields = null;
            _noCacheFields = null;
            _utcExpires = DateTime.MinValue;
            _isExpiresSet = false;
            _maxAge = TimeSpan.Zero;
            _isMaxAgeSet = false;
            _proxyMaxAge = TimeSpan.Zero;
            _isProxyMaxAgeSet = false;
            _slidingExpiration = -1;
            _slidingDelta = TimeSpan.Zero;
            _utcTimestampCreated = DateTime.MinValue;
            _utcTimestampRequest = DateTime.MinValue;
            _validUntilExpires = -1;
            _allowInHistory = -1;
            _revalidation = HttpCacheRevalidation.None;
            _utcLastModified = DateTime.MinValue;
            _isLastModifiedSet = false;
            _etag = null;

            _generateLastModifiedFromFiles = false; 
            _generateEtagFromFiles = false;         
            _validationCallbackInfo = null;       
        
            _useCachedHeaders = false;
            _headerCacheControl = null;
            _headerPragma = null;        
            _headerExpires = null;       
            _headerLastModified = null;  
            _headerEtag = null;          
            _headerVaryBy = null;       

            _noMaxAgeInCacheControl = false;

            _hasUserProvidedDependencies = false;

            _omitVaryStar = -1;
        }
コード例 #36
0
 public virtual void SetRevalidation(HttpCacheRevalidation revalidation) {
     throw new NotImplementedException();
 }
コード例 #37
0
 public HttpCacheAttribute()
 {
     _cacheability = HttpCacheability.Public;
     _revalidation = HttpCacheRevalidation.None;
 }
コード例 #38
0
        internal void ResetFromHttpCachePolicySettings(HttpCachePolicySettings settings, DateTime utcTimestampRequest)
        {
            int num;
            int length;

            this._utcTimestampRequest = utcTimestampRequest;
            this._varyByContentEncodings.ResetFromContentEncodings(settings.VaryByContentEncodings);
            this._varyByHeaders.ResetFromHeaders(settings.VaryByHeaders);
            this._varyByParams.ResetFromParams(settings.VaryByParams);
            this._isModified          = settings.IsModified;
            this._hasSetCookieHeader  = settings.hasSetCookieHeader;
            this._noServerCaching     = settings.NoServerCaching;
            this._cacheExtension      = settings.CacheExtension;
            this._noTransforms        = settings.NoTransforms;
            this._ignoreRangeRequests = settings.IgnoreRangeRequests;
            this._varyByCustom        = settings.VaryByCustom;
            this._cacheability        = settings.CacheabilityInternal;
            this._noStore             = settings.NoStore;
            this._utcExpires          = settings.UtcExpires;
            this._isExpiresSet        = settings.IsExpiresSet;
            this._maxAge              = settings.MaxAge;
            this._isMaxAgeSet         = settings.IsMaxAgeSet;
            this._proxyMaxAge         = settings.ProxyMaxAge;
            this._isProxyMaxAgeSet    = settings.IsProxyMaxAgeSet;
            this._slidingExpiration   = settings.SlidingExpirationInternal;
            this._slidingDelta        = settings.SlidingDelta;
            this._utcTimestampCreated = settings.UtcTimestampCreated;
            this._validUntilExpires   = settings.ValidUntilExpiresInternal;
            this._allowInHistory      = settings.AllowInHistoryInternal;
            this._revalidation        = settings.Revalidation;
            this._utcLastModified     = settings.UtcLastModified;
            this._isLastModifiedSet   = settings.IsLastModifiedSet;
            this._etag = settings.ETag;
            this._generateLastModifiedFromFiles = settings.GenerateLastModifiedFromFiles;
            this._generateEtagFromFiles         = settings.GenerateEtagFromFiles;
            this._omitVaryStar = settings.OmitVaryStarInternal;
            this._hasUserProvidedDependencies = settings.HasUserProvidedDependencies;
            this._useCachedHeaders            = true;
            this._headerCacheControl          = settings.HeaderCacheControl;
            this._headerPragma           = settings.HeaderPragma;
            this._headerExpires          = settings.HeaderExpires;
            this._headerLastModified     = settings.HeaderLastModified;
            this._headerEtag             = settings.HeaderEtag;
            this._headerVaryBy           = settings.HeaderVaryBy;
            this._noMaxAgeInCacheControl = false;
            string[] privateFields = settings.PrivateFields;
            if (privateFields != null)
            {
                this._privateFields = new HttpDictionary();
                num    = 0;
                length = privateFields.Length;
                while (num < length)
                {
                    this._privateFields.SetValue(privateFields[num], privateFields[num]);
                    num++;
                }
            }
            privateFields = settings.NoCacheFields;
            if (privateFields != null)
            {
                this._noCacheFields = new HttpDictionary();
                num    = 0;
                length = privateFields.Length;
                while (num < length)
                {
                    this._noCacheFields.SetValue(privateFields[num], privateFields[num]);
                    num++;
                }
            }
            if (settings.ValidationCallbackInfo != null)
            {
                this._validationCallbackInfo = new ArrayList();
                num    = 0;
                length = settings.ValidationCallbackInfo.Length;
                while (num < length)
                {
                    this._validationCallbackInfo.Add(new ValidationCallbackInfo(settings.ValidationCallbackInfo[num].handler, settings.ValidationCallbackInfo[num].data));
                    num++;
                }
            }
        }
コード例 #39
0
 public override void SetRevalidation(HttpCacheRevalidation revalidation)
 {
     this.revalidation = revalidation;
 }
コード例 #40
0
 public HttpCacheAttribute(HttpCacheability cacheability)
 {
     _cacheability = cacheability;
     _revalidation = HttpCacheRevalidation.None;
 }