19 package org.sleuthkit.autopsy.keywordsearch;
 
   21 import java.beans.PropertyChangeEvent;
 
   22 import java.beans.PropertyChangeListener;
 
   23 import java.beans.PropertyChangeSupport;
 
   24 import java.io.IOException;
 
   25 import java.util.logging.FileHandler;
 
   26 import java.util.logging.Level;
 
   27 import java.util.logging.Logger;
 
   28 import java.util.logging.SimpleFormatter;
 
   29 import org.openide.util.NbBundle;
 
   70             final int MAX_TIKA_LOG_FILES = 3;
 
   72                     0, MAX_TIKA_LOG_FILES);
 
   73             tikaLogHandler.setFormatter(
new SimpleFormatter());
 
   75             TIKA_LOGGER.addHandler(tikaLogHandler);
 
   77             TIKA_LOGGER.setUseParentHandlers(
false);
 
   78         } 
catch (IOException | SecurityException ex) {
 
   79             logger.log(Level.SEVERE, 
"Error setting up tika logging", ex); 
 
   85         throw new AssertionError();
 
   88     static Logger getTikaLogger() {
 
   93         changeSupport.addPropertyChangeListener(NUM_FILES_CHANGE_EVT, l);
 
   97         changeSupport.removePropertyChangeListener(l);
 
  103             changeSupport.firePropertyChange(NUM_FILES_CHANGE_EVT, oldNum, newNum);
 
  104         } 
catch (Exception e) {
 
  105             logger.log(Level.SEVERE, 
"KeywordSearch listener threw exception", e); 
 
  108                             "KeywordSearch.fireNumIdxFileChg.moduleErr.msg"),
 
  117     static class CaseChangeListener 
implements PropertyChangeListener {
 
  120         public void propertyChange(PropertyChangeEvent evt) {
 
  122                 if (null != evt.getOldValue()) {
 
  126                     Case closedCase = (
Case) evt.getOldValue();
 
  128                         BlackboardResultWriter.stopAllWriters();
 
  137                     } 
catch (Exception ex) {
 
  138                         logger.log(Level.SEVERE, String.format(
"Failed to close core for %s", closedCase.
getCaseDirectory()), ex); 
 
  139                         if (RuntimeProperties.coreComponentsAreActive()) {
 
  140                             MessageNotifyUtil.Notify.error(NbBundle.getMessage(
KeywordSearch.class, 
"KeywordSearch.closeCore.notification.msg"), ex.getMessage());
 
  145                 if (null != evt.getNewValue()) {
 
  149                     Case openedCase = (Case) evt.getNewValue();
 
  151                         server.openCoreForCase(openedCase);
 
  152                     } 
catch (Exception ex) {
 
  153                         logger.log(Level.SEVERE, String.format(
"Failed to open or create core for %s", openedCase.getCaseDirectory()), ex); 
 
  154                         if (RuntimeProperties.coreComponentsAreActive()) {
 
  155                             MessageNotifyUtil.Notify.error(NbBundle.getMessage(
KeywordSearch.class, 
"KeywordSearch.openCore.notification.msg"), ex.getMessage());
 
static final org.sleuthkit.autopsy.coreutils.Logger logger
static void fireNumIndexedFilesChange(Integer oldNum, Integer newNum)
static void addNumIndexedFilesChangeListener(PropertyChangeListener l)
String getCaseDirectory()
static synchronized Server getServer()
static PropertyChangeSupport changeSupport
static final Logger TIKA_LOGGER
static final String NUM_FILES_CHANGE_EVT
static void removeNumIndexedFilesChangeListener(PropertyChangeListener l)
synchronized static Logger getLogger(String name)
static void show(String title, String message, MessageType type, ActionListener actionListener)