From 9167850b18f6869e9e41c400c113a763959aee04 Mon Sep 17 00:00:00 2001 From: Ethan Roseman Date: Tue, 9 Jun 2020 14:50:30 -0400 Subject: [PATCH 1/2] 6453 Persona justification required --- .../persona/Bundle.properties | 48 ++++---- .../persona/Bundle.properties-MERGED | 88 ++++++++++--- .../persona/Bundle_ja.properties | 12 +- ...tDialog.form => PersonaAccountDialog.form} | 75 ++++++----- ...tDialog.java => PersonaAccountDialog.java} | 116 +++++++++--------- ...iasDialog.form => PersonaAliasDialog.form} | 52 ++++---- ...iasDialog.java => PersonaAliasDialog.java} | 55 +++++---- .../persona/PersonaDetailsPanel.java | 9 +- ...Dialog.form => PersonaMetadataDialog.form} | 52 ++++---- ...Dialog.java => PersonaMetadataDialog.java} | 47 ++++--- 10 files changed, 311 insertions(+), 243 deletions(-) rename Core/src/org/sleuthkit/autopsy/centralrepository/persona/{AddAccountDialog.form => PersonaAccountDialog.form} (82%) rename Core/src/org/sleuthkit/autopsy/centralrepository/persona/{AddAccountDialog.java => PersonaAccountDialog.java} (78%) rename Core/src/org/sleuthkit/autopsy/centralrepository/persona/{AddAliasDialog.form => PersonaAliasDialog.form} (88%) rename Core/src/org/sleuthkit/autopsy/centralrepository/persona/{AddAliasDialog.java => PersonaAliasDialog.java} (85%) rename Core/src/org/sleuthkit/autopsy/centralrepository/persona/{AddMetadataDialog.form => PersonaMetadataDialog.form} (87%) rename Core/src/org/sleuthkit/autopsy/centralrepository/persona/{AddMetadataDialog.java => PersonaMetadataDialog.java} (88%) diff --git a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/Bundle.properties b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/Bundle.properties index 24fdf1c0ff..e799888c61 100644 --- a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/Bundle.properties +++ b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/Bundle.properties @@ -9,8 +9,6 @@ PersonaManagerTopComponent.resultsTable.toolTipText= PersonaManagerTopComponent.searchAccountRadio.text=Account PersonaManagerTopComponent.searchNameRadio.text=Name PersonaManagerTopComponent.searchField.text= -AddAccountDialog.cancelBtn.text=Cancel -AddAccountDialog.okBtn.text=OK PersonaManagerTopComponent.editBtn.text=Edit Persona PersonaDetailsDialog.cancelBtn.text=Cancel PersonaDetailsDialog.okBtn.text=OK @@ -31,26 +29,28 @@ PersonaDetailsPanel.nameLbl.text=Name: AddAliasDialog.accountsLbl.text=Account: AddAliasDialog.okBtn.text=OK AddAliasDialog.cancelBtn.text=Cancel -AddMetadataDialog.cancelBtn.text=Cancel -AddMetadataDialog.okBtn.text=OK -AddMetadataDialog.nameLbl.text=Name: -AddMetadataDialog.nameTextField.text= -AddMetadataDialog.valueLbl.text=Value: -AddMetadataDialog.valueTextField.text= -AddMetadataDialog.justificationLbl.text=Justification: -AddMetadataDialog.justificationTextField.text= -AddMetadataDialog.confidenceLbl.text=Confidence: -AddAliasDialog.justificationLbl.text=Justification: -AddAliasDialog.okBtn.text_1=OK -AddAliasDialog.cancelBtn.text_1=Cancel -AddAliasDialog.confidenceLbl.text=Confidence: -AddAliasDialog.justificationTextField.text= -AddAliasDialog.aliasLbl.text=Alias: -AddAliasDialog.aliasTextField.text= -AddAccountDialog.justificationTextField.text= -AddAccountDialog.justificationLbl.text=Justification: -AddAccountDialog.confidenceLbl.text=Confidence: -AddAccountDialog.typeLbl.text=Type: -AddAccountDialog.identiferLbl.text=Identifier: -AddAccountDialog.identifierTextField.text= PersonaManagerTopComponent.deleteBtn.text=Delete Persona +PersonaAccountDialog.confidenceLbl.text=Confidence: +PersonaAccountDialog.justificationTextField.text= +PersonaAccountDialog.justificationLbl.text=Justification: +PersonaAccountDialog.typeLbl.text=Type: +PersonaAccountDialog.identifierTextField.text= +PersonaAccountDialog.identiferLbl.text=Identifier: +PersonaAccountDialog.okBtn.text=OK +PersonaAccountDialog.cancelBtn.text=Cancel +PersonaAliasDialog.cancelBtn.text_1=Cancel +PersonaAliasDialog.confidenceLbl.text=Confidence: +PersonaAliasDialog.justificationTextField.text= +PersonaAliasDialog.justificationLbl.text=Justification: +PersonaAliasDialog.aliasTextField.text= +PersonaAliasDialog.aliasLbl.text=Alias: +PersonaAliasDialog.okBtn.text_1=OK +PersonaMetadataDialog.confidenceLbl.text=Confidence: +PersonaMetadataDialog.justificationTextField.text= +PersonaMetadataDialog.justificationLbl.text=Justification: +PersonaMetadataDialog.valueTextField.text= +PersonaMetadataDialog.valueLbl.text=Value: +PersonaMetadataDialog.nameTextField.text= +PersonaMetadataDialog.nameLbl.text=Name: +PersonaMetadataDialog.okBtn.text=OK +PersonaMetadataDialog.cancelBtn.text=Cancel diff --git a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/Bundle.properties-MERGED b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/Bundle.properties-MERGED index 2258c7df21..688182e360 100644 --- a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/Bundle.properties-MERGED +++ b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/Bundle.properties-MERGED @@ -1,18 +1,38 @@ -AddAccountDialog.title.text=Add Account -AddAccountDialog_get_types_exception_msg=Failed to access central repository -AddAccountDialog_get_types_exception_Title=Central Repository failure -AddAccountDialog_validate_id_failure=Account ID must not be empty -AddAccountDialog_validate_id_failure_title=Account ID issue +AddMetadataDialog.title.text=Add Metadata +AddMetadataDialog_dup_msg=A metadata entry with this name has already been added to this persona +AddMetadataDialog_dup_Title=Metadata add failure CTL_OpenPersonaManager=Persona Manager CTL_PersonaManagerTopComponentAction=Persona Manager CTL_PersonaDetailsTopComponent=Persona Details OpenPersonasAction.displayName=Persona Manager +PersonaAccountDialog.title.text=Add Account +PersonaAccountDialog_dup_msg=This account is already added to the persona +PersonaAccountDialog_dup_Title=Account add failure +PersonaAccountDialog_get_types_exception_msg=Failed to access central repository +PersonaAccountDialog_get_types_exception_Title=Central Repository failure +PersonaAccountDialog_identifier_empty_msg=The identifier field cannot be empty +PersonaAccountDialog_identifier_empty_Title=Empty identifier +PersonaAccountDialog_search_empty_msg=Account not found for given identifier and type +PersonaAccountDialog_search_empty_Title=Account not found +PersonaAccountDialog_search_failure_msg=Central Repository account search failed +PersonaAccountDialog_search_failure_Title=Account add failure +PersonaAliasDialog.title.text=Add Alias +PersonaAliasDialog_dup_msg=This alias has already been added to this persona +PersonaAliasDialog_dup_Title=Alias add failure +PersonaDetailsDialogCreateTitle=Create Persona +PersonaDetailsDialogEditTitle=Edit Persona +PersonaDetailsDialogViewTitle=View Persona +PersonaDetailsPanel_CentralRepoErr_msg=Failure to write to Central Repository +PersonaDetailsPanel_CentralRepoErr_Title=Central Repository failure +PersonaDetailsPanel_empty_justification_msg=The justification field cannot be empty +PersonaDetailsPanel_empty_justification_Title=Empty justification +PersonaDetailsPanel_EmptyName_msg=Persona name cannot be empty +PersonaDetailsPanel_EmptyName_Title=Empty persona name PersonaDetailsPanel_load_exception_msg=Failed to load persona PersonaDetailsPanel_load_exception_Title=Initialization failure -PersonaDetailsPanel_NameCreate=Create Persona -PersonaDetailsPanel_NameEdit=Edit Persona -PersonaDetailsPanel_NameView=View Persona -PersonaManagerTopComponent.createBtn.text=Create New +PersonaDetailsPanel_NotEnoughAccounts_msg=A persona needs at least one account +PersonaDetailsPanel_NotEnoughAccounts_Title=Missing account +PersonaManagerTopComponent.createBtn.text=New Persona PersonaManagerTopComponent.searchBtn.text=Search PersonaManagerTopComponent.resultsTable.columnModel.title1=Name PersonaManagerTopComponent.resultsTable.columnModel.title0=ID @@ -20,6 +40,15 @@ PersonaManagerTopComponent.resultsTable.toolTipText= PersonaManagerTopComponent.searchAccountRadio.text=Account PersonaManagerTopComponent.searchNameRadio.text=Name PersonaManagerTopComponent.searchField.text= +PersonaManagerTopComponent.editBtn.text=Edit Persona +PersonaDetailsDialog.cancelBtn.text=Cancel +PersonaDetailsDialog.okBtn.text=OK +PersonaDetailsPanel.deleteCaseBtn.text=Delete +PersonaDetailsPanel.addCaseBtn.text=Add +PersonaDetailsPanel.casesLbl.text=Cases found in: +PersonaDetailsPanel.deleteAliasBtn.text=Delete +PersonaDetailsPanel.addAliasBtn.text=Add +PersonaDetailsPanel.aliasesLabel.text=Aliases: PersonaDetailsPanel.deleteMetadataBtn.text=Delete PersonaDetailsPanel.addMetadataBtn.text=Add PersonaDetailsPanel.metadataLabel.text=Metadata: @@ -27,18 +56,37 @@ PersonaDetailsPanel.deleteAccountBtn.text=Delete PersonaDetailsPanel.addAccountBtn.text=Add PersonaDetailsPanel.accountsLbl.text=Accounts: PersonaDetailsPanel.nameField.text= -PersonaDetailsPanel.saveBtn.toolTipText= -PersonaDetailsPanel.saveBtn.text=Save Changes PersonaDetailsPanel.nameLbl.text=Name: -PersonaDetailsPanel.deleteCaseBtn.text=Delete -PersonaDetailsPanel.addCaseBtn.text=Add -PersonaDetailsPanel.casesLbl.text=Cases found in: -PersonaDetailsPanel.deleteAliasBtn.text=Delete -PersonaDetailsPanel.addAliasBtn.text=Add -PersonaDetailsPanel.aliasesLabel.text=Aliases: -AddAccountDialog.cancelBtn.text=Cancel -AddAccountDialog.okBtn.text=OK -PersonaManagerTopComponent.editBtn.text=Edit +AddAliasDialog.accountsLbl.text=Account: +AddAliasDialog.okBtn.text=OK +AddAliasDialog.cancelBtn.text=Cancel +PersonaManagerTopComponent.deleteBtn.text=Delete Persona +PersonaAccountDialog.confidenceLbl.text=Confidence: +PersonaAccountDialog.justificationTextField.text= +PersonaAccountDialog.justificationLbl.text=Justification: +PersonaAccountDialog.typeLbl.text=Type: +PersonaAccountDialog.identifierTextField.text= +PersonaAccountDialog.identiferLbl.text=Identifier: +PersonaAccountDialog.okBtn.text=OK +PersonaAccountDialog.cancelBtn.text=Cancel +PersonaAliasDialog.cancelBtn.text_1=Cancel +PersonaAliasDialog.confidenceLbl.text=Confidence: +PersonaAliasDialog.justificationTextField.text= +PersonaAliasDialog.justificationLbl.text=Justification: +PersonaAliasDialog.aliasTextField.text= +PersonaAliasDialog.aliasLbl.text=Alias: +PersonaAliasDialog.okBtn.text_1=OK +PersonaMetadataDialog.confidenceLbl.text=Confidence: +PersonaMetadataDialog.justificationTextField.text= +PersonaMetadataDialog.justificationLbl.text=Justification: +PersonaMetadataDialog.valueTextField.text= +PersonaMetadataDialog.valueLbl.text=Value: +PersonaMetadataDialog.nameTextField.text= +PersonaMetadataDialog.nameLbl.text=Name: +PersonaMetadataDialog.okBtn.text=OK +PersonaMetadataDialog.cancelBtn.text=Cancel +PMTopComponent_delete_exception_msg=Failed to delete persona +PMTopComponent_delete_exception_Title=Delete failure PMTopComponent_Name=Persona Manager PMTopComponent_search_exception_msg=Failed to search personas PMTopComponent_search_exception_Title=Search failure diff --git a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/Bundle_ja.properties b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/Bundle_ja.properties index 224ac7c947..f757a8f7ef 100644 --- a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/Bundle_ja.properties +++ b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/Bundle_ja.properties @@ -1,10 +1,10 @@ -AddAccountDialog.cancelBtn.text=\u53d6\u308a\u6d88\u3057 -AddAccountDialog.okBtn.text=OK PersonaDetailsDialog.okBtn.text=OK PersonaDetailsDialog.cancelBtn.text=\u53d6\u308a\u6d88\u3057 AddAliasDialog.cancelBtn.text=\u53d6\u308a\u6d88\u3057 AddAliasDialog.okBtn.text=OK -AddMetadataDialog.okBtn.text=OK -AddMetadataDialog.cancelBtn.text=\u53d6\u308a\u6d88\u3057 -AddAliasDialog.cancelBtn.text_1=\u53d6\u308a\u6d88\u3057 -AddAliasDialog.okBtn.text_1=OK +PersonaAccountDialog.okBtn.text=OK +PersonaAccountDialog.cancelBtn.text=\u53d6\u308a\u6d88\u3057 +PersonaAliasDialog.cancelBtn.text_1=\u53d6\u308a\u6d88\u3057 +PersonaAliasDialog.okBtn.text_1=OK +PersonaMetadataDialog.okBtn.text=OK +PersonaMetadataDialog.cancelBtn.text=\u53d6\u308a\u6d88\u3057 diff --git a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddAccountDialog.form b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaAccountDialog.form similarity index 82% rename from Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddAccountDialog.form rename to Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaAccountDialog.form index c9cf66a7cb..05ad150c41 100644 --- a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddAccountDialog.form +++ b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaAccountDialog.form @@ -25,24 +25,21 @@ - - - - - - - - - + + + + + + - + @@ -81,12 +78,12 @@ - + - + @@ -101,21 +98,21 @@ - + - - - - - - + + + + + + @@ -125,14 +122,14 @@ - + - + @@ -142,7 +139,7 @@ - + @@ -156,24 +153,10 @@ - - - - - - - - - - - - - - - + @@ -187,12 +170,26 @@ + + + + + + + + + + + + + + - + @@ -211,7 +208,7 @@ - + diff --git a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddAccountDialog.java b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaAccountDialog.java similarity index 78% rename from Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddAccountDialog.java rename to Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaAccountDialog.java index ffee3a3c22..c897f32ee9 100644 --- a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddAccountDialog.java +++ b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaAccountDialog.java @@ -41,9 +41,9 @@ import org.sleuthkit.autopsy.coreutils.Logger; * Configuration dialog for adding an account to a persona. */ @SuppressWarnings("PMD.SingularField") // UI widgets cause lots of false positives -public class AddAccountDialog extends JDialog { +public class PersonaAccountDialog extends JDialog { - private static final Logger logger = Logger.getLogger(AddAccountDialog.class.getName()); + private static final Logger logger = Logger.getLogger(PersonaAccountDialog.class.getName()); private static final long serialVersionUID = 1L; @@ -53,10 +53,10 @@ public class AddAccountDialog extends JDialog { /** * Creates new add account dialog */ - @Messages({"AddAccountDialog.title.text=Add Account",}) - public AddAccountDialog(PersonaDetailsPanel pdp) { + @Messages({"PersonaAccountDialog.title.text=Add Account",}) + public PersonaAccountDialog(PersonaDetailsPanel pdp) { super((JFrame) WindowManager.getDefault().getMainWindow(), - Bundle.AddAccountDialog_title_text(), + Bundle.PersonaAccountDialog_title_text(), true); this.pdp = pdp; @@ -82,8 +82,8 @@ public class AddAccountDialog extends JDialog { } @Messages({ - "AddAccountDialog_get_types_exception_Title=Central Repository failure", - "AddAccountDialog_get_types_exception_msg=Failed to access central repository", + "PersonaAccountDialog_get_types_exception_Title=Central Repository failure", + "PersonaAccountDialog_get_types_exception_msg=Failed to access central repository", }) private CentralRepoAccountType[] getAllAccountTypes() { Collection allAccountTypes; @@ -92,8 +92,8 @@ public class AddAccountDialog extends JDialog { } catch (CentralRepoException e) { logger.log(Level.SEVERE, "Failed to access central repository", e); JOptionPane.showMessageDialog(this, - Bundle.AddAccountDialog_get_types_exception_Title(), - Bundle.AddAccountDialog_get_types_exception_msg(), + Bundle.PersonaAccountDialog_get_types_exception_Title(), + Bundle.PersonaAccountDialog_get_types_exception_msg(), JOptionPane.ERROR_MESSAGE); return new CentralRepoAccountType[0]; } @@ -114,10 +114,10 @@ public class AddAccountDialog extends JDialog { identifierTextField = new javax.swing.JTextField(); typeLbl = new javax.swing.JLabel(); typeComboBox = new javax.swing.JComboBox<>(); - justificationLbl = new javax.swing.JLabel(); - justificationTextField = new javax.swing.JTextField(); confidenceLbl = new javax.swing.JLabel(); confidenceComboBox = new javax.swing.JComboBox<>(); + justificationLbl = new javax.swing.JLabel(); + justificationTextField = new javax.swing.JTextField(); cancelBtn = new javax.swing.JButton(); okBtn = new javax.swing.JButton(); @@ -126,27 +126,27 @@ public class AddAccountDialog extends JDialog { settingsPanel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); - org.openide.awt.Mnemonics.setLocalizedText(identiferLbl, org.openide.util.NbBundle.getMessage(AddAccountDialog.class, "AddAccountDialog.identiferLbl.text")); // NOI18N + org.openide.awt.Mnemonics.setLocalizedText(identiferLbl, org.openide.util.NbBundle.getMessage(PersonaAccountDialog.class, "PersonaAccountDialog.identiferLbl.text")); // NOI18N - identifierTextField.setText(org.openide.util.NbBundle.getMessage(AddAccountDialog.class, "AddAccountDialog.identifierTextField.text")); // NOI18N + identifierTextField.setText(org.openide.util.NbBundle.getMessage(PersonaAccountDialog.class, "PersonaAccountDialog.identifierTextField.text")); // NOI18N identifierTextField.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { identifierTextFieldActionPerformed(evt); } }); - org.openide.awt.Mnemonics.setLocalizedText(typeLbl, org.openide.util.NbBundle.getMessage(AddAccountDialog.class, "AddAccountDialog.typeLbl.text")); // NOI18N + org.openide.awt.Mnemonics.setLocalizedText(typeLbl, org.openide.util.NbBundle.getMessage(PersonaAccountDialog.class, "PersonaAccountDialog.typeLbl.text")); // NOI18N typeComboBox.setModel(new javax.swing.DefaultComboBoxModel<>(getAllAccountTypes())); - org.openide.awt.Mnemonics.setLocalizedText(justificationLbl, org.openide.util.NbBundle.getMessage(AddAccountDialog.class, "AddAccountDialog.justificationLbl.text")); // NOI18N - - justificationTextField.setText(org.openide.util.NbBundle.getMessage(AddAccountDialog.class, "AddAccountDialog.justificationTextField.text")); // NOI18N - - org.openide.awt.Mnemonics.setLocalizedText(confidenceLbl, org.openide.util.NbBundle.getMessage(AddAccountDialog.class, "AddAccountDialog.confidenceLbl.text")); // NOI18N + org.openide.awt.Mnemonics.setLocalizedText(confidenceLbl, org.openide.util.NbBundle.getMessage(PersonaAccountDialog.class, "PersonaAccountDialog.confidenceLbl.text")); // NOI18N confidenceComboBox.setModel(new javax.swing.DefaultComboBoxModel<>(org.sleuthkit.autopsy.centralrepository.datamodel.Persona.Confidence.values())); + org.openide.awt.Mnemonics.setLocalizedText(justificationLbl, org.openide.util.NbBundle.getMessage(PersonaAccountDialog.class, "PersonaAccountDialog.justificationLbl.text")); // NOI18N + + justificationTextField.setText(org.openide.util.NbBundle.getMessage(PersonaAccountDialog.class, "PersonaAccountDialog.justificationTextField.text")); // NOI18N + javax.swing.GroupLayout settingsPanelLayout = new javax.swing.GroupLayout(settingsPanel); settingsPanel.setLayout(settingsPanelLayout); settingsPanelLayout.setHorizontalGroup( @@ -165,11 +165,11 @@ public class AddAccountDialog extends JDialog { .addGroup(settingsPanelLayout.createSequentialGroup() .addComponent(confidenceLbl) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(confidenceComboBox, 0, 269, Short.MAX_VALUE)) + .addComponent(confidenceComboBox, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addGroup(settingsPanelLayout.createSequentialGroup() .addComponent(justificationLbl) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(justificationTextField, javax.swing.GroupLayout.DEFAULT_SIZE, 264, Short.MAX_VALUE))) + .addComponent(justificationTextField))) .addContainerGap()) ); settingsPanelLayout.setVerticalGroup( @@ -179,22 +179,22 @@ public class AddAccountDialog extends JDialog { .addGroup(settingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(identiferLbl) .addComponent(identifierTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(settingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(typeComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(typeLbl, javax.swing.GroupLayout.PREFERRED_SIZE, 9, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addGroup(settingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(justificationLbl) - .addComponent(justificationTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(settingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(confidenceLbl) .addComponent(confidenceComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(settingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(justificationLbl) + .addComponent(justificationTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); - org.openide.awt.Mnemonics.setLocalizedText(cancelBtn, org.openide.util.NbBundle.getMessage(AddAccountDialog.class, "AddAccountDialog.cancelBtn.text")); // NOI18N + org.openide.awt.Mnemonics.setLocalizedText(cancelBtn, org.openide.util.NbBundle.getMessage(PersonaAccountDialog.class, "PersonaAccountDialog.cancelBtn.text")); // NOI18N cancelBtn.setMaximumSize(new java.awt.Dimension(79, 23)); cancelBtn.setMinimumSize(new java.awt.Dimension(79, 23)); cancelBtn.setPreferredSize(new java.awt.Dimension(79, 23)); @@ -204,7 +204,7 @@ public class AddAccountDialog extends JDialog { } }); - org.openide.awt.Mnemonics.setLocalizedText(okBtn, org.openide.util.NbBundle.getMessage(AddAccountDialog.class, "AddAccountDialog.okBtn.text")); // NOI18N + org.openide.awt.Mnemonics.setLocalizedText(okBtn, org.openide.util.NbBundle.getMessage(PersonaAccountDialog.class, "PersonaAccountDialog.okBtn.text")); // NOI18N okBtn.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { okBtnActionPerformed(evt); @@ -216,14 +216,12 @@ public class AddAccountDialog extends JDialog { layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(settingsPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addGroup(layout.createSequentialGroup() - .addContainerGap(202, Short.MAX_VALUE) - .addComponent(okBtn) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(cancelBtn, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))) + .addContainerGap(194, Short.MAX_VALUE) + .addComponent(okBtn) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(cancelBtn, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap()) + .addComponent(settingsPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) ); layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {cancelBtn, okBtn}); @@ -231,8 +229,9 @@ public class AddAccountDialog extends JDialog { layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() + .addContainerGap() .addComponent(settingsPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(okBtn, javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(cancelBtn, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) @@ -248,19 +247,26 @@ public class AddAccountDialog extends JDialog { } @Messages({ - "AddAccountDialog_dup_Title=Account add failure", - "AddAccountDialog_dup_msg=This account is already added to the persona", - "AddAccountDialog_empty_Title=Empty identifier", - "AddAccountDialog_empty_msg=The identifier field cannot be empty", - "AddAccountDialog_search_failure_Title=Account add failure", - "AddAccountDialog_search_failure_msg=Central Repository account search failed", - "AddAccountDialog_search_empty_Title=Account not found", - "AddAccountDialog_search_empty_msg=Account not found for given identifier and type",}) + "PersonaAccountDialog_dup_Title=Account add failure", + "PersonaAccountDialog_dup_msg=This account is already added to the persona", + "PersonaAccountDialog_identifier_empty_Title=Empty identifier", + "PersonaAccountDialog_identifier_empty_msg=The identifier field cannot be empty", + "PersonaAccountDialog_search_failure_Title=Account add failure", + "PersonaAccountDialog_search_failure_msg=Central Repository account search failed", + "PersonaAccountDialog_search_empty_Title=Account not found", + "PersonaAccountDialog_search_empty_msg=Account not found for given identifier and type",}) private void okBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_okBtnActionPerformed if (identifierTextField.getText().isEmpty()) { JOptionPane.showMessageDialog(this, - Bundle.AddAccountDialog_empty_msg(), - Bundle.AddAccountDialog_empty_Title(), + Bundle.PersonaAccountDialog_identifier_empty_msg(), + Bundle.PersonaAccountDialog_identifier_empty_Title(), + JOptionPane.ERROR_MESSAGE); + return; + } + if (justificationTextField.getText().isEmpty()) { + JOptionPane.showMessageDialog(this, + Bundle.PersonaDetailsPanel_empty_justification_msg(), + Bundle.PersonaDetailsPanel_empty_justification_Title(), JOptionPane.ERROR_MESSAGE); return; } @@ -270,15 +276,15 @@ public class AddAccountDialog extends JDialog { } catch (CentralRepoException e) { logger.log(Level.SEVERE, "Failed to access central repository", e); JOptionPane.showMessageDialog(this, - Bundle.AddAccountDialog_search_failure_msg(), - Bundle.AddAccountDialog_search_failure_Title(), + Bundle.PersonaAccountDialog_search_failure_msg(), + Bundle.PersonaAccountDialog_search_failure_Title(), JOptionPane.ERROR_MESSAGE); return; } if (candidates.isEmpty()) { JOptionPane.showMessageDialog(this, - Bundle.AddAccountDialog_search_empty_msg(), - Bundle.AddAccountDialog_search_empty_Title(), + Bundle.PersonaAccountDialog_search_empty_msg(), + Bundle.PersonaAccountDialog_search_empty_Title(), JOptionPane.ERROR_MESSAGE); return; } @@ -292,8 +298,8 @@ public class AddAccountDialog extends JDialog { } if (result == null) { JOptionPane.showMessageDialog(this, - Bundle.AddAccountDialog_search_empty_msg(), - Bundle.AddAccountDialog_search_empty_Title(), + Bundle.PersonaAccountDialog_search_empty_msg(), + Bundle.PersonaAccountDialog_search_empty_Title(), JOptionPane.ERROR_MESSAGE); return; } @@ -305,8 +311,8 @@ public class AddAccountDialog extends JDialog { dispose(); } else { JOptionPane.showMessageDialog(this, - Bundle.AddAccountDialog_dup_msg(), - Bundle.AddAccountDialog_dup_Title(), + Bundle.PersonaAccountDialog_dup_msg(), + Bundle.PersonaAccountDialog_dup_Title(), JOptionPane.ERROR_MESSAGE); } }//GEN-LAST:event_okBtnActionPerformed diff --git a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddAliasDialog.form b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaAliasDialog.form similarity index 88% rename from Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddAliasDialog.form rename to Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaAliasDialog.form index 510a5a116f..37b76a6375 100644 --- a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddAliasDialog.form +++ b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaAliasDialog.form @@ -38,7 +38,7 @@ - + @@ -92,17 +92,17 @@ - - - - - - + + + + + + @@ -111,35 +111,21 @@ - + - - - - - - - - - - - - - - - + - + @@ -153,12 +139,26 @@ + + + + + + + + + + + + + + - + @@ -177,7 +177,7 @@ - + diff --git a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddAliasDialog.java b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaAliasDialog.java similarity index 85% rename from Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddAliasDialog.java rename to Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaAliasDialog.java index 632b5b785c..2ff8d38f52 100644 --- a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddAliasDialog.java +++ b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaAliasDialog.java @@ -29,7 +29,7 @@ import org.sleuthkit.autopsy.centralrepository.datamodel.Persona; * Configuration dialog for adding aliases to a persona. */ @SuppressWarnings("PMD.SingularField") // UI widgets cause lots of false positives -public class AddAliasDialog extends JDialog { +public class PersonaAliasDialog extends JDialog { private static final long serialVersionUID = 1L; @@ -38,10 +38,10 @@ public class AddAliasDialog extends JDialog { /** * Creates new add alias dialog */ - @Messages({"AddAliasDialog.title.text=Add Alias",}) - public AddAliasDialog(PersonaDetailsPanel pdp) { + @Messages({"PersonaAliasDialog.title.text=Add Alias",}) + public PersonaAliasDialog(PersonaDetailsPanel pdp) { super((JFrame) WindowManager.getDefault().getMainWindow(), - Bundle.AddAliasDialog_title_text(), + Bundle.PersonaAliasDialog_title_text(), true); this.pdp = pdp; @@ -61,10 +61,10 @@ public class AddAliasDialog extends JDialog { settingsPanel = new javax.swing.JPanel(); aliasLbl = new javax.swing.JLabel(); aliasTextField = new javax.swing.JTextField(); - justificationLbl = new javax.swing.JLabel(); - justificationTextField = new javax.swing.JTextField(); confidenceLbl = new javax.swing.JLabel(); confidenceComboBox = new javax.swing.JComboBox<>(); + justificationLbl = new javax.swing.JLabel(); + justificationTextField = new javax.swing.JTextField(); cancelBtn = new javax.swing.JButton(); okBtn = new javax.swing.JButton(); @@ -73,18 +73,18 @@ public class AddAliasDialog extends JDialog { settingsPanel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); - org.openide.awt.Mnemonics.setLocalizedText(aliasLbl, org.openide.util.NbBundle.getMessage(AddAliasDialog.class, "AddAliasDialog.aliasLbl.text")); // NOI18N + org.openide.awt.Mnemonics.setLocalizedText(aliasLbl, org.openide.util.NbBundle.getMessage(PersonaAliasDialog.class, "PersonaAliasDialog.aliasLbl.text")); // NOI18N - aliasTextField.setText(org.openide.util.NbBundle.getMessage(AddAliasDialog.class, "AddAliasDialog.aliasTextField.text")); // NOI18N + aliasTextField.setText(org.openide.util.NbBundle.getMessage(PersonaAliasDialog.class, "PersonaAliasDialog.aliasTextField.text")); // NOI18N - org.openide.awt.Mnemonics.setLocalizedText(justificationLbl, org.openide.util.NbBundle.getMessage(AddAliasDialog.class, "AddAliasDialog.justificationLbl.text")); // NOI18N - - justificationTextField.setText(org.openide.util.NbBundle.getMessage(AddAliasDialog.class, "AddAliasDialog.justificationTextField.text")); // NOI18N - - org.openide.awt.Mnemonics.setLocalizedText(confidenceLbl, org.openide.util.NbBundle.getMessage(AddAliasDialog.class, "AddAliasDialog.confidenceLbl.text")); // NOI18N + org.openide.awt.Mnemonics.setLocalizedText(confidenceLbl, org.openide.util.NbBundle.getMessage(PersonaAliasDialog.class, "PersonaAliasDialog.confidenceLbl.text")); // NOI18N confidenceComboBox.setModel(new javax.swing.DefaultComboBoxModel<>(org.sleuthkit.autopsy.centralrepository.datamodel.Persona.Confidence.values())); + org.openide.awt.Mnemonics.setLocalizedText(justificationLbl, org.openide.util.NbBundle.getMessage(PersonaAliasDialog.class, "PersonaAliasDialog.justificationLbl.text")); // NOI18N + + justificationTextField.setText(org.openide.util.NbBundle.getMessage(PersonaAliasDialog.class, "PersonaAliasDialog.justificationTextField.text")); // NOI18N + javax.swing.GroupLayout settingsPanelLayout = new javax.swing.GroupLayout(settingsPanel); settingsPanel.setLayout(settingsPanelLayout); settingsPanelLayout.setHorizontalGroup( @@ -114,17 +114,17 @@ public class AddAliasDialog extends JDialog { .addComponent(aliasLbl) .addComponent(aliasTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(settingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(justificationTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(justificationLbl)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGroup(settingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(confidenceComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(confidenceLbl)) - .addContainerGap()) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(settingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(justificationTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(justificationLbl)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); - org.openide.awt.Mnemonics.setLocalizedText(cancelBtn, org.openide.util.NbBundle.getMessage(AddAliasDialog.class, "AddAliasDialog.cancelBtn.text_1")); // NOI18N + org.openide.awt.Mnemonics.setLocalizedText(cancelBtn, org.openide.util.NbBundle.getMessage(PersonaAliasDialog.class, "PersonaAliasDialog.cancelBtn.text_1")); // NOI18N cancelBtn.setMaximumSize(new java.awt.Dimension(79, 23)); cancelBtn.setMinimumSize(new java.awt.Dimension(79, 23)); cancelBtn.setPreferredSize(new java.awt.Dimension(79, 23)); @@ -134,7 +134,7 @@ public class AddAliasDialog extends JDialog { } }); - org.openide.awt.Mnemonics.setLocalizedText(okBtn, org.openide.util.NbBundle.getMessage(AddAliasDialog.class, "AddAliasDialog.okBtn.text_1")); // NOI18N + org.openide.awt.Mnemonics.setLocalizedText(okBtn, org.openide.util.NbBundle.getMessage(PersonaAliasDialog.class, "PersonaAliasDialog.okBtn.text_1")); // NOI18N okBtn.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { okBtnActionPerformed(evt); @@ -176,9 +176,16 @@ public class AddAliasDialog extends JDialog { } @Messages({ - "AddAliasDialog_dup_Title=Alias add failure", - "AddAliasDialog_dup_msg=This alias has already been added to this persona",}) + "PersonaAliasDialog_dup_Title=Alias add failure", + "PersonaAliasDialog_dup_msg=This alias has already been added to this persona",}) private void okBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_okBtnActionPerformed + if (justificationTextField.getText().isEmpty()) { + JOptionPane.showMessageDialog(this, + Bundle.PersonaDetailsPanel_empty_justification_msg(), + Bundle.PersonaDetailsPanel_empty_justification_Title(), + JOptionPane.ERROR_MESSAGE); + return; + } if (pdp.addAlias( aliasTextField.getText(), justificationTextField.getText(), @@ -186,8 +193,8 @@ public class AddAliasDialog extends JDialog { dispose(); } else { JOptionPane.showMessageDialog(this, - Bundle.AddAliasDialog_dup_msg(), - Bundle.AddAliasDialog_dup_Title(), + Bundle.PersonaAliasDialog_dup_msg(), + Bundle.PersonaAliasDialog_dup_Title(), JOptionPane.ERROR_MESSAGE); } }//GEN-LAST:event_okBtnActionPerformed diff --git a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaDetailsPanel.java b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaDetailsPanel.java index a7c76b7ad4..317cadc272 100644 --- a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaDetailsPanel.java +++ b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaDetailsPanel.java @@ -76,13 +76,16 @@ public final class PersonaDetailsPanel extends javax.swing.JPanel { private PersonaDetailsTableModel aliasesModel; private PersonaDetailsTableModel casesModel; + @Messages({ + "PersonaDetailsPanel_empty_justification_Title=Empty justification", + "PersonaDetailsPanel_empty_justification_msg=The justification field cannot be empty",}) public PersonaDetailsPanel() { initComponents(); clear(); // Accounts addAccountBtn.addActionListener((ActionEvent e) -> { - new AddAccountDialog(this); + new PersonaAccountDialog(this); }); deleteAccountBtn.addActionListener((ActionEvent e) -> { int selectedRow = accountsTable.getSelectedRow(); @@ -104,7 +107,7 @@ public final class PersonaDetailsPanel extends javax.swing.JPanel { // Metadata addMetadataBtn.addActionListener((ActionEvent e) -> { - new AddMetadataDialog(this); + new PersonaMetadataDialog(this); }); deleteMetadataBtn.addActionListener((ActionEvent e) -> { int selectedRow = metadataTable.getSelectedRow(); @@ -126,7 +129,7 @@ public final class PersonaDetailsPanel extends javax.swing.JPanel { // Aliases addAliasBtn.addActionListener((ActionEvent e) -> { - new AddAliasDialog(this); + new PersonaAliasDialog(this); }); deleteAliasBtn.addActionListener((ActionEvent e) -> { int selectedRow = aliasesTable.getSelectedRow(); diff --git a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddMetadataDialog.form b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaMetadataDialog.form similarity index 87% rename from Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddMetadataDialog.form rename to Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaMetadataDialog.form index b856f6a516..e2b06c0318 100644 --- a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddMetadataDialog.form +++ b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaMetadataDialog.form @@ -103,16 +103,16 @@ - - - - - + + + + + @@ -121,49 +121,35 @@ - + - + - + - - - - - - - - - - - - - - - + - + @@ -177,12 +163,26 @@ + + + + + + + + + + + + + + - + @@ -201,7 +201,7 @@ - + diff --git a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddMetadataDialog.java b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaMetadataDialog.java similarity index 88% rename from Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddMetadataDialog.java rename to Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaMetadataDialog.java index c09c0ee5c5..77495b3641 100644 --- a/Core/src/org/sleuthkit/autopsy/centralrepository/persona/AddMetadataDialog.java +++ b/Core/src/org/sleuthkit/autopsy/centralrepository/persona/PersonaMetadataDialog.java @@ -29,7 +29,7 @@ import org.sleuthkit.autopsy.centralrepository.datamodel.Persona; * Configuration dialog for adding metadata to a persona. */ @SuppressWarnings("PMD.SingularField") // UI widgets cause lots of false positives -public class AddMetadataDialog extends JDialog { +public class PersonaMetadataDialog extends JDialog { private static final long serialVersionUID = 1L; @@ -39,7 +39,7 @@ public class AddMetadataDialog extends JDialog { * Creates new add metadata dialog */ @Messages({"AddMetadataDialog.title.text=Add Metadata",}) - public AddMetadataDialog(PersonaDetailsPanel pdp) { + public PersonaMetadataDialog(PersonaDetailsPanel pdp) { super((JFrame) WindowManager.getDefault().getMainWindow(), Bundle.AddMetadataDialog_title_text(), true); @@ -63,10 +63,10 @@ public class AddMetadataDialog extends JDialog { nameTextField = new javax.swing.JTextField(); valueLbl = new javax.swing.JLabel(); valueTextField = new javax.swing.JTextField(); - justificationLbl = new javax.swing.JLabel(); - justificationTextField = new javax.swing.JTextField(); confidenceLbl = new javax.swing.JLabel(); confidenceComboBox = new javax.swing.JComboBox<>(); + justificationLbl = new javax.swing.JLabel(); + justificationTextField = new javax.swing.JTextField(); cancelBtn = new javax.swing.JButton(); okBtn = new javax.swing.JButton(); @@ -75,22 +75,22 @@ public class AddMetadataDialog extends JDialog { settingsPanel.setBorder(javax.swing.BorderFactory.createEtchedBorder()); - org.openide.awt.Mnemonics.setLocalizedText(nameLbl, org.openide.util.NbBundle.getMessage(AddMetadataDialog.class, "AddMetadataDialog.nameLbl.text")); // NOI18N + org.openide.awt.Mnemonics.setLocalizedText(nameLbl, org.openide.util.NbBundle.getMessage(PersonaMetadataDialog.class, "PersonaMetadataDialog.nameLbl.text")); // NOI18N - nameTextField.setText(org.openide.util.NbBundle.getMessage(AddMetadataDialog.class, "AddMetadataDialog.nameTextField.text")); // NOI18N + nameTextField.setText(org.openide.util.NbBundle.getMessage(PersonaMetadataDialog.class, "PersonaMetadataDialog.nameTextField.text")); // NOI18N - org.openide.awt.Mnemonics.setLocalizedText(valueLbl, org.openide.util.NbBundle.getMessage(AddMetadataDialog.class, "AddMetadataDialog.valueLbl.text")); // NOI18N + org.openide.awt.Mnemonics.setLocalizedText(valueLbl, org.openide.util.NbBundle.getMessage(PersonaMetadataDialog.class, "PersonaMetadataDialog.valueLbl.text")); // NOI18N - valueTextField.setText(org.openide.util.NbBundle.getMessage(AddMetadataDialog.class, "AddMetadataDialog.valueTextField.text")); // NOI18N + valueTextField.setText(org.openide.util.NbBundle.getMessage(PersonaMetadataDialog.class, "PersonaMetadataDialog.valueTextField.text")); // NOI18N - org.openide.awt.Mnemonics.setLocalizedText(justificationLbl, org.openide.util.NbBundle.getMessage(AddMetadataDialog.class, "AddMetadataDialog.justificationLbl.text")); // NOI18N - - justificationTextField.setText(org.openide.util.NbBundle.getMessage(AddMetadataDialog.class, "AddMetadataDialog.justificationTextField.text")); // NOI18N - - org.openide.awt.Mnemonics.setLocalizedText(confidenceLbl, org.openide.util.NbBundle.getMessage(AddMetadataDialog.class, "AddMetadataDialog.confidenceLbl.text")); // NOI18N + org.openide.awt.Mnemonics.setLocalizedText(confidenceLbl, org.openide.util.NbBundle.getMessage(PersonaMetadataDialog.class, "PersonaMetadataDialog.confidenceLbl.text")); // NOI18N confidenceComboBox.setModel(new javax.swing.DefaultComboBoxModel<>(org.sleuthkit.autopsy.centralrepository.datamodel.Persona.Confidence.values())); + org.openide.awt.Mnemonics.setLocalizedText(justificationLbl, org.openide.util.NbBundle.getMessage(PersonaMetadataDialog.class, "PersonaMetadataDialog.justificationLbl.text")); // NOI18N + + justificationTextField.setText(org.openide.util.NbBundle.getMessage(PersonaMetadataDialog.class, "PersonaMetadataDialog.justificationTextField.text")); // NOI18N + javax.swing.GroupLayout settingsPanelLayout = new javax.swing.GroupLayout(settingsPanel); settingsPanel.setLayout(settingsPanelLayout); settingsPanelLayout.setHorizontalGroup( @@ -128,17 +128,17 @@ public class AddMetadataDialog extends JDialog { .addComponent(valueLbl) .addComponent(valueTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(settingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(justificationTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(justificationLbl)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGroup(settingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(confidenceComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(confidenceLbl)) - .addContainerGap()) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(settingsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(justificationTextField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(justificationLbl)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); - org.openide.awt.Mnemonics.setLocalizedText(cancelBtn, org.openide.util.NbBundle.getMessage(AddMetadataDialog.class, "AddMetadataDialog.cancelBtn.text")); // NOI18N + org.openide.awt.Mnemonics.setLocalizedText(cancelBtn, org.openide.util.NbBundle.getMessage(PersonaMetadataDialog.class, "PersonaMetadataDialog.cancelBtn.text")); // NOI18N cancelBtn.setMaximumSize(new java.awt.Dimension(79, 23)); cancelBtn.setMinimumSize(new java.awt.Dimension(79, 23)); cancelBtn.setPreferredSize(new java.awt.Dimension(79, 23)); @@ -148,7 +148,7 @@ public class AddMetadataDialog extends JDialog { } }); - org.openide.awt.Mnemonics.setLocalizedText(okBtn, org.openide.util.NbBundle.getMessage(AddMetadataDialog.class, "AddMetadataDialog.okBtn.text")); // NOI18N + org.openide.awt.Mnemonics.setLocalizedText(okBtn, org.openide.util.NbBundle.getMessage(PersonaMetadataDialog.class, "PersonaMetadataDialog.okBtn.text")); // NOI18N okBtn.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { okBtnActionPerformed(evt); @@ -193,6 +193,13 @@ public class AddMetadataDialog extends JDialog { "AddMetadataDialog_dup_Title=Metadata add failure", "AddMetadataDialog_dup_msg=A metadata entry with this name has already been added to this persona",}) private void okBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_okBtnActionPerformed + if (justificationTextField.getText().isEmpty()) { + JOptionPane.showMessageDialog(this, + Bundle.PersonaDetailsPanel_empty_justification_msg(), + Bundle.PersonaDetailsPanel_empty_justification_Title(), + JOptionPane.ERROR_MESSAGE); + return; + } if (pdp.addMetadata( nameTextField.getText(), valueTextField.getText(), From 0f161c057cff70c447ef3f45a7d2575b21b38f68 Mon Sep 17 00:00:00 2001 From: Ethan Roseman Date: Thu, 11 Jun 2020 13:37:56 -0400 Subject: [PATCH 2/2] 6453: PR comment --- .../autopsy/centralrepository/datamodel/Persona.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Core/src/org/sleuthkit/autopsy/centralrepository/datamodel/Persona.java b/Core/src/org/sleuthkit/autopsy/centralrepository/datamodel/Persona.java index 3b6205502a..7f4bfad144 100644 --- a/Core/src/org/sleuthkit/autopsy/centralrepository/datamodel/Persona.java +++ b/Core/src/org/sleuthkit/autopsy/centralrepository/datamodel/Persona.java @@ -415,7 +415,10 @@ public class Persona { + " GROUP BY p.id"; PersonaQueryCallback queryCallback = new PersonaQueryCallback(); - CentralRepository.getInstance().executeSelectSQL(queryClause, queryCallback); + CentralRepository cr = CentralRepository.getInstance(); + if (cr != null) { + cr.executeSelectSQL(queryClause, queryCallback); + } return queryCallback.getPersonas(); }