/// <summary>
 /// Initializes a new instance of the <see cref="ContractService" /> class.
 /// </summary>
 /// <param name="repository">Contracts repository.</param>
 /// <param name="mapper">Automapper instance.</param>
 /// <param name="uriService">The uri service.</param>
 /// <param name="logger">The logger.</param>
 /// <param name="auditService">The audit service used for auditing.</param>
 /// <param name="semaphoreOnEntity">The semaphore to use for locking.</param>
 /// <param name="documentService">The document management Contract Service.</param>
 /// <param name="contractValidator">The contract validator.</param>
 /// <param name="mediator">The mediator.</param>
 /// <param name="contractDocumentService">The blob container used to communicate with azure storage.</param>
 public ContractService(
     IContractRepository repository,
     IMapper mapper,
     IUriService uriService,
     ILoggerAdapter <ContractService> logger,
     IAuditService auditService,
     ISemaphoreOnEntity <string> semaphoreOnEntity,
     IDocumentManagementContractService documentService,
     IContractValidationService contractValidator,
     IMediator mediator,
     IContractDocumentService contractDocumentService)
 {
     _repository              = repository;
     _mapper                  = mapper;
     _uriService              = uriService;
     _logger                  = logger;
     _auditService            = auditService;
     _semaphoreOnEntity       = semaphoreOnEntity;
     _documentService         = documentService;
     _contractValidator       = contractValidator;
     _mediator                = mediator;
     _contractDocumentService = contractDocumentService;
 }