Table of Contents

Class SynchronizedList<T>

Namespace
ToSic.Eav.Caching
Assembly
ToSic.Eav.Core.dll

This is an IEnumerable which relies on an up-stream cache, which may change. That would require this IEnumerable to update what it delivers.

[InternalApi_DoNotUse_MayChangeWithoutNotice("this is just fyi")]
public class SynchronizedList<T> : SynchronizedObject<IImmutableList<T>>, ICacheDependent, ICacheExpiring, ITimestamped, IEnumerable<T>, IEnumerable

Type Parameters

T

The type which is enumerated, usually an IEntity

Inheritance
object
SynchronizedList<T>
Implements
Inherited Members

Constructors

SynchronizedList(ICacheExpiring, Func<List<T>>)

Initialized a new list which depends on another source

[Obsolete("You should prefer the Func<Immutable> signature")]
public SynchronizedList(ICacheExpiring upstream, Func<List<T>> rebuild)

Parameters

upstream ICacheExpiring

the upstream cache which can tell us if a refresh is necessary

rebuild Func<List<T>>

the method which rebuilds the list

SynchronizedList(ICacheExpiring, Func<IImmutableList<T>>)

Initialized a new list which depends on another source

public SynchronizedList(ICacheExpiring upstream, Func<IImmutableList<T>> rebuild)

Parameters

upstream ICacheExpiring

the upstream cache which can tell us if a refresh is necessary

rebuild Func<IImmutableList<T>>

the method which rebuilds the list