<PackageReference Include="Relativity.Other" Version="10.3.226.8" />

LazyTableCache<TDictionaryKey, TDictionaryValue, TFactoryData>

public abstract class LazyTableCache<TDictionaryKey, TDictionaryValue, TFactoryData>
protected abstract TimeSpan ExpirationTimeSpan { get; }

protected abstract ExpirationType ExpirationType { get; }

protected virtual bool WaitForOperationCompletionOnTimeout { get; }

protected LazyTableCache()

protected abstract IDictionary<TDictionaryKey, TDictionaryValue> CacheItemFactory(int workspaceArtifactID, TFactoryData factoryData, CancellationToken cancellationToken)

protected virtual string CacheKey(int workspaceArtifactID)

protected virtual TDictionaryValue CacheMissBehavior(TFactoryData factoryData, int workspaceArtifactID, TDictionaryKey cacheIdentifier)

protected virtual CancellationTokenRegistration RegisterCancellation(int workspaceArtifactID, TFactoryData factoryData, CancellationToken cancellationToken)

public void Remove(int workspaceArtifactID)

public IDictionary<TDictionaryKey, TDictionaryValue> RetrieveAll(TFactoryData factoryData, int workspaceArtifactID)

public TDictionaryValue RetrieveValueByIdentifier(TFactoryData factoryData, int workspaceArtifactID, TDictionaryKey cacheIdentifier)