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(ProtocolDrugTherapyViewModel model, string name, string systemId) { if (model == default) { throw new ArgumentNullException(nameof(model)); } if (_protocolDrugTherapyToEHRConverter == default) { _locker.EnterWriteLock(); if (_protocolDrugTherapyToEHRConverter == default) { _protocolDrugTherapyToEHRConverter = new ProtocolDrugTherapyToEHRConverter(EhrManager); } _locker.ExitWriteLock(); } return(_protocolDrugTherapyToEHRConverter.Convert(model, name, systemId)); }