public FileFormatterCentralService(IFileAssembler fileAssembler, IServiceBusConfiguration fileQueueConfig, IServiceBusConfiguration statusQueueConfig, IServiceBusConfiguration controlQueueConfig)
        {
#if DEBUG
            var appDir = AppDomain.CurrentDomain.BaseDirectory;
            OutputPath            = Path.GetFullPath(Path.Combine(appDir, "..\\..\\..\\", OutputFolderName));
            SystemFilesPath       = Path.GetFullPath(Path.Combine(appDir, "..\\..\\..\\", SystemFilesFolderName));
            DefaultNewPageTimeout = 10;
#endif

            _statusQueueConfig   = statusQueueConfig;
            _controlQueueConfig  = controlQueueConfig;
            _fileQueueController = new AzureMessagesQueueController(fileQueueConfig);
            _fileAssembler       = fileAssembler;
            _settingsExchanger   = new FileFormatterSettingsExchanger();
        }
        public FileFormatterService(
            IFileBuilderFactory fileBuilderFactory,
            IServiceBusConfigurationFactory serviceBusConfigurationFactory,
            IFileFormatterSettingsExchanger settingsExchanger,
            IImageWatcherFactory imageWatcherFactrory)
        {
            _fileBuilderFactory = fileBuilderFactory;
            _fileQueueConfig    = serviceBusConfigurationFactory.CreateByType(SbConfigType.FileQueue);
            _statusQueueConfig  = serviceBusConfigurationFactory.CreateByType(SbConfigType.StatusQueue);
            _controlQueueConfig = serviceBusConfigurationFactory.CreateByType(SbConfigType.ControlQueue);
            _controlQueueConfig.SubscriptionName = NodeName;

            _settingsExchanger   = settingsExchanger;
            _imageWatcherFactory = imageWatcherFactrory;

#if DEBUG
            var appDir     = AppDomain.CurrentDomain.BaseDirectory;
            var imagesPath = Path.GetFullPath(Path.Combine(appDir, "..\\..\\..\\", "ImagesReceiver"));
            MonitoringPaths.Add(imagesPath);
            DamagedPath    = Path.GetFullPath(Path.Combine(appDir, "..\\..\\..\\", "Damaged"));
            FileType       = FileType.Pdf;
            NewPageTimeOut = 4000;
#endif
        }