MemoryCacheEntryOptions constructor
MemoryCacheEntryOptions({
- DateTime? absoluteExpiration,
- Duration? absoluteExpirationRelativeToNow,
- Duration? slidingExpiration,
- CacheItemPriority priority = CacheItemPriority.normal,
- int? size,
- List<
Stream< ? expirationTokens,void> > - List<
PostEvictionCallbackRegistration> ? postEvictionCallbacks,
Creates a new instance of MemoryCacheEntryOptions.
Implementation
MemoryCacheEntryOptions({
this.absoluteExpiration,
Duration? absoluteExpirationRelativeToNow,
Duration? slidingExpiration,
this.priority = CacheItemPriority.normal,
int? size,
List<Stream<void>>? expirationTokens,
List<PostEvictionCallbackRegistration>? postEvictionCallbacks,
}) : _absoluteExpirationRelativeToNow = absoluteExpirationRelativeToNow,
_slidingExpiration = slidingExpiration,
_size = size,
_expirationTokens = expirationTokens,
_postEvictionCallbacks = postEvictionCallbacks {
if (absoluteExpirationRelativeToNow != null &&
!absoluteExpirationRelativeToNow.isNegative &&
absoluteExpirationRelativeToNow == Duration.zero) {
throw ArgumentError.value(
absoluteExpirationRelativeToNow,
'absoluteExpirationRelativeToNow',
'The relative expiration value must be positive.',
);
}
if (slidingExpiration != null &&
!slidingExpiration.isNegative &&
slidingExpiration == Duration.zero) {
throw ArgumentError.value(
slidingExpiration,
'slidingExpiration',
'The sliding expiration value must be positive.',
);
}
if (size != null && size < 0) {
throw ArgumentError.value(
size,
'size',
'The size value must be non-negative.',
);
}
}