Imported Upstream version 4.0.0~alpha1

Former-commit-id: 806294f5ded97629b74c85c09952f2a74fe182d9
This commit is contained in:
Jo Shields
2015-04-07 09:35:12 +01:00
parent 283343f570
commit 3c1f479b9d
22469 changed files with 2931443 additions and 869343 deletions

View File

@@ -0,0 +1,56 @@
// <copyright file="CacheItemPolicy.cs" company="Microsoft">
// Copyright (c) 2009 Microsoft Corporation. All rights reserved.
// </copyright>
using System;
using System.Collections.ObjectModel;
namespace System.Runtime.Caching {
public class CacheItemPolicy {
private DateTimeOffset _absExpiry;
private TimeSpan _sldExpiry;
private Collection<ChangeMonitor> _changeMonitors;
private CacheItemPriority _priority;
private CacheEntryRemovedCallback _removedCallback;
private CacheEntryUpdateCallback _updateCallback;
public DateTimeOffset AbsoluteExpiration {
get { return _absExpiry; }
set { _absExpiry = value; }
}
public Collection<ChangeMonitor> ChangeMonitors {
get {
if (_changeMonitors == null) {
_changeMonitors = new Collection<ChangeMonitor>();
}
return _changeMonitors;
}
}
public CacheItemPriority Priority {
get { return _priority; }
set { _priority = value; }
}
public CacheEntryRemovedCallback RemovedCallback {
get { return _removedCallback; }
set { _removedCallback = value; }
}
public TimeSpan SlidingExpiration {
get { return _sldExpiry; }
set { _sldExpiry = value; }
}
public CacheEntryUpdateCallback UpdateCallback {
get { return _updateCallback; }
set { _updateCallback = value; }
}
public CacheItemPolicy() {
_absExpiry = ObjectCache.InfiniteAbsoluteExpiration;
_sldExpiry = ObjectCache.NoSlidingExpiration;
_priority = CacheItemPriority.Default;
}
}
}