19 package com.basistech.df.cybertriage.autopsy.malwarescan;
23 import java.util.Optional;
31 @SuppressWarnings(
"PMD.SingularField")
34 private final CTLicensePersistence ctPersistence = CTLicensePersistence.getInstance();
36 MalwareScanIngestSettingsPanel(MalwareScanIngestSettings settings) {
38 customizeComponents(settings);
46 private void customizeComponents(MalwareScanIngestSettings settings) {
47 Optional<LicenseInfo> licenseInfoOpt = ctPersistence.loadLicenseInfo();
48 LicenseInfo licenseInfo = licenseInfoOpt.orElse(null);
49 if (licenseInfo != null) {
50 this.paidLicenseTextArea.setVisible(
false);
51 this.queryFilesCheckbox.setVisible(
true);
52 this.queryFilesCheckbox.setEnabled(
false);
53 this.uploadFilesCheckbox.setVisible(
true);
54 this.queryFilesCheckbox.setSelected(
true);
55 this.uploadFilesCheckbox.setSelected(settings.shouldUploadFiles());
57 this.paidLicenseTextArea.setVisible(
true);
58 this.queryFilesCheckbox.setVisible(
false);
59 this.uploadFilesCheckbox.setVisible(
false);
65 return new MalwareScanIngestSettings(queryFilesCheckbox.isSelected(), uploadFilesCheckbox.isSelected());
73 @SuppressWarnings(
"unchecked")
75 private
void initComponents() {
77 queryFilesCheckbox =
new javax.swing.JCheckBox();
78 uploadFilesCheckbox =
new javax.swing.JCheckBox();
79 ingestSettingsLabel =
new javax.swing.JLabel();
80 paidLicenseTextArea =
new javax.swing.JTextArea();
82 setPreferredSize(
new java.awt.Dimension(300, 155));
84 queryFilesCheckbox.setSelected(
true);
85 org.openide.awt.Mnemonics.setLocalizedText(queryFilesCheckbox,
org.openide.util.NbBundle.getMessage(MalwareScanIngestSettingsPanel.class,
"MalwareScanIngestSettingsPanel.queryFilesCheckbox.text"));
86 queryFilesCheckbox.setEnabled(
false);
88 org.openide.awt.Mnemonics.setLocalizedText(uploadFilesCheckbox,
org.openide.util.NbBundle.getMessage(MalwareScanIngestSettingsPanel.class,
"MalwareScanIngestSettingsPanel.uploadFilesCheckbox.text"));
89 uploadFilesCheckbox.setFocusable(
false);
90 uploadFilesCheckbox.setLabel(
org.openide.util.NbBundle.getMessage(MalwareScanIngestSettingsPanel.class,
"MalwareScanIngestSettingsPanel.uploadFilesCheckbox.label"));
92 ingestSettingsLabel.setFont(ingestSettingsLabel.getFont().deriveFont(ingestSettingsLabel.getFont().getStyle() | java.awt.Font.BOLD));
93 org.openide.awt.Mnemonics.setLocalizedText(ingestSettingsLabel,
org.openide.util.NbBundle.getMessage(MalwareScanIngestSettingsPanel.class,
"MalwareScanIngestSettingsPanel.ingestSettingsLabel.text"));
95 paidLicenseTextArea.setColumns(20);
96 paidLicenseTextArea.setFont(
new java.awt.Font(
"Segoe UI", 1, 12));
97 paidLicenseTextArea.setRows(5);
98 paidLicenseTextArea.setText(
org.openide.util.NbBundle.getMessage(MalwareScanIngestSettingsPanel.class,
"MalwareScanIngestSettingsPanel.paidLicenseTextArea.text"));
99 paidLicenseTextArea.setWrapStyleWord(
true);
100 paidLicenseTextArea.setBorder(null);
101 paidLicenseTextArea.setCursor(
new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
102 paidLicenseTextArea.setFocusable(
false);
103 paidLicenseTextArea.setOpaque(
false);
104 paidLicenseTextArea.setRequestFocusEnabled(
false);
106 javax.swing.GroupLayout layout =
new javax.swing.GroupLayout(
this);
107 this.setLayout(layout);
108 layout.setHorizontalGroup(
109 layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
110 .addGroup(layout.createSequentialGroup()
111 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
112 .addGroup(layout.createSequentialGroup()
114 .addComponent(ingestSettingsLabel))
115 .addGroup(layout.createSequentialGroup()
117 .addComponent(uploadFilesCheckbox))
118 .addGroup(layout.createSequentialGroup()
120 .addComponent(queryFilesCheckbox))
121 .addGroup(layout.createSequentialGroup()
123 .addComponent(paidLicenseTextArea, javax.swing.GroupLayout.PREFERRED_SIZE, 243, javax.swing.GroupLayout.PREFERRED_SIZE)))
124 .addGap(185, 185, 185))
126 layout.setVerticalGroup(
127 layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
128 .addGroup(layout.createSequentialGroup()
130 .addComponent(ingestSettingsLabel)
132 .addComponent(queryFilesCheckbox)
133 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
134 .addComponent(uploadFilesCheckbox)
136 .addComponent(paidLicenseTextArea, javax.swing.GroupLayout.PREFERRED_SIZE, 32, javax.swing.GroupLayout.PREFERRED_SIZE))
139 uploadFilesCheckbox.getAccessibleContext().setAccessibleName(
org.openide.util.NbBundle.getMessage(MalwareScanIngestSettingsPanel.class,
"MalwareScanIngestSettingsPanel.uploadFilesCheckbox.AccessibleContext.accessibleName"));
143 private javax.swing.JLabel ingestSettingsLabel;
144 private javax.swing.JTextArea paidLicenseTextArea;
145 private javax.swing.JCheckBox queryFilesCheckbox;
146 private javax.swing.JCheckBox uploadFilesCheckbox;