Пример #1
0
        public void Update(IScannerManager scannerManager)
        {
            if (scannerManager.SourceCount > 0)
            {
                var settingsForDelete = new List <ScannerSettings>();

                foreach (var setting in _scannersSettings)
                {
                    var activeSource = false;
                    for (var i = 0; i < scannerManager.SourceCount; i++)
                    {
                        var sourceProduct = scannerManager.GetSource(i);
                        if (setting.Compare(sourceProduct.Index, sourceProduct.Name))
                        {
                            activeSource = true;
                            break;
                        }
                    }
                    if (!activeSource)
                    {
                        settingsForDelete.Add(setting);
                    }
                }
                foreach (var setting in settingsForDelete)
                {
                    _scannersSettings.Remove(setting);
                }
            }
            else
            {
                _scannersSettings.RemoveAll(x => true);
            }

            _lastUpdateTime = DateTime.UtcNow;
        }
Пример #2
0
        public ScannerSettings Search(IScannerManager scannerManager, int searchIndex)
        {
            string sourceName;
            int?   sourceId;

            try
            {
                var sourceProduct = scannerManager.GetSource(searchIndex);
                sourceName = sourceProduct.Name;
                sourceId   = sourceProduct.Index;
            }
            catch (Exception)
            {
                return(null);
            }

            foreach (var setting in _scannersSettings)
            {
                if (setting.Compare(sourceId.Value, sourceName))
                {
                    return(setting);
                }
            }
            return(null);
        }
Пример #3
0
		public void Update(IScannerManager scannerManager)
		{
			if (scannerManager.SourceCount > 0)
			{
				var settingsForDelete = new List<ScannerSettings>();
				
				foreach (var setting in _scannersSettings)
				{
					var activeSource = false;
					for (var i = 0; i < scannerManager.SourceCount; i++)
					{
						var sourceProduct = scannerManager.GetSource(i);
						if (setting.Compare(sourceProduct.Index, sourceProduct.Name))
						{
							activeSource = true;
							break;
						}
					}
					if (!activeSource)
						settingsForDelete.Add(setting);
				}
				foreach (var setting in settingsForDelete)
				{
					_scannersSettings.Remove(setting);
				}
			}
			else
				_scannersSettings.RemoveAll(x => true);

			_lastUpdateTime = DateTime.UtcNow;
		}
Пример #4
0
        public ScannerSettings PushCurrentSource(IScannerManager scannerManager)
        {
            var settings = scannerManager.CurrentSource.GetScannerSettings();

            _scannersSettings.Add(settings);
            return(settings);
        }
Пример #5
0
		public ActionResult Scan(ScanForm command, IScannerManager scannerManager)
		{
			var scanResult = new ScanCommand(command, scannerManager).Execute(_markerAsync);

			if (scanResult.Validate())
				return new ActionResult { Content = scanResult.Content, ContentType = "text/json" };
			
			throw new Exception(scanResult.Error);
		}
Пример #6
0
		public ActionResult GetScannerParameters(IScannerManager scannerManager, CacheSettings cashSettings, int? sourceIndex)
		{
			var queryResult = new GetScannerParametersQuery(scannerManager, cashSettings, sourceIndex).Execute(_markerAsync);
			
			if (queryResult.Validate())
				return new ActionResult{Content = Encoding.UTF8.GetBytes(queryResult.Serialize()), ContentType = "text/json"};

			throw new Exception(queryResult.Error);
		}
Пример #7
0
 private IScannerManager GetScannerManager()
 {
     if (_scannerManager == null)
         lock (s_scannerManagerSync)
         {
             if (_scannerManager == null)
                 _scannerManager = CoreApplication.Instance.GetSubsystem<IScannerManager>();
         }
     return _scannerManager;
 }
		public GetScannerParametersQuery(IScannerManager scannerManager, CacheSettings cacheSettings, int? sourceIndex)
		{
			if (scannerManager == null) throw new Exception("Невозможно получить параметры сканирования, т.к. менеджер источников данных не был инициализирован");

			_scannerManager = scannerManager;
			_cacheSettings = cacheSettings;
			_sourceIndex = sourceIndex;

			_logger = LogManager.GetLogger(typeof(GetScannerParametersQuery));
		}
Пример #9
0
        public override void Init(SubsystemConfig config)
        {
            _config            = (WorkflowManagerConfig)config;
            _syncManager       = Application.GetSubsystemOrThrow <ISynchronizationManager>();
            _fileSystemManager = Application.GetSubsystemOrThrow <IFileSystemManager>();
            _scannerManager    = Application.GetSubsystemOrThrow <IScannerManager>();
            StateChanged      += (sender, e) => Logger.LogInfo(Message.WorkflowStateChanged, e.State);
            var keyboard = (IKeyboardManager)Application.GetSubsystemOrThrow <UnionKeyboard>();

            keyboard.KeyPressed += LogUserKeyPressed;
            LoadErrorState();
            InitWorkflow();
        }
        public GetScannerParametersQuery(IScannerManager scannerManager, CacheSettings cacheSettings, int?sourceIndex)
        {
            if (scannerManager == null)
            {
                throw new Exception("Невозможно получить параметры сканирования, т.к. менеджер источников данных не был инициализирован");
            }

            _scannerManager = scannerManager;
            _cacheSettings  = cacheSettings;
            _sourceIndex    = sourceIndex;

            _logger = LogManager.GetLogger(typeof(GetScannerParametersQuery));
        }
Пример #11
0
 public override void Init(SubsystemConfig config)
 {
     _config              = (SynchronizationManagerConfig)config;
     _scannerManager      = Application.GetSubsystemOrThrow <IScannerManager>();
     _fileSystemManager   = Application.GetSubsystemOrThrow <IFileSystemManager>();
     _electionManager     = Application.GetSubsystemOrThrow <IElectionManager>();
     _votingResultManager = Application.GetSubsystemOrThrow <IVotingResultManager>();
     _printingManager     = Application.GetSubsystemOrThrow <IPrintingManager>();
     _printingManager.PrintReportStarting += (s, e) => SetPrintReportExecutingNow(true);
     _printingManager.PrintReportFinished += (s, e) => ResetPrintReportExecutingNow(true);
     InitRemoteScannerCommunication();
     InitState();
 }
Пример #12
0
        public ActionResult GetScannerParameters(IScannerManager scannerManager, CacheSettings cashSettings, int?sourceIndex)
        {
            var queryResult = new GetScannerParametersQuery(scannerManager, cashSettings, sourceIndex).Execute(_markerAsync);

            if (queryResult.Validate())
            {
                return new ActionResult {
                           Content = Encoding.UTF8.GetBytes(queryResult.Serialize()), ContentType = "text/json"
                }
            }
            ;

            throw new Exception(queryResult.Error);
        }
Пример #13
0
        public ActionResult Scan(ScanForm command, IScannerManager scannerManager)
        {
            var scanResult = new ScanCommand(command, scannerManager).Execute(_markerAsync);

            if (scanResult.Validate())
            {
                return new ActionResult {
                           Content = scanResult.Content, ContentType = "text/json"
                }
            }
            ;

            throw new Exception(scanResult.Error);
        }
Пример #14
0
 private IScannerManager GetScannerManager()
 {
     if (_scannerManager == null)
     {
         lock (s_scannerManagerSync)
         {
             if (_scannerManager == null)
             {
                 _scannerManager = CoreApplication.Instance.GetSubsystem <IScannerManager>();
             }
         }
     }
     return(_scannerManager);
 }
Пример #15
0
        public void Start()
        {
            _messageLoop = new WindowsMessageLoopThread();
            var smFactory = new ScannerManagerFactory();

            try
            {
                _scannerManager = smFactory.GetScannerManager(_messageLoop);
            }
            catch (Exception e)
            {
                _logger.ErrorFormat(e.ToString());
            }
            StartServer();
        }
Пример #16
0
        protected override void Initialize(WorkflowExecutionContext context)
        {
            base.Initialize(context);
            var app = CoreApplication.Instance;

            _workflowManager     = app.GetSubsystemOrThrow <IWorkflowManager>();
            _scannerManager      = app.GetSubsystemOrThrow <IScannerManager>();
            _electionManager     = app.GetSubsystemOrThrow <IElectionManager>();
            _votingResultManager = app.GetSubsystemOrThrow <IVotingResultManager>();
            _syncManager         = app.GetSubsystemOrThrow <ISynchronizationManager>();
            _soundManager        = app.GetSubsystemOrThrow <ISoundManager>();
            _keyboard            = app.GetSubsystemOrThrow <UnionKeyboard>();
            _configManager       = app.GetSubsystemOrThrow <IConfigurationManager>();
            _fileSystemManager   = app.GetSubsystemOrThrow <IFileSystemManager>();
            _printingManager     = app.GetSubsystemOrThrow <IPrintingManager>();
            _recognitionManager  = app.GetSubsystemOrThrow <IRecognitionManager>();
            _logger = _workflowManager.Logger;
        }
Пример #17
0
        protected override void OnStart(string[] args)
        {
            _logger.InfoFormat("Start service on port: {0}", _port);
            _messageLoop = new WindowsMessageLoopThread();
            var smFactory = new ScannerManagerFactory();

            try
            {
                _scannerManager = smFactory.GetScannerManager(_messageLoop);
            }
            catch (Exception e)
            {
                _logger.ErrorFormat(e.ToString());
            }
            StartServer();
            var sdf = new Thread(() => _logger.InfoFormat("Http server started"));

            sdf.Start();
        }
Пример #18
0
		public ScannerSettings Search(IScannerManager scannerManager, int searchIndex)
		{
			string sourceName;
			int? sourceId;
			try
			{
				var sourceProduct = scannerManager.GetSource(searchIndex);
				sourceName = sourceProduct.Name;
				sourceId = sourceProduct.Index;
			}
			catch (Exception)
			{
				return null;
			}

			foreach (var setting in _scannersSettings)
			{
				if (setting.Compare(sourceId.Value, sourceName))
					return setting;
			}
			return null;
		}
Пример #19
0
 public ScanCommand(ScanForm command, IScannerManager scannerManager)
 {
     _command        = command;
     _scannerManager = scannerManager;
     _log            = LogManager.GetLogger(typeof(ScanCommand));
 }
Пример #20
0
 public override void Init(SubsystemConfig config)
 {
     _config = (WorkflowManagerConfig)config;
     _syncManager = Application.GetSubsystemOrThrow<ISynchronizationManager>();
     _fileSystemManager = Application.GetSubsystemOrThrow<IFileSystemManager>();
     _scannerManager = Application.GetSubsystemOrThrow<IScannerManager>();
     StateChanged += (sender, e) => Logger.LogInfo(Message.WorkflowStateChanged, e.State);
     var keyboard = (IKeyboardManager)Application.GetSubsystemOrThrow<UnionKeyboard>();
     keyboard.KeyPressed += LogUserKeyPressed;
     LoadErrorState();
     InitWorkflow();
 }
Пример #21
0
 public override void Init(SubsystemConfig config)
 {
     _config = (RecognitionManagerConfig)config;
     _electionManager = Application.GetSubsystemOrThrow<IElectionManager>();
     _votingResultManager = Application.GetSubsystemOrThrow<IVotingResultManager>();
     _scannerManager = Application.GetSubsystemOrThrow<IScannerManager>();
     _fileSystemManager = Application.GetSubsystemOrThrow<IFileSystemManager>();
     CreateOcr();
     GenerateFilePaths();
     _recognitionResultLogger = new RecognitionResultLogger(LogFileFolder);
     RecognitionMode = RecognitionMode.BulletinRecognition;
 }
Пример #22
0
		public ScannerSettings PushCurrentSource(IScannerManager scannerManager)
		{
			var settings = scannerManager.CurrentSource.GetScannerSettings();
			_scannersSettings.Add(settings);
			return settings;
		}
Пример #23
0
 public GetImageViewModel(IScannerManager scannerManager, IScreen screen)
 {
     HostScreen      = screen;
     _scannerManager = scannerManager;
 }
Пример #24
0
		protected override void OnStart(string[] args)
		{
			_logger.InfoFormat("Start service on port: {0}", _port);
			_messageLoop = new WindowsMessageLoopThread();
			var smFactory = new ScannerManagerFactory();
			try
			{
				_scannerManager = smFactory.GetScannerManager(_messageLoop);
			}
			catch (Exception e)
			{
				_logger.ErrorFormat(e.ToString());
			}
			StartServer();
			var sdf = new Thread(() => _logger.InfoFormat("Http server started"));
			sdf.Start();
		}
Пример #25
0
		public void Start()
		{
		
			_messageLoop = new WindowsMessageLoopThread();
			var smFactory = new ScannerManagerFactory();
			try
			{
				_scannerManager = smFactory.GetScannerManager(_messageLoop);
			}
			catch (Exception e)
			{
				_logger.ErrorFormat(e.ToString());
			}
			StartServer();
		}
Пример #26
0
		public ScanCommand(ScanForm command, IScannerManager scannerManager)
		{
			_command = command;
			_scannerManager = scannerManager;
			_log = LogManager.GetLogger(typeof (ScanCommand));
		}
Пример #27
0
 public override void Init(SubsystemConfig config)
 {
     _config = (SynchronizationManagerConfig)config;
     _scannerManager = Application.GetSubsystemOrThrow<IScannerManager>();
     _fileSystemManager = Application.GetSubsystemOrThrow<IFileSystemManager>();
     _electionManager = Application.GetSubsystemOrThrow<IElectionManager>();
     _votingResultManager = Application.GetSubsystemOrThrow<IVotingResultManager>();
     _printingManager = Application.GetSubsystemOrThrow<IPrintingManager>();
     _printingManager.PrintReportStarting += (s, e) => SetPrintReportExecutingNow(true);
     _printingManager.PrintReportFinished += (s, e) => ResetPrintReportExecutingNow(true);
     InitRemoteScannerCommunication();
     InitState();
 }
Пример #28
0
 protected override void Initialize(WorkflowExecutionContext context)
 {
     base.Initialize(context);
     var app = CoreApplication.Instance;
     _workflowManager = app.GetSubsystemOrThrow<IWorkflowManager>();
     _scannerManager = app.GetSubsystemOrThrow<IScannerManager>();
     _electionManager = app.GetSubsystemOrThrow<IElectionManager>();
     _votingResultManager = app.GetSubsystemOrThrow<IVotingResultManager>();
     _syncManager = app.GetSubsystemOrThrow<ISynchronizationManager>();
     _soundManager = app.GetSubsystemOrThrow<ISoundManager>();
     _keyboard = app.GetSubsystemOrThrow<UnionKeyboard>();
     _configManager = app.GetSubsystemOrThrow<IConfigurationManager>();
     _fileSystemManager = app.GetSubsystemOrThrow<IFileSystemManager>();
     _printingManager = app.GetSubsystemOrThrow<IPrintingManager>();
     _recognitionManager = app.GetSubsystemOrThrow<IRecognitionManager>();
     _logger = _workflowManager.Logger;
 }