/// <summary>
        /// Configuration control with defined value.
        /// </summary>
        /// <param name="data">LinkScanAppsActivityData form.</param>
        private void ConfigureControls(LinkScanAppsActivityData data)
        {
            _scanOptions = data.ScanOptions;
            destination_comboBox.Text     = EnumUtil.GetDescription(data.ScanDestination);
            fileName_checkBox.Checked     = data.FileNameIsChecked;
            fileName_textBox.Text         = data.FileName;
            pageCount_numericUpDown.Value = data.PageCount;

            switch (data.ScanDestination)
            {
            case LinkScanDestination.Email:
                from_textBox.Text        = data.From;
                to_textBox.Text          = data.To;
                cc_textBox.Text          = data.Cc;
                bcc_textBox.Text         = data.Bcc;
                subject_checkBox.Checked = data.SubjectIsChecked;
                subject_textBox.Text     = data.Subject;
                message_checkBox.Checked = data.MessageIsChecked;
                message_textBox.Text     = data.Message;
                break;

            case LinkScanDestination.SMB:
            case LinkScanDestination.FTP:
                server_textBox.Text     = data.Server;
                userName_textBox.Text   = data.UserName;
                password_textBox.Text   = data.Password;
                folderPath_textBox.Text = data.FolderPath;
                port_textBox.Text       = data.DomainPort;
                break;
            }
            lockTimeoutControl.Initialize(data.LockTimeouts);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Executes this plugin's workflow using the specified <see cref="PluginExecutionData" />.
        /// </summary>
        /// <param name="executionData">The execution data.</param>
        /// <returns>A <see cref="PluginExecutionResult" /> indicating the outcome of the execution.</returns>
        public PluginExecutionResult Execute(PluginExecutionData executionData)
        {
            _data = executionData.GetMetadata <LinkScanAppsActivityData>();

            UpdateStatus("Starting activity.");

            PluginExecutionResult executionResult = new PluginExecutionResult(PluginResult.Passed);

            return(ExecuteScan(executionData));
        }
        /// <summary>
        /// Creates and returns a <see cref="PluginConfigurationData" /> instance containing the
        /// configuration data from this control.
        /// </summary>
        /// <returns>The configuration data.</returns>
        public PluginConfigurationData GetConfiguration()
        {
            _data = new LinkScanAppsActivityData()
            {
                ScanDestination   = EnumUtil.GetByDescription <LinkScanDestination>(destination_comboBox.Text),
                FileNameIsChecked = fileName_checkBox.Checked,
                FileName          = fileName_textBox.Text,
                PageCount         = (int)pageCount_numericUpDown.Value,
                LockTimeouts      = lockTimeoutControl.Value
            };
            _data.ScanOptions.PageCount = _data.PageCount;

            switch (_data.ScanDestination)
            {
            case LinkScanDestination.Email:
                _data.From             = from_textBox.Text;
                _data.To               = to_textBox.Text;
                _data.Cc               = cc_textBox.Text;
                _data.Bcc              = bcc_textBox.Text;
                _data.SubjectIsChecked = subject_checkBox.Checked;
                _data.Subject          = subject_textBox.Text;
                _data.MessageIsChecked = message_checkBox.Checked;
                _data.Message          = message_textBox.Text;
                break;

            case LinkScanDestination.SMB:
            case LinkScanDestination.FTP:
                _data.Server     = server_textBox.Text;
                _data.UserName   = userName_textBox.Text;
                _data.Password   = password_textBox.Text;
                _data.FolderPath = folderPath_textBox.Text;
                _data.DomainPort = port_textBox.Text;
                break;
            }
            _scanOptions.AppName = $"Scan to {destination_comboBox.Text}";
            _data.ScanOptions    = _scanOptions;

            return(new PluginConfigurationData(_data, "1.0")
            {
                Assets = assetSelectionControl.AssetSelectionData,
            });
        }
 /// <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)
 {
     _data = configuration.GetMetadata <LinkScanAppsActivityData>();
     ConfigureControls(_data);
     assetSelectionControl.Initialize(configuration.Assets, DeviceAttributes);
 }
 /// <summary>
 /// Initializes this configuration control to default values.
 /// </summary>
 /// <param name="environment">Information about the plugin environment.</param>
 public void Initialize(PluginEnvironment environment)
 {
     _data = new LinkScanAppsActivityData();
     ConfigureControls(_data);
     assetSelectionControl.Initialize(DeviceAttributes);
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="LinkScanAppsScanManager" /> class.
 /// </summary>
 /// <param name="executionData">The execution data.</param>
 /// <param name="scanOptions">The scan options.</param>
 /// <param name="serverName">Name of the server.</param>
 public LinkScanAppsScanManager(PluginExecutionData executionData, LinkScanOptions scanOptions, LockTimeoutData lockTimeoutData, string serverName)
     : base(executionData, scanOptions, lockTimeoutData, serverName)
 {
     _data = executionData.GetMetadata <LinkScanAppsActivityData>();
 }