public void Dispose() { if (!_isDisposed) { _locker.Dispose(); _inToEHRConverter = null; _outToEHRConverter = null; _plannedToEHRConverter = null; _commissionAprToEHRConverter = null; _dispObservationToEHRConverter = null; _inClinicProcedureToEHRConverter = null; _pathProcedureToEHRConverter = null; _protocolDrugTherapyToEHRConverter = null; _patientToEHRConverter = null; _isDisposed = !_isDisposed; GC.SuppressFinalize(this); } }
public EhrExtract Convert(InClinicProcedureViewModel model, string name, string systemId) { if (model == default) { throw new ArgumentNullException(nameof(model)); } if (_inClinicProcedureToEHRConverter == default) { _locker.EnterWriteLock(); if (_inClinicProcedureToEHRConverter == default) { _inClinicProcedureToEHRConverter = new InClinicProcedureToEHRConverter(EhrManager); } _locker.ExitWriteLock(); } return(_inClinicProcedureToEHRConverter.Convert(model, name, systemId)); }