19 package org.sleuthkit.autopsy.casemodule;
 
   21 import java.nio.file.Paths;
 
   22 import java.util.logging.Level;
 
   23 import org.openide.util.NbBundle.Messages;
 
   34 @SuppressWarnings(
"PMD.SingularField") 
 
   35 final class CaseDetailsPanel extends javax.swing.JPanel {
 
   37     private static final long serialVersionUID = 1L;
 
   38     private static final Logger logger = Logger.
getLogger(CaseDetailsPanel.class.getName());
 
   47     CaseDetailsPanel(Case caseInfo) {
 
   52     void updateCaseInfo() {
 
   54             theCase = Case.getCurrentCaseThrows();
 
   55         } 
catch (NoCurrentCaseException ex) { 
 
   56             logger.log(Level.SEVERE, 
"Exception while getting open case.", ex);
 
   59         lbCaseNameText.setText(theCase.getDisplayName());
 
   60         lbCaseNumberText.setText(theCase.getNumber());
 
   61         lbExaminerNameText.setText(theCase.getExaminer());
 
   62         lbExaminerPhoneText.setText(theCase.getExaminerPhone());
 
   63         lbExaminerEmailText.setText(theCase.getExaminerEmail());
 
   64         taNotesText.setText(theCase.getCaseNotes());
 
   65         crDateField.setText(theCase.getCreatedDate());
 
   66         caseDirField.setText(theCase.getCaseDirectory());
 
   67         if (Case.CaseType.SINGLE_USER_CASE == theCase.getCaseType()) {
 
   68             dbNameField.setText(Paths.get(theCase.getCaseDirectory(), theCase.getMetadata().getCaseDatabaseName()).toString());
 
   70             dbNameField.setText(theCase.getMetadata().getCaseDatabaseName());
 
   72         boolean cREnabled = EamDb.isEnabled();
 
   73         lbOrganizationNameLabel.setEnabled(cREnabled);
 
   74         lbOrganizationNameText.setEnabled(cREnabled);
 
   75         lbPointOfContactEmailLabel.setEnabled(cREnabled);
 
   76         lbPointOfContactEmailText.setEnabled(cREnabled);
 
   77         lbPointOfContactNameLabel.setEnabled(cREnabled);
 
   78         lbPointOfContactNameText.setEnabled(cREnabled);
 
   79         lbPointOfContactPhoneLabel.setEnabled(cREnabled);
 
   80         lbPointOfContactPhoneText.setEnabled(cREnabled);
 
   81         pnOrganization.setEnabled(cREnabled);
 
   82         EamOrganization currentOrg = null;
 
   85                 EamDb dbManager = EamDb.getInstance();
 
   86                 if (dbManager != null) {
 
   87                     CorrelationCase correlationCase = dbManager.getCase(theCase);
 
   88                     currentOrg = correlationCase.getOrg();
 
   90             } 
catch (EamDbException ex) {
 
   91                 logger.log(Level.SEVERE, 
"Unable to access Correlation Case when Central Repo is enabled", ex);
 
   94         if (currentOrg != null) {
 
   95             lbOrganizationNameText.setText(currentOrg.getName());
 
   96             lbPointOfContactNameText.setText(currentOrg.getPocName());
 
   97             lbPointOfContactPhoneText.setText(currentOrg.getPocPhone());
 
   98             lbPointOfContactEmailText.setText(currentOrg.getPocEmail());
 
  100             lbOrganizationNameText.setText(
"");
 
  101             lbPointOfContactNameText.setText(
"");
 
  102             lbPointOfContactPhoneText.setText(
"");
 
  103             lbPointOfContactEmailText.setText(
"");
 
  105         Case.CaseType caseType = theCase.getCaseType();
 
  106         caseTypeField.setText(caseType.getLocalizedDisplayName());
 
  107         lbCaseUIDText.setText(theCase.getName());
 
  112     @Messages({
"CaseDetailsPanel.casePanel.border.title=Case",
 
  113         "CaseDetailsPanel.lbCaseUUIDLabel.text=Case UUID:",
 
  114         "CaseDetailsPanel.examinerPanel.border.title=Examiner",
 
  115         "CaseDetailsPanel.examinerLabel.text=Name:",
 
  116         "CaseDetailsPanel.lbExaminerPhoneLabel.text=Phone:",
 
  117         "CaseDetailsPanel.lbExaminerEmailLabel.text=Email:",
 
  118         "CaseDetailsPanel.lbNotesLabel.text=Notes:",
 
  119         "CaseDetailsPanel.pnOrganization.border.title=Organization",
 
  120         "CaseDetailsPanel.lbOrganizationNameLabel.text=Name:",
 
  121         "CaseDetailsPanel.lbPointOfContactNameLabel.text=Point of Contact:",
 
  122         "CaseDetailsPanel.lbPointOfContactPhoneLabel.text=Phone:",
 
  123         "CaseDetailsPanel.lbPointOfContactEmailLabel.text=Email:"})
 
  139     @SuppressWarnings(
"unchecked")
 
  141     private 
void initComponents() {
 
  143         jScrollPane1 = 
new javax.swing.JScrollPane();
 
  144         jTextArea1 = 
new javax.swing.JTextArea();
 
  145         detailsPanel = 
new javax.swing.JPanel();
 
  146         casePanel = 
new javax.swing.JPanel();
 
  147         caseNameLabel = 
new javax.swing.JLabel();
 
  148         lbDbType = 
new javax.swing.JLabel();
 
  149         lbCaseUUIDLabel = 
new javax.swing.JLabel();
 
  150         caseTypeField = 
new javax.swing.JLabel();
 
  151         dbNameField = 
new javax.swing.JLabel();
 
  152         lbDbName = 
new javax.swing.JLabel();
 
  153         caseNumberLabel = 
new javax.swing.JLabel();
 
  154         caseDirLabel = 
new javax.swing.JLabel();
 
  155         caseDirField = 
new javax.swing.JLabel();
 
  156         crDateLabel = 
new javax.swing.JLabel();
 
  157         crDateField = 
new javax.swing.JLabel();
 
  158         lbCaseUIDText = 
new javax.swing.JLabel();
 
  159         lbCaseNameText = 
new javax.swing.JLabel();
 
  160         lbCaseNumberText = 
new javax.swing.JLabel();
 
  161         examinerPanel = 
new javax.swing.JPanel();
 
  162         lbExaminerNameText = 
new javax.swing.JLabel();
 
  163         lbNotesLabel = 
new javax.swing.JLabel();
 
  164         examinerLabel = 
new javax.swing.JLabel();
 
  165         caseNotesScrollPane = 
new javax.swing.JScrollPane();
 
  166         taNotesText = 
new javax.swing.JTextArea();
 
  167         lbExaminerEmailLabel = 
new javax.swing.JLabel();
 
  168         lbExaminerPhoneLabel = 
new javax.swing.JLabel();
 
  169         lbExaminerPhoneText = 
new javax.swing.JLabel();
 
  170         lbExaminerEmailText = 
new javax.swing.JLabel();
 
  171         pnOrganization = 
new javax.swing.JPanel();
 
  172         lbOrganizationNameLabel = 
new javax.swing.JLabel();
 
  173         lbPointOfContactNameLabel = 
new javax.swing.JLabel();
 
  174         lbPointOfContactEmailLabel = 
new javax.swing.JLabel();
 
  175         lbPointOfContactPhoneLabel = 
new javax.swing.JLabel();
 
  176         lbPointOfContactNameText = 
new javax.swing.JLabel();
 
  177         lbPointOfContactEmailText = 
new javax.swing.JLabel();
 
  178         lbPointOfContactPhoneText = 
new javax.swing.JLabel();
 
  179         lbOrganizationNameText = 
new javax.swing.JLabel();
 
  181         jTextArea1.setColumns(20);
 
  182         jTextArea1.setRows(5);
 
  183         jScrollPane1.setViewportView(jTextArea1);
 
  185         casePanel.setBorder(javax.swing.BorderFactory.createTitledBorder(null, 
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.casePanel.border.title"), javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, 
new java.awt.Font(
"Tahoma", 0, 12))); 
 
  187         caseNameLabel.setFont(caseNameLabel.getFont().deriveFont(caseNameLabel.getFont().getStyle() & ~java.awt.Font.BOLD, 11));
 
  188         caseNameLabel.setText(
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.caseNameLabel.text")); 
 
  189         caseNameLabel.setMaximumSize(
new java.awt.Dimension(82, 14));
 
  190         caseNameLabel.setMinimumSize(
new java.awt.Dimension(82, 14));
 
  191         caseNameLabel.setPreferredSize(
new java.awt.Dimension(82, 14));
 
  193         lbDbType.setFont(lbDbType.getFont().deriveFont(lbDbType.getFont().getStyle() & ~java.awt.Font.BOLD, 11));
 
  194         lbDbType.setText(
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.lbDbType.text")); 
 
  195         lbDbType.setMaximumSize(
new java.awt.Dimension(82, 14));
 
  196         lbDbType.setMinimumSize(
new java.awt.Dimension(82, 14));
 
  197         lbDbType.setPreferredSize(
new java.awt.Dimension(82, 14));
 
  199         lbCaseUUIDLabel.setText(
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.lbCaseUUIDLabel.text")); 
 
  200         lbCaseUUIDLabel.setMaximumSize(
new java.awt.Dimension(82, 14));
 
  201         lbCaseUUIDLabel.setMinimumSize(
new java.awt.Dimension(82, 14));
 
  202         lbCaseUUIDLabel.setPreferredSize(
new java.awt.Dimension(82, 14));
 
  204         caseTypeField.setMaximumSize(
new java.awt.Dimension(1, 0));
 
  206         dbNameField.setMinimumSize(
new java.awt.Dimension(25, 14));
 
  208         lbDbName.setFont(lbDbName.getFont().deriveFont(lbDbName.getFont().getStyle() & ~java.awt.Font.BOLD, 11));
 
  209         lbDbName.setText(
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.lbDbName.text")); 
 
  210         lbDbName.setMaximumSize(
new java.awt.Dimension(82, 14));
 
  211         lbDbName.setMinimumSize(
new java.awt.Dimension(82, 14));
 
  212         lbDbName.setPreferredSize(
new java.awt.Dimension(82, 14));
 
  214         caseNumberLabel.setFont(caseNumberLabel.getFont().deriveFont(caseNumberLabel.getFont().getStyle() & ~java.awt.Font.BOLD, 11));
 
  215         caseNumberLabel.setText(
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.caseNumberLabel.text")); 
 
  217         caseDirLabel.setFont(caseDirLabel.getFont().deriveFont(caseDirLabel.getFont().getStyle() & ~java.awt.Font.BOLD, 11));
 
  218         caseDirLabel.setText(
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.caseDirLabel.text")); 
 
  219         caseDirLabel.setMaximumSize(
new java.awt.Dimension(82, 14));
 
  220         caseDirLabel.setMinimumSize(
new java.awt.Dimension(82, 14));
 
  221         caseDirLabel.setPreferredSize(
new java.awt.Dimension(82, 14));
 
  223         caseDirField.setMinimumSize(
new java.awt.Dimension(25, 14));
 
  225         crDateLabel.setFont(crDateLabel.getFont().deriveFont(crDateLabel.getFont().getStyle() & ~java.awt.Font.BOLD, 11));
 
  226         crDateLabel.setText(
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.crDateLabel.text")); 
 
  227         crDateLabel.setMaximumSize(
new java.awt.Dimension(82, 14));
 
  228         crDateLabel.setMinimumSize(
new java.awt.Dimension(82, 14));
 
  229         crDateLabel.setPreferredSize(
new java.awt.Dimension(82, 14));
 
  231         lbCaseNameText.setMinimumSize(
new java.awt.Dimension(25, 14));
 
  233         lbCaseNumberText.setMinimumSize(
new java.awt.Dimension(25, 14));
 
  235         javax.swing.GroupLayout casePanelLayout = 
new javax.swing.GroupLayout(casePanel);
 
  236         casePanel.setLayout(casePanelLayout);
 
  237         casePanelLayout.setHorizontalGroup(
 
  238             casePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  239             .addGroup(casePanelLayout.createSequentialGroup()
 
  241                 .addGroup(casePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  242                     .addGroup(casePanelLayout.createSequentialGroup()
 
  243                         .addGroup(casePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  244                             .addComponent(caseNameLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  245                             .addComponent(caseNumberLabel))
 
  247                         .addGroup(casePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  248                             .addComponent(lbCaseNumberText, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  249                             .addComponent(lbCaseNameText, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
 
  250                     .addGroup(casePanelLayout.createSequentialGroup()
 
  251                         .addGroup(casePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  252                             .addGroup(casePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, 
false)
 
  253                                 .addComponent(lbCaseUUIDLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  254                                 .addComponent(lbDbType, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  255                                 .addComponent(caseDirLabel, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  256                             .addComponent(crDateLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  257                             .addComponent(lbDbName, javax.swing.GroupLayout.PREFERRED_SIZE, 115, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  259                         .addGroup(casePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  260                             .addComponent(crDateField, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  261                             .addComponent(caseDirField, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  262                             .addComponent(caseTypeField, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  263                             .addComponent(dbNameField, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  264                             .addComponent(lbCaseUIDText, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
 
  268         casePanelLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, 
new java.awt.Component[] {caseDirLabel, caseNameLabel, caseNumberLabel, crDateLabel, lbCaseUUIDLabel, lbDbName, lbDbType});
 
  270         casePanelLayout.setVerticalGroup(
 
  271             casePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  272             .addGroup(casePanelLayout.createSequentialGroup()
 
  274                 .addGroup(casePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  275                     .addComponent(caseNameLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  276                     .addComponent(lbCaseNameText, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  277                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  278                 .addGroup(casePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  279                     .addComponent(caseNumberLabel, javax.swing.GroupLayout.Alignment.TRAILING)
 
  280                     .addComponent(lbCaseNumberText, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  281                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  282                 .addGroup(casePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  283                     .addComponent(crDateLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  284                     .addComponent(crDateField, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  285                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  286                 .addGroup(casePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, 
false)
 
  287                     .addComponent(caseDirLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  288                     .addComponent(caseDirField, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  289                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  290                 .addGroup(casePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  291                     .addComponent(caseTypeField, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  292                     .addComponent(lbDbType, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  293                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  294                 .addGroup(casePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
 
  295                     .addComponent(lbDbName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  296                     .addComponent(dbNameField, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  297                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  298                 .addGroup(casePanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, 
false)
 
  299                     .addComponent(lbCaseUUIDLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  300                     .addComponent(lbCaseUIDText, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  304         examinerPanel.setBorder(javax.swing.BorderFactory.createTitledBorder(null, 
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.examinerPanel.border.title"), javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, 
new java.awt.Font(
"Tahoma", 0, 12))); 
 
  306         lbNotesLabel.setText(
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.lbNotesLabel.text")); 
 
  307         lbNotesLabel.setMaximumSize(
new java.awt.Dimension(82, 14));
 
  308         lbNotesLabel.setMinimumSize(
new java.awt.Dimension(82, 14));
 
  309         lbNotesLabel.setPreferredSize(
new java.awt.Dimension(82, 14));
 
  310         lbNotesLabel.setRequestFocusEnabled(
false);
 
  312         examinerLabel.setFont(examinerLabel.getFont().deriveFont(examinerLabel.getFont().getStyle() & ~java.awt.Font.BOLD, 11));
 
  313         examinerLabel.setText(
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.examinerLabel.text")); 
 
  314         examinerLabel.setMaximumSize(
new java.awt.Dimension(82, 14));
 
  315         examinerLabel.setMinimumSize(
new java.awt.Dimension(82, 14));
 
  316         examinerLabel.setPreferredSize(
new java.awt.Dimension(82, 14));
 
  318         caseNotesScrollPane.setBorder(null);
 
  320         taNotesText.setEditable(
false);
 
  321         taNotesText.setBackground(
new java.awt.Color(240, 240, 240));
 
  322         taNotesText.setColumns(20);
 
  323         taNotesText.setFont(
new java.awt.Font(
"Tahoma", 0, 11)); 
 
  324         taNotesText.setLineWrap(
true);
 
  325         taNotesText.setRows(2);
 
  326         taNotesText.setWrapStyleWord(
true);
 
  327         taNotesText.setBorder(null);
 
  328         taNotesText.setFocusable(
false);
 
  329         taNotesText.setOpaque(
false);
 
  330         caseNotesScrollPane.setViewportView(taNotesText);
 
  332         lbExaminerEmailLabel.setText(
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.lbExaminerEmailLabel.text")); 
 
  333         lbExaminerEmailLabel.setMaximumSize(
new java.awt.Dimension(82, 14));
 
  334         lbExaminerEmailLabel.setMinimumSize(
new java.awt.Dimension(82, 14));
 
  335         lbExaminerEmailLabel.setPreferredSize(
new java.awt.Dimension(82, 14));
 
  337         lbExaminerPhoneLabel.setText(
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.lbExaminerPhoneLabel.text")); 
 
  338         lbExaminerPhoneLabel.setMaximumSize(
new java.awt.Dimension(82, 14));
 
  339         lbExaminerPhoneLabel.setMinimumSize(
new java.awt.Dimension(82, 14));
 
  340         lbExaminerPhoneLabel.setPreferredSize(
new java.awt.Dimension(82, 14));
 
  342         javax.swing.GroupLayout examinerPanelLayout = 
new javax.swing.GroupLayout(examinerPanel);
 
  343         examinerPanel.setLayout(examinerPanelLayout);
 
  344         examinerPanelLayout.setHorizontalGroup(
 
  345             examinerPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  346             .addGroup(examinerPanelLayout.createSequentialGroup()
 
  348                 .addGroup(examinerPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  349                     .addGroup(examinerPanelLayout.createSequentialGroup()
 
  350                         .addGroup(examinerPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  351                             .addComponent(lbNotesLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  352                             .addComponent(lbExaminerPhoneLabel, javax.swing.GroupLayout.PREFERRED_SIZE, 115, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  354                         .addGroup(examinerPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  355                             .addComponent(lbExaminerPhoneText, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  356                             .addComponent(caseNotesScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 704, Short.MAX_VALUE)))
 
  357                     .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, examinerPanelLayout.createSequentialGroup()
 
  358                         .addGroup(examinerPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, 
false)
 
  359                             .addComponent(lbExaminerEmailLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  360                             .addComponent(examinerLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
 
  361                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  362                         .addGroup(examinerPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  363                             .addComponent(lbExaminerNameText, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  364                             .addComponent(lbExaminerEmailText, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
 
  368         examinerPanelLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, 
new java.awt.Component[] {examinerLabel, lbExaminerEmailLabel, lbExaminerPhoneLabel, lbNotesLabel});
 
  370         examinerPanelLayout.setVerticalGroup(
 
  371             examinerPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  372             .addGroup(examinerPanelLayout.createSequentialGroup()
 
  374                 .addGroup(examinerPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, 
false)
 
  375                     .addComponent(examinerLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  376                     .addComponent(lbExaminerNameText, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  377                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  378                 .addGroup(examinerPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, 
false)
 
  379                     .addComponent(lbExaminerPhoneLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  380                     .addComponent(lbExaminerPhoneText, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  381                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  382                 .addGroup(examinerPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, 
false)
 
  383                     .addComponent(lbExaminerEmailLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  384                     .addComponent(lbExaminerEmailText, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
 
  385                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  386                 .addGroup(examinerPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  387                     .addComponent(lbNotesLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  388                     .addComponent(caseNotesScrollPane, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  392         pnOrganization.setBorder(javax.swing.BorderFactory.createTitledBorder(null, 
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.pnOrganization.border.title"), javax.swing.border.TitledBorder.DEFAULT_JUSTIFICATION, javax.swing.border.TitledBorder.DEFAULT_POSITION, 
new java.awt.Font(
"Tahoma", 0, 12))); 
 
  394         lbOrganizationNameLabel.setText(
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.lbOrganizationNameLabel.text")); 
 
  395         lbOrganizationNameLabel.setMaximumSize(
new java.awt.Dimension(82, 14));
 
  396         lbOrganizationNameLabel.setMinimumSize(
new java.awt.Dimension(82, 14));
 
  397         lbOrganizationNameLabel.setPreferredSize(
new java.awt.Dimension(82, 14));
 
  399         lbPointOfContactNameLabel.setText(
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.lbPointOfContactNameLabel.text")); 
 
  401         lbPointOfContactEmailLabel.setText(
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.lbPointOfContactEmailLabel.text")); 
 
  402         lbPointOfContactEmailLabel.setMaximumSize(
new java.awt.Dimension(82, 14));
 
  403         lbPointOfContactEmailLabel.setMinimumSize(
new java.awt.Dimension(82, 14));
 
  404         lbPointOfContactEmailLabel.setPreferredSize(
new java.awt.Dimension(82, 14));
 
  406         lbPointOfContactPhoneLabel.setText(
org.openide.util.NbBundle.getMessage(CaseDetailsPanel.class, 
"CaseDetailsPanel.lbPointOfContactPhoneLabel.text")); 
 
  407         lbPointOfContactPhoneLabel.setMaximumSize(
new java.awt.Dimension(82, 14));
 
  408         lbPointOfContactPhoneLabel.setMinimumSize(
new java.awt.Dimension(82, 14));
 
  409         lbPointOfContactPhoneLabel.setPreferredSize(
new java.awt.Dimension(82, 14));
 
  411         javax.swing.GroupLayout pnOrganizationLayout = 
new javax.swing.GroupLayout(pnOrganization);
 
  412         pnOrganization.setLayout(pnOrganizationLayout);
 
  413         pnOrganizationLayout.setHorizontalGroup(
 
  414             pnOrganizationLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  415             .addGroup(pnOrganizationLayout.createSequentialGroup()
 
  417                 .addGroup(pnOrganizationLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  418                     .addGroup(pnOrganizationLayout.createSequentialGroup()
 
  419                         .addGroup(pnOrganizationLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  420                             .addComponent(lbPointOfContactEmailLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  421                             .addComponent(lbOrganizationNameLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  422                             .addComponent(lbPointOfContactNameLabel, javax.swing.GroupLayout.PREFERRED_SIZE, 115, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  424                         .addGroup(pnOrganizationLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
 
  425                             .addComponent(lbPointOfContactNameText, javax.swing.GroupLayout.DEFAULT_SIZE, 704, Short.MAX_VALUE)
 
  426                             .addComponent(lbOrganizationNameText, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  427                             .addComponent(lbPointOfContactEmailText, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
 
  428                     .addGroup(pnOrganizationLayout.createSequentialGroup()
 
  429                         .addComponent(lbPointOfContactPhoneLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  430                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  431                         .addComponent(lbPointOfContactPhoneText, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
 
  435         pnOrganizationLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, 
new java.awt.Component[] {lbOrganizationNameLabel, lbPointOfContactEmailLabel, lbPointOfContactNameLabel, lbPointOfContactPhoneLabel});
 
  437         pnOrganizationLayout.setVerticalGroup(
 
  438             pnOrganizationLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  439             .addGroup(pnOrganizationLayout.createSequentialGroup()
 
  441                 .addGroup(pnOrganizationLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, 
false)
 
  442                     .addComponent(lbOrganizationNameLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  443                     .addComponent(lbOrganizationNameText, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
 
  444                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  445                 .addGroup(pnOrganizationLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, 
false)
 
  446                     .addComponent(lbPointOfContactNameLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  447                     .addComponent(lbPointOfContactNameText, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  448                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  449                 .addGroup(pnOrganizationLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  450                     .addComponent(lbPointOfContactPhoneLabel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  451                     .addComponent(lbPointOfContactPhoneText, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  452                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 
  453                 .addGroup(pnOrganizationLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, 
false)
 
  454                     .addComponent(lbPointOfContactEmailLabel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  455                     .addComponent(lbPointOfContactEmailText, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE))
 
  459         javax.swing.GroupLayout detailsPanelLayout = 
new javax.swing.GroupLayout(detailsPanel);
 
  460         detailsPanel.setLayout(detailsPanelLayout);
 
  461         detailsPanelLayout.setHorizontalGroup(
 
  462             detailsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  463             .addGroup(detailsPanelLayout.createSequentialGroup()
 
  465                 .addGroup(detailsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  466                     .addComponent(casePanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  467                     .addComponent(examinerPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  468                     .addComponent(pnOrganization, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
 
  471         detailsPanelLayout.setVerticalGroup(
 
  472             detailsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  473             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, detailsPanelLayout.createSequentialGroup()
 
  474                 .addComponent(casePanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  476                 .addComponent(examinerPanel, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  478                 .addComponent(pnOrganization, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 
  482         javax.swing.GroupLayout layout = 
new javax.swing.GroupLayout(
this);
 
  483         this.setLayout(layout);
 
  484         layout.setHorizontalGroup(
 
  485             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  486             .addGroup(layout.createSequentialGroup()
 
  488                 .addComponent(detailsPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  491         layout.setVerticalGroup(
 
  492             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 
  493             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
 
  495                 .addComponent(detailsPanel, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 
  501     private javax.swing.JLabel caseDirField;
 
  502     private javax.swing.JLabel caseDirLabel;
 
  503     private javax.swing.JLabel caseNameLabel;
 
  504     private javax.swing.JScrollPane caseNotesScrollPane;
 
  505     private javax.swing.JLabel caseNumberLabel;
 
  506     private javax.swing.JPanel casePanel;
 
  507     private javax.swing.JLabel caseTypeField;
 
  508     private javax.swing.JLabel crDateField;
 
  509     private javax.swing.JLabel crDateLabel;
 
  510     private javax.swing.JLabel dbNameField;
 
  511     private javax.swing.JPanel detailsPanel;
 
  512     private javax.swing.JLabel examinerLabel;
 
  513     private javax.swing.JPanel examinerPanel;
 
  514     private javax.swing.JScrollPane jScrollPane1;
 
  515     private javax.swing.JTextArea jTextArea1;
 
  516     private javax.swing.JLabel lbCaseNameText;
 
  517     private javax.swing.JLabel lbCaseNumberText;
 
  518     private javax.swing.JLabel lbCaseUIDText;
 
  519     private javax.swing.JLabel lbCaseUUIDLabel;
 
  520     private javax.swing.JLabel lbDbName;
 
  521     private javax.swing.JLabel lbDbType;
 
  522     private javax.swing.JLabel lbExaminerEmailLabel;
 
  523     private javax.swing.JLabel lbExaminerEmailText;
 
  524     private javax.swing.JLabel lbExaminerNameText;
 
  525     private javax.swing.JLabel lbExaminerPhoneLabel;
 
  526     private javax.swing.JLabel lbExaminerPhoneText;
 
  527     private javax.swing.JLabel lbNotesLabel;
 
  528     private javax.swing.JLabel lbOrganizationNameLabel;
 
  529     private javax.swing.JLabel lbOrganizationNameText;
 
  530     private javax.swing.JLabel lbPointOfContactEmailLabel;
 
  531     private javax.swing.JLabel lbPointOfContactEmailText;
 
  532     private javax.swing.JLabel lbPointOfContactNameLabel;
 
  533     private javax.swing.JLabel lbPointOfContactNameText;
 
  534     private javax.swing.JLabel lbPointOfContactPhoneLabel;
 
  535     private javax.swing.JLabel lbPointOfContactPhoneText;
 
  536     private javax.swing.JPanel pnOrganization;
 
  537     private javax.swing.JTextArea taNotesText;
 
synchronized static Logger getLogger(String name)