using System;
namespace System.Net.Cache
{
/// Defines an application's caching requirements for resources obtained by using objects.
// Token: 0x02000132 RID: 306
public class HttpRequestCachePolicy : RequestCachePolicy
{
/// Initializes a new instance of the class.
// Token: 0x06000A72 RID: 2674 RVA: 0x0001D918 File Offset: 0x0001BB18
public HttpRequestCachePolicy()
{
}
/// Initializes a new instance of the class using the specified cache synchronization date.
/// A object that specifies the time when resources stored in the cache must be revalidated.
// Token: 0x06000A73 RID: 2675 RVA: 0x0001D920 File Offset: 0x0001BB20
public HttpRequestCachePolicy(DateTime cacheSyncDate)
{
this.cacheSyncDate = cacheSyncDate;
}
/// Initializes a new instance of the class using the specified cache policy.
/// An value.
// Token: 0x06000A74 RID: 2676 RVA: 0x0001D930 File Offset: 0x0001BB30
public HttpRequestCachePolicy(HttpRequestCacheLevel level)
{
this.level = level;
}
/// Initializes a new instance of the class using the specified age control and time values.
/// One of the following enumeration values: , , or .
/// A value that specifies an amount of time. See the Remarks section for more information.
/// The value specified for the parameter cannot be used with this constructor.
// Token: 0x06000A75 RID: 2677 RVA: 0x0001D940 File Offset: 0x0001BB40
public HttpRequestCachePolicy(HttpCacheAgeControl cacheAgeControl, TimeSpan ageOrFreshOrStale)
{
switch (cacheAgeControl)
{
case HttpCacheAgeControl.MinFresh:
this.minFresh = ageOrFreshOrStale;
return;
case HttpCacheAgeControl.MaxAge:
this.maxAge = ageOrFreshOrStale;
return;
case HttpCacheAgeControl.MaxStale:
this.maxStale = ageOrFreshOrStale;
return;
}
throw new ArgumentException("ageOrFreshOrStale");
}
/// Initializes a new instance of the class using the specified maximum age, age control value, and time value.
/// An value.
/// A value that specifies the maximum age for resources.
/// A value that specifies an amount of time. See the Remarks section for more information.
/// The value specified for the parameter is not valid.
// Token: 0x06000A76 RID: 2678 RVA: 0x0001D9A4 File Offset: 0x0001BBA4
public HttpRequestCachePolicy(HttpCacheAgeControl cacheAgeControl, TimeSpan maxAge, TimeSpan freshOrStale)
{
this.maxAge = maxAge;
switch (cacheAgeControl)
{
case HttpCacheAgeControl.MinFresh:
this.minFresh = freshOrStale;
return;
case HttpCacheAgeControl.MaxStale:
this.maxStale = freshOrStale;
return;
}
throw new ArgumentException("freshOrStale");
}
/// Initializes a new instance of the class using the specified maximum age, age control value, time value, and cache synchronization date.
/// An value.
/// A value that specifies the maximum age for resources.
/// A value that specifies an amount of time. See the Remarks section for more information.
/// A object that specifies the time when resources stored in the cache must be revalidated.
// Token: 0x06000A77 RID: 2679 RVA: 0x0001DA00 File Offset: 0x0001BC00
public HttpRequestCachePolicy(HttpCacheAgeControl cacheAgeControl, TimeSpan maxAge, TimeSpan freshOrStale, DateTime cacheSyncDate)
: this(cacheAgeControl, maxAge, freshOrStale)
{
this.cacheSyncDate = cacheSyncDate;
}
/// Gets the cache synchronization date for this instance.
/// A value set to the date specified when this instance was created. If no date was specified, this property's value is .
// Token: 0x170002A5 RID: 677
// (get) Token: 0x06000A78 RID: 2680 RVA: 0x0001DA14 File Offset: 0x0001BC14
public DateTime CacheSyncDate
{
get
{
return this.cacheSyncDate;
}
}
/// Gets the value that was specified when this instance was created.
/// A value that specifies the cache behavior for resources that were obtained using objects.
// Token: 0x170002A6 RID: 678
// (get) Token: 0x06000A79 RID: 2681 RVA: 0x0001DA1C File Offset: 0x0001BC1C
public new HttpRequestCacheLevel Level
{
get
{
return this.level;
}
}
/// Gets the maximum age permitted for a resource returned from the cache.
/// A value that is set to the maximum age value specified when this instance was created. If no date was specified, this property's value is .
// Token: 0x170002A7 RID: 679
// (get) Token: 0x06000A7A RID: 2682 RVA: 0x0001DA24 File Offset: 0x0001BC24
public TimeSpan MaxAge
{
get
{
return this.maxAge;
}
}
/// Gets the maximum staleness value that is permitted for a resource returned from the cache.
/// A value that is set to the maximum staleness value specified when this instance was created. If no date was specified, this property's value is .
// Token: 0x170002A8 RID: 680
// (get) Token: 0x06000A7B RID: 2683 RVA: 0x0001DA2C File Offset: 0x0001BC2C
public TimeSpan MaxStale
{
get
{
return this.maxStale;
}
}
/// Gets the minimum freshness that is permitted for a resource returned from the cache.
/// A value that specifies the minimum freshness specified when this instance was created. If no date was specified, this property's value is .
// Token: 0x170002A9 RID: 681
// (get) Token: 0x06000A7C RID: 2684 RVA: 0x0001DA34 File Offset: 0x0001BC34
public TimeSpan MinFresh
{
get
{
return this.minFresh;
}
}
/// Returns a string representation of this instance.
/// A value that contains the property values for this instance.
// Token: 0x06000A7D RID: 2685 RVA: 0x0001DA3C File Offset: 0x0001BC3C
[global::System.MonoTODO]
public override string ToString()
{
throw new NotImplementedException();
}
// Token: 0x04000AE9 RID: 2793
private DateTime cacheSyncDate;
// Token: 0x04000AEA RID: 2794
private HttpRequestCacheLevel level;
// Token: 0x04000AEB RID: 2795
private TimeSpan maxAge;
// Token: 0x04000AEC RID: 2796
private TimeSpan maxStale;
// Token: 0x04000AED RID: 2797
private TimeSpan minFresh;
}
}