/// <summary>
        /// Starts process queue
        /// </summary>
        public void StartProcess()
        {
            try
            {
                this.RaiseProcessEvent(ProcessEventTypes.INFO, $"Data transfer process started.");
                this._IsRunning = true;
                if (OriginDatasetQueue.Count() > 0)
                {
                    DataTransferModel nextProcess = OriginDatasetQueue.Dequeue();
                    switch (nextProcess.TransferMethod)
                    {
                    default:
                        break;

                    case "TRUNCATE_APPEND":
                        TruncateAppendFeatureClass(nextProcess);
                        break;

                    case "COPY":
                        CopyToSDEWorkspace(nextProcess);
                        break;
                    }
                }
            }
            catch
            {
                throw;
            }
        }
Пример #2
0
        public void SmallCtor()
        {
            CommandData commandData = new CommandData(InformationType.Receive, 1, 24, "Invalid", 17, new byte[] { 240 }, 110);

            Assert.That(commandData, Is.Not.Null);

            Assert.That(commandData.Address, Is.EqualTo("Invalid"));
            Assert.That(commandData.AddressToolTip, Is.EqualTo("Address can not identify"));
            Assert.That(commandData.ByteCount, Is.EqualTo("01"));
            Assert.That(commandData.ByteCountToolTip, Is.EqualTo("The command contains '1' data byte."));
            Assert.That(commandData.Checksum, Is.EqualTo("6E"));
            Assert.That(commandData.ChecksumToolTip, Is.EqualTo("Checksum value is '110'"));
            Assert.That(commandData.Command, Is.EqualTo("11"));
            Assert.That(commandData.CommandToolTip, Is.EqualTo("Command number is '17'"));
            Assert.That(commandData.Data, Is.EqualTo("F0"));
            Assert.That(commandData.DataToolTip, Is.EqualTo("Mark the data bytes for more informations on the status bar."));
            Assert.That(commandData.DateTime, Is.Not.Null);
            Assert.That(commandData.DateTimeToolTip.StartsWith("Time '"), Is.True);
            Assert.That(commandData.Delimiter, Is.EqualTo("18"));
            Assert.That(commandData.DelimiterToolTip, Is.EqualTo("Delimiter value is '24'"));
            Assert.That(commandData.Preamble, Is.EqualTo("FF"));
            Assert.That(commandData.PreambleToolTip, Is.EqualTo("This command has '1' preamble."));
            Assert.That(commandData.Response, Is.Null);
            Assert.That(commandData.ResponseToolTip, Is.EqualTo("No response available"));
            Assert.That(commandData.Type, Is.EqualTo("Receive"));
            Assert.That(commandData.TypeToolTip, Is.EqualTo("Informations reseived from device."));

            DataTransferModel.GetInstance().Output.Add(commandData);
        }
Пример #3
0
        public void Usage()
        {
            CommandData commandData = new CommandData(InformationType.Send, 3, 24, "F9-00-A1-B2-C3", 17, new byte[] { 240, 219, 42, 32, 58, 21, 72, 119, 192, 203 }, "05-44", 110);

            Assert.That(commandData, Is.Not.Null);

            Assert.That(commandData.Address, Is.EqualTo("F9-00-A1-B2-C3"));
            Assert.That(commandData.AddressToolTip, Is.EqualTo("Producer: 'F9', Device-Type: '00', Device Identifier: 'A1-B2-C3'"));
            Assert.That(commandData.ByteCount, Is.EqualTo("0A"));
            Assert.That(commandData.ByteCountToolTip, Is.EqualTo("The command contains '10' data bytes."));
            Assert.That(commandData.Checksum, Is.EqualTo("6E"));
            Assert.That(commandData.ChecksumToolTip, Is.EqualTo("Checksum value is '110'"));
            Assert.That(commandData.Command, Is.EqualTo("11"));
            Assert.That(commandData.CommandToolTip, Is.EqualTo("Command number is '17'"));
            Assert.That(commandData.Data, Is.EqualTo("F0-DB-2A-20-3A-15-48-77-C0-CB"));
            Assert.That(commandData.DataToolTip, Is.EqualTo("Mark the data bytes for more informations on the status bar."));
            Assert.That(commandData.DateTime, Is.Not.Null);
            Assert.That(commandData.DateTimeToolTip.StartsWith("Time '"), Is.True, commandData.DateTimeToolTip);
            Assert.That(commandData.Delimiter, Is.EqualTo("18"));
            Assert.That(commandData.DelimiterToolTip, Is.EqualTo("Delimiter value is '24'"));
            Assert.That(commandData.Preamble, Is.EqualTo("FF-FF-FF"));
            Assert.That(commandData.PreambleToolTip, Is.EqualTo("This command has '3' preambles."));
            Assert.That(commandData.Response, Is.EqualTo("05-44"));
            Assert.That(commandData.ResponseToolTip, Is.EqualTo("Value of first response byte is '5', value of secound response byte is '68'"));
            Assert.That(commandData.Type, Is.EqualTo("Send   "));
            Assert.That(commandData.TypeToolTip, Is.EqualTo("Informations send to device."));

            DataTransferModel.GetInstance().Output.Add(commandData);
        }
        /// <summary>
        /// Copies feature class or dataset to SDE Workspace
        /// </summary>
        /// <param name="dtModel">DTModel to copy</param>
        public void CopyToSDEWorkspace(DataTransferModel dtModel)
        {
            bool overrideOutput;

            if (bool.TryParse(dtModel.OverrideOutput, out overrideOutput))
            {
                CopyToSDEWorkspace(dtModel.OriginName, dtModel.OriginWorkspace, dtModel.TargetName, dtModel.TargetWorkspace, overrideOutput);
            }
        }
        /// <summary>
        /// Copies feature class or dataset to SDE Workspace
        /// </summary>
        /// <param name="dtModel">DTModel to copy</param>
        public void TruncateAppendFeatureClass(DataTransferModel dtModel)
        {
            bool overrideOutput;

            if (bool.TryParse(dtModel.OverrideOutput, out overrideOutput))
            {
                TruncateAppendFeatureClass(dtModel.OriginName, dtModel.OriginWorkspace, dtModel.TargetName, dtModel.TargetWorkspace);
            }
        }
        /// <summary>
        /// Adds a new data transfer object to the process list
        /// </summary>
        /// <param name="name">name of dt process</param>
        /// <param name="origName">name of origin dataset to be copied</param>
        /// <param name="origWorkspace">name of origin workspace</param>
        /// <param name="targetName">output target to copy</param>
        /// <param name="targetWorkspace">name of target workspace to copy to</param>
        /// <param name="transferMethod">method to use for data transfer operation</param>
        public void AddDTModel(string name, string origName, string origWorkspace, string targetName, string targetWorkspace, string transferMethod)
        {
            DataTransferModel dt = new DataTransferModel();

            dt.Name            = "";
            dt.OriginName      = origName;
            dt.OriginWorkspace = origWorkspace;
            dt.TargetName      = targetName;
            dt.TargetWorkspace = targetWorkspace;
            dt.TransferMethod  = transferMethod;
            OriginDatasetQueue.Enqueue(dt);
        }
Пример #7
0
        public void Usage()
        {
            MainViewModel mainViewModel = new MainViewModel(new Cinch.TestUIVisualizerService(), new Cinch.TestViewAwareStatusWindow(), new Cinch.TestMessageBoxService(), new RealHartCommunicationLite(), new TestVersionService(new Version(), new Version()));

            Assert.That(mainViewModel, Is.Not.Null);

            Assert.That(mainViewModel.IsConnected, Is.False);
            Assert.That(mainViewModel.DataTransferModel, Is.EqualTo(DataTransferModel.GetInstance()));
            Assert.That(mainViewModel.Filter.DisplayTime, Is.EqualTo(new Filter().DisplayTime));
            Assert.That(mainViewModel.Value, Is.EqualTo(""));
            Assert.That(mainViewModel.SelectedOutput, Is.EqualTo(""));

            Assert.That(mainViewModel.ConnectDisconnectCommand, Is.Not.Null);
            Assert.That(mainViewModel.DisplayConnectionSettingsCommand, Is.Not.Null);
            Assert.That(mainViewModel.SendCommand, Is.Not.Null);
        }
Пример #8
0
        /// <summary>
        /// Creates the date time tool tip.
        /// </summary>
        /// <returns></returns>
        private string CreateDateTimeToolTip()
        {
            DataTransferModel dataTransferModel = DataTransferModel.GetInstance();
            DateTime          time = DateTime;

            if (dataTransferModel.Output.Count > 1)
            {
                TimeSpan timeDiffToFirst = time.Subtract(dataTransferModel.Output[0].DateTime);

                if (timeDiffToFirst.Milliseconds > 0)
                {
                    return(string.Format("Time span to the first entry '{0}'", timeDiffToFirst));
                }
            }

            return(string.Format("Time '{0}'", time.ToString(TIME_PATTERN)));
        }
Пример #9
0
        public MainViewModel(IUIVisualizerService visualizerService, IViewAwareStatusWindow window, IMessageBoxService messageBoxService, IHartCommunicationLiteEx hartCommunication, IVersionService versionService)
        {
            _synchronizationContext = SynchronizationContext.Current;

            _settingsViewModel = new SettingsViewModel();
            _visualizerService = visualizerService;
            _messageBoxService = messageBoxService;
            _hartCommunication = hartCommunication;
            _versionService    = versionService;
            _versionService.GetOnlineVersionResult += (sender, onlineVersion) =>
            {
                if (onlineVersion != new Version())
                {
                    Settings.Default.LastUpdateCheck = DateTime.Now;
                }

                if (versionService.GetCurrentVersion() < onlineVersion)
                {
                    _synchronizationContext.Send(obj => _visualizerService.ShowDialog("UpdateViewModel", new UpdateViewModel(_versionService)), null);
                }
            };

            window.ViewLoaded += () =>
            {
                if (Settings.Default.ShowOnStartup)
                {
                    _visualizerService.ShowDialog("SettingsViewModel", _settingsViewModel);
                }

                CheckUpdates(_versionService);
            };
            window.ViewWindowClosed += () =>
            {
                Settings.Default.Save();
                Application.Current.Shutdown();
            };
            ReadSettings();
            DataTransferModel = DataTransferModel.GetInstance();

            InitCommands();
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="DataTransferProcess"/> class.
 /// Single parameter constructor for initializing DataTransferQueue
 /// </summary>
 /// <param name="dtModel">Target workspace to copy objects to</param>
 public DataTransferProcess(DataTransferModel dtModel)
 {
     this._ProcessName  = this.GetType().Name; // initializes process name to class name using reflection.
     OriginDatasetQueue = new Queue <DataTransferModel>();
     OriginDatasetQueue.Enqueue(dtModel);
 }
 /// <summary>
 /// Adds datasets to data transfer queue
 /// </summary>
 /// <param name="eDTModel">IEnumerable container of IDatasets</param>
 public void AddDTModel(DataTransferModel dtModels)
 {
     OriginDatasetQueue.Enqueue(dtModels);
 }
Пример #12
0
 /// <summary>
 /// 回调函数,获取页面传递的数据
 /// 根据不同的数据类型,完成不同操作
 /// </summary>
 /// <param name="data"></param>
 public void CallBack_ReceiveDataFromPage(DataTransferModel data)
 {
     this.rtBox_aishow.Text = data.Data;
 }