mirror of
https://github.com/overcuriousity/autopsy-flatpak.git
synced 2025-07-17 18:17:43 +00:00
Define DSPProgressMoinitor class. Eliminate dependency on the ProgressControlPanel from DataSourceProcessor.
This commit is contained in:
parent
7b52520f90
commit
7000ab6865
@ -50,6 +50,29 @@ class AddImageWizardAddingProgressPanel implements WizardDescriptor.FinishablePa
|
|||||||
private AddImageWizardAddingProgressVisual component;
|
private AddImageWizardAddingProgressVisual component;
|
||||||
private final Set<ChangeListener> listeners = new HashSet<>(1); // or can use ChangeSupport in NB 6.0
|
private final Set<ChangeListener> listeners = new HashSet<>(1); // or can use ChangeSupport in NB 6.0
|
||||||
|
|
||||||
|
private DSPProgressMonitorImpl dspProgressMonitorImpl = new DSPProgressMonitorImpl();
|
||||||
|
|
||||||
|
public DSPProgressMonitorImpl getDSPProgressMonitorImpl() {
|
||||||
|
return dspProgressMonitorImpl;
|
||||||
|
}
|
||||||
|
|
||||||
|
private class DSPProgressMonitorImpl implements DSPProgressMonitor {
|
||||||
|
@Override
|
||||||
|
public void setIndeterminate(boolean indeterminate) {
|
||||||
|
getComponent().getProgressBar().setIndeterminate(indeterminate);
|
||||||
|
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void setProgress(int progress) {
|
||||||
|
getComponent().getProgressBar().setValue(progress);
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void setText(String text) {
|
||||||
|
getComponent().setCurrentDirText(text);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* Get the visual component for the panel. In this template, the component
|
* Get the visual component for the panel. In this template, the component
|
||||||
* is kept separate. This can be more efficient: if the wizard is created
|
* is kept separate. This can be more efficient: if the wizard is created
|
||||||
|
@ -275,8 +275,11 @@ class AddImageWizardIngestConfigPanel implements WizardDescriptor.Panel<WizardDe
|
|||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
progressPanel.setStateStarted();
|
||||||
|
|
||||||
// Kick off the DSProcessor
|
// Kick off the DSProcessor
|
||||||
dsProcessor.run(settings, progressPanel, cbObj);
|
dsProcessor.run(settings, progressPanel.getDSPProgressMonitorImpl(), cbObj);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -288,15 +291,22 @@ class AddImageWizardIngestConfigPanel implements WizardDescriptor.Panel<WizardDe
|
|||||||
private void dataSourceProcessorDone(DSPCallback.DSP_Result result, List<String> errList, List<Content> contents) {
|
private void dataSourceProcessorDone(DSPCallback.DSP_Result result, List<String> errList, List<Content> contents) {
|
||||||
logger.log(Level.INFO, "RAMAN dataSourceProcessorDone().");
|
logger.log(Level.INFO, "RAMAN dataSourceProcessorDone().");
|
||||||
|
|
||||||
// RAMAN TBD
|
// disable the cleanup task
|
||||||
// check if there is any new content and kick off ingest....
|
|
||||||
|
|
||||||
// RAMAN TBD: check the result
|
|
||||||
|
|
||||||
// RAMAN TBD: if errors, display them on the progress panel
|
|
||||||
|
|
||||||
// disbale the cleanup task
|
|
||||||
cleanupTask.disable();
|
cleanupTask.disable();
|
||||||
|
|
||||||
|
//check the result and display to user
|
||||||
|
if (result == DSPCallback.DSP_Result.NO_ERRORS)
|
||||||
|
progressPanel.getComponent().setProgressBarTextAndColor("*Data Source added.", 100, Color.black);
|
||||||
|
else
|
||||||
|
progressPanel.getComponent().setProgressBarTextAndColor("*Errors encountered in adding Data Source.", 100, Color.red);
|
||||||
|
|
||||||
|
|
||||||
|
//if errors, display them on the progress panel
|
||||||
|
for ( String err: errList ) {
|
||||||
|
// TBD: there should be an error level for each error
|
||||||
|
progressPanel.addErrors(err, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
newContents.clear();
|
newContents.clear();
|
||||||
@ -307,6 +317,9 @@ class AddImageWizardIngestConfigPanel implements WizardDescriptor.Panel<WizardDe
|
|||||||
Case.getCurrentCase().addLocalDataSource(newContents.get(0));
|
Case.getCurrentCase().addLocalDataSource(newContents.get(0));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
progressPanel.setStateStarted();
|
||||||
|
|
||||||
// Start ingest if we can
|
// Start ingest if we can
|
||||||
startIngest();
|
startIngest();
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ package org.sleuthkit.autopsy.casemodule;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import javax.swing.JPanel;
|
import javax.swing.JPanel;
|
||||||
import org.openide.WizardDescriptor;
|
import org.openide.WizardDescriptor;
|
||||||
import org.sleuthkit.autopsy.casemodule.AddImageWizardAddingProgressPanel;
|
import org.sleuthkit.autopsy.casemodule.DSPProgressMonitor;
|
||||||
import org.sleuthkit.autopsy.casemodule.ContentTypePanel;
|
import org.sleuthkit.autopsy.casemodule.ContentTypePanel;
|
||||||
import org.sleuthkit.datamodel.Content;
|
import org.sleuthkit.datamodel.Content;
|
||||||
|
|
||||||
@ -59,7 +59,7 @@ public interface DataSourceProcessor {
|
|||||||
* @param progressPanel progress panel to be updated while processing
|
* @param progressPanel progress panel to be updated while processing
|
||||||
*
|
*
|
||||||
**/
|
**/
|
||||||
void run(WizardDescriptor settings, AddImageWizardAddingProgressPanel progressPanel, DSPCallback dspCallback);
|
void run(WizardDescriptor settings, DSPProgressMonitor progressPanel, DSPCallback dspCallback);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Called after run() is done to get the new content added by the handler.
|
* Called after run() is done to get the new content added by the handler.
|
||||||
|
@ -40,9 +40,7 @@ public class ImageDSProcessor implements DataSourceProcessor {
|
|||||||
|
|
||||||
private ImageFilePanel imageFilePanel;
|
private ImageFilePanel imageFilePanel;
|
||||||
private AddImageTask addImageTask;
|
private AddImageTask addImageTask;
|
||||||
private CurrentDirectoryFetcher fetcher;
|
|
||||||
|
|
||||||
private boolean addImageDone = false;
|
|
||||||
private boolean cancelled = false;
|
private boolean cancelled = false;
|
||||||
|
|
||||||
DSPCallback callbackObj = null;
|
DSPCallback callbackObj = null;
|
||||||
@ -91,15 +89,14 @@ public class ImageDSProcessor implements DataSourceProcessor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run(WizardDescriptor settings, AddImageWizardAddingProgressPanel progressPanel, DSPCallback cbObj) {
|
public void run(WizardDescriptor settings, DSPProgressMonitor progressMonitor, DSPCallback cbObj) {
|
||||||
|
|
||||||
logger.log(Level.INFO, "RAMAN run()...");
|
logger.log(Level.INFO, "RAMAN run()...");
|
||||||
|
|
||||||
callbackObj = cbObj;
|
callbackObj = cbObj;
|
||||||
addImageDone = false;
|
|
||||||
cancelled = false;
|
cancelled = false;
|
||||||
|
|
||||||
addImageTask = new AddImageTask(settings, progressPanel, cbObj);
|
addImageTask = new AddImageTask(settings, progressMonitor, cbObj);
|
||||||
addImageTask.execute();
|
addImageTask.execute();
|
||||||
|
|
||||||
return;
|
return;
|
||||||
@ -135,72 +132,70 @@ public class ImageDSProcessor implements DataSourceProcessor {
|
|||||||
* *****/
|
* *****/
|
||||||
|
|
||||||
|
|
||||||
private static class CurrentDirectoryFetcher extends SwingWorker<Integer, Integer> {
|
|
||||||
|
|
||||||
//AddImageWizardIngestConfigPanel.AddImageTask task;
|
|
||||||
JProgressBar progressBar;
|
|
||||||
AddImageWizardAddingProgressVisual progressVisual;
|
|
||||||
SleuthkitJNI.CaseDbHandle.AddImageProcess process;
|
|
||||||
|
|
||||||
CurrentDirectoryFetcher(JProgressBar aProgressBar, AddImageWizardAddingProgressVisual wiz, SleuthkitJNI.CaseDbHandle.AddImageProcess proc) {
|
|
||||||
this.progressVisual = wiz;
|
|
||||||
this.process = proc;
|
|
||||||
this.progressBar = aProgressBar;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return the currently processing directory
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
protected Integer doInBackground() {
|
|
||||||
try {
|
|
||||||
while (progressBar.getValue() < 100 || progressBar.isIndeterminate()) { //TODO Rely on state variable in AddImgTask class
|
|
||||||
|
|
||||||
EventQueue.invokeLater(new Runnable() {
|
|
||||||
@Override
|
|
||||||
public void run() {
|
|
||||||
progressVisual.setCurrentDirText(process.currentDirectory());
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
Thread.sleep(2 * 1000);
|
|
||||||
}
|
|
||||||
return 1;
|
|
||||||
} catch (InterruptedException ie) {
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private class AddImageTask extends SwingWorker<Integer, Integer> {
|
private class AddImageTask extends SwingWorker<Integer, Integer> {
|
||||||
|
|
||||||
private JProgressBar progressBar;
|
|
||||||
private Case currentCase;
|
private Case currentCase;
|
||||||
// true if the process was requested to stop
|
// true if the process was requested to stop
|
||||||
private boolean cancelled = false;
|
private boolean cancelled = false;
|
||||||
//true if revert has been invoked.
|
//true if revert has been invoked.
|
||||||
private boolean reverted = false;
|
private boolean reverted = false;
|
||||||
private boolean hasCritError = false;
|
private boolean hasCritError = false;
|
||||||
private boolean addImagedone = false;
|
private boolean addImageDone = false;
|
||||||
|
|
||||||
|
|
||||||
//private String errorString = null;
|
|
||||||
private List<String> errorList = new ArrayList<String>();
|
private List<String> errorList = new ArrayList<String>();
|
||||||
|
|
||||||
private WizardDescriptor wizDescriptor;
|
private WizardDescriptor wizDescriptor;
|
||||||
|
|
||||||
private Logger logger = Logger.getLogger(AddImageTask.class.getName());
|
private Logger logger = Logger.getLogger(AddImageTask.class.getName());
|
||||||
private AddImageWizardAddingProgressPanel progressPanel;
|
private DSPProgressMonitor progressMonitor;
|
||||||
private DSPCallback callbackObj;
|
private DSPCallback callbackObj;
|
||||||
|
|
||||||
private final List<Content> newContents = Collections.synchronizedList(new ArrayList<Content>());
|
private final List<Content> newContents = Collections.synchronizedList(new ArrayList<Content>());
|
||||||
|
|
||||||
private SleuthkitJNI.CaseDbHandle.AddImageProcess addImageProcess;
|
private SleuthkitJNI.CaseDbHandle.AddImageProcess addImageProcess;
|
||||||
|
private CurrentDirectoryFetcher fetcher;
|
||||||
|
|
||||||
|
|
||||||
protected AddImageTask(WizardDescriptor settings, AddImageWizardAddingProgressPanel aProgressPanel, DSPCallback cbObj ) {
|
|
||||||
this.progressPanel = aProgressPanel;
|
private class CurrentDirectoryFetcher extends SwingWorker<Integer, Integer> {
|
||||||
this.progressBar = progressPanel.getComponent().getProgressBar();
|
|
||||||
|
DSPProgressMonitor progressMonitor;
|
||||||
|
SleuthkitJNI.CaseDbHandle.AddImageProcess process;
|
||||||
|
|
||||||
|
CurrentDirectoryFetcher(DSPProgressMonitor aProgressMonitor, SleuthkitJNI.CaseDbHandle.AddImageProcess proc) {
|
||||||
|
this.progressMonitor = aProgressMonitor;
|
||||||
|
this.process = proc;
|
||||||
|
// this.progressBar = aProgressBar;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return the currently processing directory
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
protected Integer doInBackground() {
|
||||||
|
try {
|
||||||
|
while (!(addImageDone)) {
|
||||||
|
EventQueue.invokeLater(new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
progressMonitor.setText(process.currentDirectory());
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
Thread.sleep(2 * 1000);
|
||||||
|
}
|
||||||
|
return 1;
|
||||||
|
} catch (InterruptedException ie) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
protected AddImageTask(WizardDescriptor settings, DSPProgressMonitor aProgressMonitor, DSPCallback cbObj ) {
|
||||||
|
this.progressMonitor = aProgressMonitor;
|
||||||
currentCase = Case.getCurrentCase();
|
currentCase = Case.getCurrentCase();
|
||||||
|
|
||||||
this.callbackObj = cbObj;
|
this.callbackObj = cbObj;
|
||||||
@ -223,18 +218,6 @@ public class ImageDSProcessor implements DataSourceProcessor {
|
|||||||
|
|
||||||
errorList.clear();
|
errorList.clear();
|
||||||
|
|
||||||
/**** RAMAN TBD: a higher level caller should set up the cleanup task and then call DataSourceHandler.cancelProcessing()
|
|
||||||
*
|
|
||||||
// Add a cleanup task to interrupt the backgroud process if the
|
|
||||||
// wizard exits while the background process is running.
|
|
||||||
AddImageAction.CleanupTask cancelledWhileRunning = action.new CleanupTask() {
|
|
||||||
@Override
|
|
||||||
void cleanup() throws Exception {
|
|
||||||
logger.log(Level.INFO, "Add image process interrupted.");
|
|
||||||
addImageTask.interrupt(); //it might take time to truly interrupt
|
|
||||||
}
|
|
||||||
};
|
|
||||||
* *************************/
|
|
||||||
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@ -263,27 +246,24 @@ public class ImageDSProcessor implements DataSourceProcessor {
|
|||||||
|
|
||||||
|
|
||||||
addImageProcess = currentCase.makeAddImageProcess(timeZone, true, noFatOrphans);
|
addImageProcess = currentCase.makeAddImageProcess(timeZone, true, noFatOrphans);
|
||||||
fetcher = new CurrentDirectoryFetcher(this.progressBar, progressPanel.getComponent(), addImageProcess);
|
fetcher = new CurrentDirectoryFetcher(progressMonitor, addImageProcess);
|
||||||
//RAMAN TBD: handle the cleanup task
|
|
||||||
//cancelledWhileRunning.enable();
|
|
||||||
try {
|
try {
|
||||||
progressPanel.setStateStarted();
|
progressMonitor.setIndeterminate(true);
|
||||||
|
progressMonitor.setProgress(0);
|
||||||
|
|
||||||
fetcher.execute();
|
fetcher.execute();
|
||||||
addImageProcess.run(new String[]{dataSourcePath});
|
addImageProcess.run(new String[]{dataSourcePath});
|
||||||
} catch (TskCoreException ex) {
|
} catch (TskCoreException ex) {
|
||||||
logger.log(Level.WARNING, "Core errors occurred while running add image. ", ex);
|
logger.log(Level.WARNING, "Core errors occurred while running add image. ", ex);
|
||||||
//critical core/system error and process needs to be interrupted
|
//critical core/system error and process needs to be interrupted
|
||||||
hasCritError = true;
|
hasCritError = true;
|
||||||
//errorString = ex.getMessage();
|
|
||||||
errorList.add(ex.getMessage());
|
errorList.add(ex.getMessage());
|
||||||
} catch (TskDataException ex) {
|
} catch (TskDataException ex) {
|
||||||
logger.log(Level.WARNING, "Data errors occurred while running add image. ", ex);
|
logger.log(Level.WARNING, "Data errors occurred while running add image. ", ex);
|
||||||
//errorString = ex.getMessage();
|
errorList.add(ex.getMessage());
|
||||||
errorList.add(ex.getMessage());
|
|
||||||
} finally {
|
} finally {
|
||||||
// process is over, doesn't need to be dealt with if cancel happens
|
// process is over, doesn't need to be dealt with if cancel happens
|
||||||
//RAMAN TBD: handle the cleanup task
|
|
||||||
//cancelledWhileRunning.disable();
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -327,20 +307,19 @@ public class ImageDSProcessor implements DataSourceProcessor {
|
|||||||
if (verificationErrors.equals("") == false) {
|
if (verificationErrors.equals("") == false) {
|
||||||
//data error (non-critical)
|
//data error (non-critical)
|
||||||
errorList.add(verificationErrors);
|
errorList.add(verificationErrors);
|
||||||
//progressPanel.addErrors(verificationErrors, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*** RAMAN TBD: how to handle the newContent notification back to IngestConfigPanel **/
|
//
|
||||||
newContents.add(newImage);
|
newContents.add(newImage);
|
||||||
|
|
||||||
|
// RAMAN TBD: imageID should be return via the callback
|
||||||
settings.putProperty(AddImageAction.IMAGEID_PROP, imageId);
|
settings.putProperty(AddImageAction.IMAGEID_PROP, imageId);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Can't bail and revert image add after commit, so disable image cleanup
|
// Can't bail and revert image add after commit, so disable image cleanup
|
||||||
// task
|
// task
|
||||||
|
|
||||||
// RAMAN TBD: cleanup task should be handled by the caller
|
|
||||||
// cleanupImage.disable();
|
|
||||||
|
|
||||||
settings.putProperty(AddImageAction.IMAGECLEANUPTASK_PROP, null);
|
settings.putProperty(AddImageAction.IMAGECLEANUPTASK_PROP, null);
|
||||||
|
|
||||||
@ -360,10 +339,11 @@ public class ImageDSProcessor implements DataSourceProcessor {
|
|||||||
protected void done() {
|
protected void done() {
|
||||||
|
|
||||||
logger.log(Level.INFO, "RAMAN: done()...");
|
logger.log(Level.INFO, "RAMAN: done()...");
|
||||||
|
|
||||||
//these are required to stop the CurrentDirectoryFetcher
|
|
||||||
progressBar.setIndeterminate(false);
|
|
||||||
setProgress(100);
|
setProgress(100);
|
||||||
|
|
||||||
|
// cancel
|
||||||
|
fetcher.cancel(true);
|
||||||
|
|
||||||
addImageDone = true;
|
addImageDone = true;
|
||||||
|
|
||||||
@ -372,19 +352,13 @@ public class ImageDSProcessor implements DataSourceProcessor {
|
|||||||
if (cancelled || hasCritError) {
|
if (cancelled || hasCritError) {
|
||||||
logger.log(Level.INFO, "Handling errors or interruption that occured in add image process");
|
logger.log(Level.INFO, "Handling errors or interruption that occured in add image process");
|
||||||
revert();
|
revert();
|
||||||
if (hasCritError) {
|
|
||||||
//core error
|
|
||||||
// RAMAN TBD: Error reporting needs to be removed from here. All errors are returned to caller directly.
|
|
||||||
//progressPanel.addErrors(errorString, true);
|
|
||||||
}
|
|
||||||
// Do not return yet. Callback must be called
|
// Do not return yet. Callback must be called
|
||||||
}
|
}
|
||||||
if (!errorList.isEmpty()) {
|
if (!errorList.isEmpty()) {
|
||||||
//data error (non-critical)
|
|
||||||
logger.log(Level.INFO, "Handling non-critical errors that occured in add image process");
|
logger.log(Level.INFO, "Handling non-critical errors that occured in add image process");
|
||||||
|
|
||||||
// RAMAN TBD: Error reporting needs to be removed from here. All errors are returned to caller directly.
|
// error are returned back to the caller
|
||||||
//progressPanel.addErrors(errorString, false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// When everything happens without an error:
|
// When everything happens without an error:
|
||||||
@ -393,28 +367,14 @@ public class ImageDSProcessor implements DataSourceProcessor {
|
|||||||
try {
|
try {
|
||||||
|
|
||||||
|
|
||||||
/* *****************************
|
|
||||||
* RAMAN TBD: the caller needs to handle the cleanup ???
|
|
||||||
// the add-image process needs to be reverted if the wizard doesn't finish
|
|
||||||
cleanupImage = action.new CleanupTask() {
|
|
||||||
//note, CleanupTask runs inside EWT thread
|
|
||||||
@Override
|
|
||||||
void cleanup() throws Exception {
|
|
||||||
logger.log(Level.INFO, "Running cleanup task after add image process");
|
|
||||||
revert();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
cleanupImage.enable();
|
|
||||||
* ************************/
|
|
||||||
|
|
||||||
//if (errorString == null) { // complete progress bar
|
|
||||||
if (errorList.isEmpty() ) { // complete progress bar
|
|
||||||
progressPanel.getComponent().setProgressBarTextAndColor("*Data Source added.", 100, Color.black);
|
|
||||||
}
|
|
||||||
|
|
||||||
// RAMAN TBD: this should not be happening in here - caller should do this
|
// RAMAN TBD: this should not be happening in here - caller should do this
|
||||||
|
|
||||||
// Get attention for the process finish
|
// Get attention for the process finish
|
||||||
|
/******
|
||||||
java.awt.Toolkit.getDefaultToolkit().beep(); //BEEP!
|
java.awt.Toolkit.getDefaultToolkit().beep(); //BEEP!
|
||||||
AddImageWizardAddingProgressVisual panel = progressPanel.getComponent();
|
AddImageWizardAddingProgressVisual panel = progressPanel.getComponent();
|
||||||
if (panel != null) {
|
if (panel != null) {
|
||||||
@ -423,9 +383,10 @@ public class ImageDSProcessor implements DataSourceProcessor {
|
|||||||
w.toFront();
|
w.toFront();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
* *******/
|
||||||
|
|
||||||
// Tell the panel we're done
|
// Tell the panel we're done
|
||||||
progressPanel.setStateFinished();
|
progressMonitor.setProgress(100);
|
||||||
|
|
||||||
|
|
||||||
if (newContents.isEmpty()) {
|
if (newContents.isEmpty()) {
|
||||||
@ -434,6 +395,7 @@ public class ImageDSProcessor implements DataSourceProcessor {
|
|||||||
try {
|
try {
|
||||||
commitImage(wizDescriptor);
|
commitImage(wizDescriptor);
|
||||||
} catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
|
errorList.add(ex.getMessage());
|
||||||
// Log error/display warning
|
// Log error/display warning
|
||||||
logger.log(Level.SEVERE, "Error adding image to case.", ex);
|
logger.log(Level.SEVERE, "Error adding image to case.", ex);
|
||||||
}
|
}
|
||||||
@ -442,28 +404,19 @@ public class ImageDSProcessor implements DataSourceProcessor {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
else //already commited?
|
else { //already commited?
|
||||||
{
|
|
||||||
logger.log(Level.INFO, "Assuming image already committed, will not commit.");
|
logger.log(Level.INFO, "Assuming image already committed, will not commit.");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Start ingest if we can
|
|
||||||
// RAMAN TBD - remove this from here
|
|
||||||
//startIngest();
|
|
||||||
|
|
||||||
} catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
//handle unchecked exceptions post image add
|
//handle unchecked exceptions post image add
|
||||||
|
|
||||||
|
errorList.add(ex.getMessage());
|
||||||
|
|
||||||
logger.log(Level.WARNING, "Unexpected errors occurred while running post add image cleanup. ", ex);
|
logger.log(Level.WARNING, "Unexpected errors occurred while running post add image cleanup. ", ex);
|
||||||
|
|
||||||
progressPanel.getComponent().setProgressBarTextAndColor("*Failed to add image.", 0, Color.black); // set error message
|
|
||||||
|
|
||||||
// Log error/display warning
|
|
||||||
|
|
||||||
logger.log(Level.SEVERE, "Error adding image to case", ex);
|
logger.log(Level.SEVERE, "Error adding image to case", ex);
|
||||||
} finally {
|
} finally {
|
||||||
|
|
||||||
@ -497,13 +450,6 @@ public class ImageDSProcessor implements DataSourceProcessor {
|
|||||||
callbackObj.done(result, errorList, newContents);
|
callbackObj.done(result, errorList, newContents);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*****
|
|
||||||
public List<Content> getNewContents() {
|
|
||||||
|
|
||||||
return newContents;
|
|
||||||
|
|
||||||
}
|
|
||||||
* ********/
|
|
||||||
|
|
||||||
void cancelTask() {
|
void cancelTask() {
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user