예제 #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="FileArchiveManager"/> class.
 /// </summary>
 /// <param name="dataProvider">
 /// The data provider.
 /// </param>
 /// <param name="fareDatabase">
 /// The fare database.
 /// </param>
 /// <param name="logger">
 /// The logger.
 /// </param>
 public FileArchiveManager(IFareDataProvider dataProvider, IFareDatabase fareDatabase, ILogger logger)
     : this()
 {
     this.FareDataProvider = dataProvider;
     this.FareDatabase = fareDatabase;
     this.Logger = logger;
 }
예제 #2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="FareExportMonitor"/> class.
        /// </summary>
        /// <param name="archiveManager">
        /// The archive manager.
        /// </param>
        /// <param name="controlFactory">
        /// The control factory.
        /// </param>
        /// <param name="autoSync">
        /// The auto sync.
        /// </param>
        public FareExportMonitor(IArchiveManager archiveManager, IFareBrowserControlFactory controlFactory, Func<bool> autoSync)
            : base(controlFactory)
        {
            var env = AppContext.MonitorEnvironment;
            this._archiveManager = archiveManager;
            this._archiveManager.Initialize();
            this._fareDatabase = env.FareDatabase;
            this._autoSync = autoSync;
            this._logger = env.Logger;
            var guid = Guid.NewGuid().ToString();
            this._dataPath = AppUtil.GetLocalDataPath("Temp") + "\\" + guid + LOCK_EXT;
            Directory.CreateDirectory(this._dataPath);
            this._lockStream = File.Open(Path.Combine(this._dataPath, "_" + guid), FileMode.Create, FileAccess.ReadWrite, FileShare.None);

            this.RequestCompleted += this.FareExportMonitor_OnRequestCompleted;
        }