public TransactionManagerService(
[NotNull] IBudgetBucketRepository bucketRepository,
[NotNull] IStatementRepository statementRepository,
[NotNull] ILogger logger,
[NotNull] MonitorableDependencies monitorableDependencies)
{
if (bucketRepository == null)
{
throw new ArgumentNullException(nameof(bucketRepository));
}
if (statementRepository == null)
{
throw new ArgumentNullException(nameof(statementRepository));
}
if (logger == null)
{
throw new ArgumentNullException(nameof(logger));
}
if (monitorableDependencies == null) throw new ArgumentNullException(nameof(monitorableDependencies));
this.bucketRepository = bucketRepository;
this.statementRepository = statementRepository;
this.logger = logger;
this.monitorableDependencies = monitorableDependencies;
}