/// <summary> /// Initializes a new instance of the <see cref="CollectorReceiptManager" /> class. /// </summary> /// <param name="receiptRepository">The receipt repository.</param> /// <param name="processRepository">The process repository.</param> /// <param name="settingsManager">The settings manager.</param> /// <param name="networkHelper">The network helper.</param> /// <param name="logger">The logger.</param> /// <exception cref="System.ArgumentNullException">settingsManager /// or /// receiptRepository /// or /// processRepository /// or /// networkHelper /// or /// logger</exception> public CollectorReceiptManager( Interfaces.ICollectorReceiptRepository receiptRepository, Interfaces.IProcessRepository processRepository, Interfaces.ISettingsManager settingsManager, Interfaces.INetworkHelper networkHelper, ILoggerService logger) { if (settingsManager == null) { throw new ArgumentNullException("settingsManager"); } if (receiptRepository == null) { throw new ArgumentNullException("receiptRepository"); } if (processRepository == null) { throw new ArgumentNullException("processRepository"); } if (networkHelper == null) { throw new ArgumentNullException("networkHelper"); } if (logger == null) { throw new ArgumentNullException("logger"); } this.receiptRepository = receiptRepository; this.processRepository = processRepository; this.settingsManager = settingsManager; this.settings = this.settingsManager.LoadSettings(); this.networkHelper = networkHelper; this.logger = logger; this.databaseConnectionString = "jdbc:h2:" + this.settings.CollectionneurDabasePath.Replace(".h2.db", string.Empty); }