Exemple #1
0
        /// <summary>
        /// Navigate the location to save scan file(to select print file)
        /// <param name="filePath">Navigate to destination by FilePath</param>
        /// </summary>
        public bool NavigateToDestination(KioskPrintOptions option)
        {
            string current_string = null;
            string filename       = null;
            string path           = option.Path;

            path = path.Trim();

            while (path.Contains("/"))
            {
                current_string = path.Substring(0, path.IndexOf('/'));
                path           = path.Substring(path.IndexOf('/') + 1);
                filename       = current_string;
                LinkUI.Controller.Click(new UiSelector().TextContains(filename));
            }

            if (!string.IsNullOrEmpty(path))
            {
                filename = path;
                UpdateStatus($"Final path : {filename}");
                if (KioskPrintSource.PrinterOn.Equals(option.PrintSource))
                {
                    WaitingForUploadFile(filename);
                }
                return(LinkUI.Controller.Click(new UiSelector().TextContains(filename)));
            }

            return(false);
        }
Exemple #2
0
        /// <summary>
        /// Initializes this configuration control with the specified <see cref="PluginConfigurationData" />.
        /// </summary>
        /// <param name="configuration">The configuration data.</param>
        /// <param name="environment">Information about the plugin environment.</param>
        public void Initialize(PluginConfigurationData configuration, PluginEnvironment environment)
        {
            var data = configuration.GetMetadata <KioskActivityData>();

            ConfigureControls(data);
            _coptions = data.CopyOptions;
            _poptions = data.PrintOptions;
            _soptions = data.ScanOptions;
            lockTimeoutControl.Initialize(data.LockTimeouts);

            //JobType Enum
            if (data.JobType.Equals(KioskJobType.Copy))
            {
                copy_RadioButton.Checked  = true;
                print_RadioButton.Checked = false;
                scan_RadioButton.Checked  = false;
            }
            else if (data.JobType.Equals(KioskJobType.Print))
            {
                copy_RadioButton.Checked  = false;
                print_RadioButton.Checked = true;
                scan_RadioButton.Checked  = false;
            }
            else if (data.JobType.Equals(KioskJobType.Scan))
            {
                copy_RadioButton.Checked  = false;
                print_RadioButton.Checked = false;
                scan_RadioButton.Checked  = true;
            }

            assetSelectionControl.Initialize(configuration.Assets, DeviceAttributes);
        }
Exemple #3
0
 public KioskActivityData()
 {
     //값 초기화 부분
     LockTimeouts = new LockTimeoutData(TimeSpan.FromMinutes(5), TimeSpan.FromMinutes(10));
     CopyOptions  = new KioskCopyOptions();
     PrintOptions = new KioskPrintOptions();
     ScanOptions  = new KioskScanOptions();
 }
Exemple #4
0
        /// <summary>
        /// Navigate to select print file)
        /// <param name="option">Options for print</param>
        /// </summary>
        public void NavigatePrintFilePath(KioskPrintOptions option)
        {
            if (KioskPrintSource.USB.Equals(option.PrintSource))
            {
                if (!LinkUI.Controller.Click(new UiSelector().ResourceId($"{KioskPackageName}:id/usb_btn")))
                {
                    DeviceWorkflowException e = new DeviceWorkflowException($"Failed to select USB.");
                    e.Data.Add(_exceptionCategoryData, ConnectorExceptionCategory.NavigateFilePath.GetDescription());
                    throw e;
                }
            }

            if (!NavigateToDestination(option))
            {
                DeviceWorkflowException e = new DeviceWorkflowException($"Failed to Navigate file path.");
                e.Data.Add(_exceptionCategoryData, ConnectorExceptionCategory.NavigateFilePath.GetDescription());
                throw e;
            }
        }
Exemple #5
0
        /// <summary>
        /// Launch with print
        /// <param name="jobType">JobType</param>
        /// <param name="option">Options for print</param>
        /// </summary>
        public void Launch(KioskJobType jobType, KioskPrintOptions option)
        {
            bool result = false;

            UpdateStatus($"Launch start: {jobType.GetDescription()}");

            result = LinkUI.Controller.Click(new UiSelector().ResourceId($"{KioskPackageName}:id/homePrintButton"));

            if (result)
            {
                NavigatePrintFilePath(option);
                VerifyLaunch(jobType, new UiSelector().ResourceId($"{KioskPackageName}:id/start_tab"));
            }
            else
            {
                DeviceWorkflowException e = new DeviceWorkflowException($"Launch failed: Selecting print source is failed: {option.PrintSource.GetDescription()}");
                e.Data.Add(_exceptionCategoryData, ConnectorExceptionCategory.AppLaunch.GetDescription());
                throw e;
            }
        }
Exemple #6
0
        private void options_Button_Click(object sender, EventArgs e)
        {
            if (copy_RadioButton.Checked)
            {
                using (var preferences = new KioskCopyOptionsForm(_coptions))
                {
                    if (preferences.ShowDialog() == DialogResult.OK)
                    {
                        _coptions = preferences.KioskCopyOptions;
                    }
                }
            }
            else if (print_RadioButton.Checked)
            {
                _poptions.PrintSource = EnumUtil.GetByDescription <KioskPrintSource>(printSource_comboBox.Text);

                using (var preferences = new KioskPrintOptionsForm(_poptions))
                {
                    if (preferences.ShowDialog() == DialogResult.OK)
                    {
                        _poptions = preferences.KioskPrintOptions;
                    }
                }
            }
            else if (scan_RadioButton.Checked)
            {
                _soptions.ScanDestination = EnumUtil.GetByDescription <KioskScanDestination>(scanDestination_comboBox.Text);

                using (var preferences = new KioskScanOptionsForm(_soptions))
                {
                    if (preferences.ShowDialog() == DialogResult.OK)
                    {
                        _soptions = preferences.KioskScanOptions;
                    }
                }
            }
            else
            {
                return;
            }
        }
Exemple #7
0
 /// <summary>
 /// Start Job after SetOptions step
 /// <param name="printOptions">Options for running print job</param>
 /// </summary>
 public void ExecutionJob(KioskPrintOptions printOptions)
 {
     PrintExecution();
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="CloudConnectorPrintManager" /> class.
 /// </summary>
 /// <param name="executionData">The execution data.</param>
 /// <param name="printOptions">The scan options.</param>
 public KioskPrintManager(PluginExecutionData executionData, KioskPrintOptions printOptions, LockTimeoutData lockTimeoutData)
     : base(executionData, lockTimeoutData)
 {
     _data = executionData.GetMetadata <KioskActivityData>();
     _kioskPrintOptions = _data.PrintOptions;
 }