Table of Contents

Class BaseNonEventDomainRepository<TDomain, TModel, TDomainSnapshot>

Namespace: Casewhere.Runtime.Workflows
Assembly: Casewhere.Runtime.dll

public abstract class BaseNonEventDomainRepository<TDomain, TModel, TDomainSnapshot> : IBaseNonEventDomainRepository<TDomain> where TDomain : SnapshotAggregateRoot, new() where TModel : class, IIdentity where TDomainSnapshot : SnapshotObject

Type Parameters

TDomain

TModel

TDomainSnapshot

Inheritance

objectBaseNonEventDomainRepository<TDomain, TModel, TDomainSnapshot>

Implements

IBaseNonEventDomainRepository<TDomain>

Inherited Members

object.ToString(), object.Equals(object), object.Equals(object, object), object.ReferenceEquals(object, object), object.GetHashCode(), object.GetType(), object.MemberwiseClone()

Extension Methods

ObjectExtension.ConvertToBsonValue(object), EnumExtensions.DeepClone<BaseNonEventDomainRepository<TDomain, TModel, TDomainSnapshot>>(BaseNonEventDomainRepository<TDomain, TModel, TDomainSnapshot>)

Constructors

BaseNonEventDomainRepository(IDocumentSession)

public BaseNonEventDomainRepository(IDocumentSession session)

Parameters

session IDocumentSession

Fields

_cachedDomains

protected readonly ConcurrentDictionary<Guid, TDomain> _cachedDomains

Field Value

ConcurrentDictionary<Guid, TDomain>

_session

protected readonly IDocumentSession _session

Field Value

IDocumentSession

Methods

Add(TDomain)

public virtual void Add(TDomain domain)

Parameters

domain TDomain

CommitSession(Predicate<TDomain>)

public virtual void CommitSession(Predicate<TDomain> predicate = null)

Parameters

predicate Predicate<TDomain>

Exists(Guid)

public virtual bool Exists(Guid id)

Parameters

id Guid

Returns

bool

Get(Guid)

public virtual TDomain Get(Guid id)

Parameters

id Guid

Returns

TDomain

OnModelLoaded(TModel)

protected virtual void OnModelLoaded(TModel model)

Parameters

model TModel

TryGet(Guid, out TDomain)

public bool TryGet(Guid id, out TDomain entity)

Parameters

id Guid

entity TDomain

Returns

bool