Table of Contents

Class UnitOfWorkManager

Namespace
Cratis.Chronicle.Transactions
Assembly
Cratis.Chronicle.dll

Represents an implementation of IUnitOfWorkManager.

public class UnitOfWorkManager : IUnitOfWorkManager
Inheritance
UnitOfWorkManager
Implements
Inherited Members

Constructors

UnitOfWorkManager(IEventStore)

Represents an implementation of IUnitOfWorkManager.

public UnitOfWorkManager(IEventStore eventStore)

Parameters

eventStore IEventStore

The IEventStore to use for the IUnitOfWork.

Properties

Current

Gets the current IUnitOfWork, scoped to the current async context.

public IUnitOfWork Current { get; }

Property Value

IUnitOfWork

Exceptions

NoUnitOfWorkHasBeenStarted

If no unit of work has been started.

HasCurrent

Gets a value indicating whether or not there is a current IUnitOfWork.

public bool HasCurrent { get; }

Property Value

bool

Methods

Begin(CorrelationId)

Begin a new IUnitOfWork with a specific CorrelationId for the current async context.

public IUnitOfWork Begin(CorrelationId correlationId)

Parameters

correlationId CorrelationId

The CorrelationId to use for the IUnitOfWork.

Returns

IUnitOfWork

A new IUnitOfWork.

SetCurrent(IUnitOfWork)

Set the current IUnitOfWork.

public void SetCurrent(IUnitOfWork unitOfWork)

Parameters

unitOfWork IUnitOfWork

The IUnitOfWork to set as current.

TryGetFor(CorrelationId, out IUnitOfWork)

Try to get the IUnitOfWork for a specific CorrelationId.

public bool TryGetFor(CorrelationId correlationId, out IUnitOfWork unitOfWork)

Parameters

correlationId CorrelationId

The CorrelationId to get the IUnitOfWork for.

unitOfWork IUnitOfWork

The IUnitOfWork if it was found, otherwise null.

Returns

bool

True if it was found, false if not.