rename ingest context to pipeline context

This commit is contained in:
adam-m 2013-02-25 10:48:25 -05:00
parent b3506b8ec0
commit 9c136f8e6f
18 changed files with 69 additions and 71 deletions

View File

@ -40,7 +40,7 @@ public class IngestImageThread extends SwingWorker<Void, Void> {
private final Logger logger = Logger.getLogger(IngestImageThread.class.getName()); private final Logger logger = Logger.getLogger(IngestImageThread.class.getName());
private ProgressHandle progress; private ProgressHandle progress;
private final IngestContext<IngestModuleImage>ingestContext; private final PipelineContext<IngestModuleImage>pipelineContext;
private final Image image; private final Image image;
private final IngestModuleImage module; private final IngestModuleImage module;
private IngestImageWorkerController controller; private IngestImageWorkerController controller;
@ -52,20 +52,20 @@ public class IngestImageThread extends SwingWorker<Void, Void> {
//TODO use a real queue and manager to allow multiple different modules to run in parallel //TODO use a real queue and manager to allow multiple different modules to run in parallel
private static final Lock imageIngestModuleLock = new ReentrantReadWriteLock(true).writeLock(); private static final Lock imageIngestModuleLock = new ReentrantReadWriteLock(true).writeLock();
IngestImageThread(IngestManager manager, IngestContext<IngestModuleImage>ingestContext, Image image, IngestModuleImage module, IngestModuleInit init) { IngestImageThread(IngestManager manager, PipelineContext<IngestModuleImage>pipelineContext, Image image, IngestModuleImage module, IngestModuleInit init) {
this.manager = manager; this.manager = manager;
this.ingestContext = ingestContext; this.pipelineContext = pipelineContext;
this.image = image; this.image = image;
this.module = module; this.module = module;
this.init = init; this.init = init;
} }
IngestContext<IngestModuleImage>getContext() { PipelineContext<IngestModuleImage>getContext() {
return ingestContext; return pipelineContext;
} }
Image getImage() { Image getImage() {
return ingestContext.getScheduledTask().getImage(); return pipelineContext.getScheduledTask().getImage();
} }
IngestModuleImage getModule() { IngestModuleImage getModule() {
@ -120,7 +120,7 @@ public class IngestImageThread extends SwingWorker<Void, Void> {
final StopWatch timer = new StopWatch(); final StopWatch timer = new StopWatch();
timer.start(); timer.start();
try { try {
module.process(ingestContext, image, controller); module.process(pipelineContext, image, controller);
} catch (Exception e) { } catch (Exception e) {
logger.log(Level.WARNING, "Exception in module: " + module.getName() + " image: " + image.getName(), e); logger.log(Level.WARNING, "Exception in module: " + module.getName() + " image: " + image.getName(), e);
} finally { } finally {

View File

@ -257,10 +257,10 @@ public class IngestManager {
* Now we want to process this file with the same ingest context. * Now we want to process this file with the same ingest context.
* *
* @param file file to be scheduled * @param file file to be scheduled
* @param ingestContext ingest context used to ingest parent of the file to be scheduled * @param pipelineContext ingest context used to ingest parent of the file to be scheduled
*/ */
void scheduleFile(AbstractFile file, IngestContext ingestContext) { void scheduleFile(AbstractFile file, PipelineContext pipelineContext) {
scheduler.getFileScheduler().schedule(file, ingestContext); scheduler.getFileScheduler().schedule(file, pipelineContext);
} }
/** /**
@ -314,10 +314,10 @@ public class IngestManager {
IngestModuleInit moduleInit = new IngestModuleInit(); IngestModuleInit moduleInit = new IngestModuleInit();
moduleInit.setModuleArgs(taskModule.getArguments()); moduleInit.setModuleArgs(taskModule.getArguments());
IngestContext<IngestModuleImage>imageIngestContext = PipelineContext<IngestModuleImage>imagepipelineContext =
new IngestContext<IngestModuleImage>(imageTask, getProcessUnallocSpace()); new PipelineContext<IngestModuleImage>(imageTask, getProcessUnallocSpace());
final IngestImageThread newImageWorker = new IngestImageThread(this, final IngestImageThread newImageWorker = new IngestImageThread(this,
imageIngestContext, imageTask.getImage(), taskModule, moduleInit); imagepipelineContext, imageTask.getImage(), taskModule, moduleInit);
imageIngesters.add(newImageWorker); imageIngesters.add(newImageWorker);
@ -850,8 +850,8 @@ public class IngestManager {
//process AbstractFiles queue //process AbstractFiles queue
while (fileScheduler.hasNext()) { while (fileScheduler.hasNext()) {
final ProcessTask fileTask = fileScheduler.next(); final ProcessTask fileTask = fileScheduler.next();
final IngestContext<IngestModuleAbstractFile> fileIngestContext = fileTask.context; final PipelineContext<IngestModuleAbstractFile> filepipelineContext = fileTask.context;
final ScheduledImageTask<IngestModuleAbstractFile> fileIngestTask = fileIngestContext.getScheduledTask(); final ScheduledImageTask<IngestModuleAbstractFile> fileIngestTask = filepipelineContext.getScheduledTask();
final AbstractFile fileToProcess = fileTask.file; final AbstractFile fileToProcess = fileTask.file;
//clear return values from modules for last file //clear return values from modules for last file
@ -871,7 +871,7 @@ public class IngestManager {
try { try {
stats.logFileModuleStartProcess(module); stats.logFileModuleStartProcess(module);
IngestModuleAbstractFile.ProcessResult result = module.process IngestModuleAbstractFile.ProcessResult result = module.process
(fileIngestContext, fileToProcess); (filepipelineContext, fileToProcess);
stats.logFileModuleEndProcess(module); stats.logFileModuleEndProcess(module);
//store the result for subsequent modules for this file //store the result for subsequent modules for this file
@ -1076,19 +1076,19 @@ public class IngestManager {
//queue to schedulers //queue to schedulers
final boolean processUnalloc = getProcessUnallocSpace(); final boolean processUnalloc = getProcessUnallocSpace();
final ScheduledImageTask<IngestModuleImage> imageTask = new ScheduledImageTask<IngestModuleImage>(image, imageMods); final ScheduledImageTask<IngestModuleImage> imageTask = new ScheduledImageTask<IngestModuleImage>(image, imageMods);
final IngestContext<IngestModuleImage>imageIngestContext final PipelineContext<IngestModuleImage>imagepipelineContext
= new IngestContext<IngestModuleImage>(imageTask, processUnalloc); = new PipelineContext<IngestModuleImage>(imageTask, processUnalloc);
logger.log(Level.INFO, "Queing image ingest task: " + imageTask); logger.log(Level.INFO, "Queing image ingest task: " + imageTask);
progress.progress("Image Ingest" + " " + imageName, processed); progress.progress("Image Ingest" + " " + imageName, processed);
imageScheduler.schedule(imageIngestContext); imageScheduler.schedule(imagepipelineContext);
progress.progress("Image Ingest" + " " + imageName, ++processed); progress.progress("Image Ingest" + " " + imageName, ++processed);
final ScheduledImageTask fTask = new ScheduledImageTask(image, fileMods); final ScheduledImageTask fTask = new ScheduledImageTask(image, fileMods);
final IngestContext<IngestModuleAbstractFile>fileIngestContext final PipelineContext<IngestModuleAbstractFile>filepipelineContext
= new IngestContext<IngestModuleAbstractFile>(fTask, processUnalloc); = new PipelineContext<IngestModuleAbstractFile>(fTask, processUnalloc);
logger.log(Level.INFO, "Queing file ingest task: " + fTask); logger.log(Level.INFO, "Queing file ingest task: " + fTask);
progress.progress("File Ingest" + " " + imageName, processed); progress.progress("File Ingest" + " " + imageName, processed);
fileScheduler.schedule(fileIngestContext); fileScheduler.schedule(filepipelineContext);
progress.progress("File Ingest" + " " + imageName, ++processed); progress.progress("File Ingest" + " " + imageName, ++processed);
} //for images } //for images

View File

@ -40,9 +40,9 @@ public interface IngestModuleAbstractFile extends IngestModuleAbstract {
* Entry point to process file / directory by the module. See \ref ingestmodule_making for details * Entry point to process file / directory by the module. See \ref ingestmodule_making for details
* on what modules are responsible for doing. * on what modules are responsible for doing.
* *
* @param ingestContext the context in which the ingest runs (with its own settings, modules, etc) * @param pipelineContext the context in which the ingest runs (with its own settings, modules, etc)
* @param abstractFile file to process * @param abstractFile file to process
* @return ProcessResult result of the processing that can be used in the pipeline as a hint whether to further process this file * @return ProcessResult result of the processing that can be used in the pipeline as a hint whether to further process this file
*/ */
public ProcessResult process(IngestContext<IngestModuleAbstractFile>ingestContext, AbstractFile abstractFile); public ProcessResult process(PipelineContext<IngestModuleAbstractFile>pipelineContext, AbstractFile abstractFile);
} }

View File

@ -43,9 +43,9 @@ public interface IngestModuleImage extends IngestModuleAbstract {
* The module is responsible for posting progress to controller * The module is responsible for posting progress to controller
* And to periodically check controller if it should break out of the processing loop because task has been canceled * And to periodically check controller if it should break out of the processing loop because task has been canceled
* *
* @param ingestContext the context in which the ingest runs (with its own settings, modules, etc) * @param pipelineContext the context in which the ingest runs (with its own settings, modules, etc)
* @param image to process * @param image to process
* @param controller to post progress to and to use for checking if cancellation has occurred * @param controller to post progress to and to use for checking if cancellation has occurred
*/ */
public void process(IngestContext<IngestModuleImage>ingestContext, Image image, IngestImageWorkerController controller); public void process(PipelineContext<IngestModuleImage>pipelineContext, Image image, IngestImageWorkerController controller);
} }

View File

@ -204,9 +204,9 @@ class IngestScheduler {
static class ProcessTask { static class ProcessTask {
final AbstractFile file; final AbstractFile file;
final IngestContext<IngestModuleAbstractFile> context; final PipelineContext<IngestModuleAbstractFile> context;
public ProcessTask(AbstractFile file, IngestContext<IngestModuleAbstractFile> context) { public ProcessTask(AbstractFile file, PipelineContext<IngestModuleAbstractFile> context) {
this.file = file; this.file = file;
this.context = context; this.context = context;
} }
@ -267,7 +267,7 @@ class IngestScheduler {
* @param context the original ingest context * @param context the original ingest context
* @return * @return
*/ */
private static List<ProcessTask> createFromScheduledTask(IngestContext<IngestModuleAbstractFile> context) { private static List<ProcessTask> createFromScheduledTask(PipelineContext<IngestModuleAbstractFile> context) {
ScheduledImageTask<IngestModuleAbstractFile> scheduledTask = context.getScheduledTask(); ScheduledImageTask<IngestModuleAbstractFile> scheduledTask = context.getScheduledTask();
Collection<AbstractFile> rootObjects = scheduledTask.getImage().accept(new GetRootDirVisitor()); Collection<AbstractFile> rootObjects = scheduledTask.getImage().accept(new GetRootDirVisitor());
List<AbstractFile> firstLevelFiles = new ArrayList<AbstractFile>(); List<AbstractFile> firstLevelFiles = new ArrayList<AbstractFile>();
@ -356,7 +356,7 @@ class IngestScheduler {
* @param originalContext original image schedule context that was used to * @param originalContext original image schedule context that was used to
* schedule the parent origin file, with the modules, settings, etc. * schedule the parent origin file, with the modules, settings, etc.
*/ */
synchronized void schedule(AbstractFile file, IngestContext originalContext) { synchronized void schedule(AbstractFile file, PipelineContext originalContext) {
ScheduledImageTask originalTask = originalContext.getScheduledTask(); ScheduledImageTask originalTask = originalContext.getScheduledTask();
//skip if task contains no modules //skip if task contains no modules
@ -378,7 +378,7 @@ class IngestScheduler {
* *
* @param task image schedule task with image and associated modules * @param task image schedule task with image and associated modules
*/ */
synchronized void schedule(IngestContext<IngestModuleAbstractFile> context) { synchronized void schedule(PipelineContext<IngestModuleAbstractFile> context) {
final ScheduledImageTask task = context.getScheduledTask(); final ScheduledImageTask task = context.getScheduledTask();
@ -876,7 +876,7 @@ class IngestScheduler {
tasks = new LinkedList<ScheduledImageTask<IngestModuleImage>>(); tasks = new LinkedList<ScheduledImageTask<IngestModuleImage>>();
} }
synchronized void schedule(IngestContext<IngestModuleImage> context) { synchronized void schedule(PipelineContext<IngestModuleImage> context) {
ScheduledImageTask<IngestModuleImage> task = context.getScheduledTask(); ScheduledImageTask<IngestModuleImage> task = context.getScheduledTask();

View File

@ -128,9 +128,9 @@ public class IngestServices {
* *
* @param file file to be scheduled * @param file file to be scheduled
*/ */
public void scheduleFile(AbstractFile file, IngestContext ingestContext) { public void scheduleFile(AbstractFile file, PipelineContext pipelineContext) {
logger.log(Level.INFO, "Scheduling file: " + file.getName()); logger.log(Level.INFO, "Scheduling file: " + file.getName());
manager.scheduleFile(file, ingestContext); manager.scheduleFile(file, pipelineContext);
} }

View File

@ -18,8 +18,6 @@
*/ */
package org.sleuthkit.autopsy.ingest; package org.sleuthkit.autopsy.ingest;
import java.util.HashMap;
import java.util.Map;
import java.util.Objects; import java.util.Objects;
@ -34,11 +32,11 @@ import java.util.Objects;
* @param T type of the ingest associated with the context (file or image) * @param T type of the ingest associated with the context (file or image)
* *
*/ */
public class IngestContext <T extends IngestModuleAbstract> { public class PipelineContext <T extends IngestModuleAbstract> {
private final ScheduledImageTask<T> task; private final ScheduledImageTask<T> task;
private final boolean processUnalloc; private final boolean processUnalloc;
IngestContext(ScheduledImageTask<T> task, boolean processUnalloc) { PipelineContext(ScheduledImageTask<T> task, boolean processUnalloc) {
this.task = task; this.task = task;
this.processUnalloc = processUnalloc; this.processUnalloc = processUnalloc;
} }
@ -56,7 +54,7 @@ public class IngestContext <T extends IngestModuleAbstract> {
@Override @Override
public String toString() { public String toString() {
return "IngestContext{" + "task=" + task + ", processUnalloc=" + processUnalloc + '}'; return "pipelineContext{" + "task=" + task + ", processUnalloc=" + processUnalloc + '}';
} }
@Override @Override
@ -75,7 +73,7 @@ public class IngestContext <T extends IngestModuleAbstract> {
if (getClass() != obj.getClass()) { if (getClass() != obj.getClass()) {
return false; return false;
} }
final IngestContext<T> other = (IngestContext<T>) obj; final PipelineContext<T> other = (PipelineContext<T>) obj;
if (!Objects.equals(this.task, other.task)) { if (!Objects.equals(this.task, other.task)) {
return false; return false;

View File

@ -38,7 +38,7 @@ import java.util.Collections;
import java.util.Date; import java.util.Date;
import java.util.logging.Level; import java.util.logging.Level;
import org.sleuthkit.autopsy.coreutils.Logger; import org.sleuthkit.autopsy.coreutils.Logger;
import org.sleuthkit.autopsy.ingest.IngestContext; import org.sleuthkit.autopsy.ingest.PipelineContext;
import org.sleuthkit.autopsy.ingest.IngestServices; import org.sleuthkit.autopsy.ingest.IngestServices;
import org.sleuthkit.autopsy.ingest.IngestMessage; import org.sleuthkit.autopsy.ingest.IngestMessage;
import org.sleuthkit.autopsy.ingest.IngestMessage.MessageType; import org.sleuthkit.autopsy.ingest.IngestMessage.MessageType;
@ -89,7 +89,7 @@ public final class ExifParserFileIngestModule implements IngestModuleAbstractFil
} }
@Override @Override
public IngestModuleAbstractFile.ProcessResult process(IngestContext<IngestModuleAbstractFile>ingestContext, AbstractFile content) { public IngestModuleAbstractFile.ProcessResult process(PipelineContext<IngestModuleAbstractFile>pipelineContext, AbstractFile content) {
//skip unalloc //skip unalloc
if(content.getType().equals(TSK_DB_FILES_TYPE_ENUM.UNALLOC_BLOCKS)) { if(content.getType().equals(TSK_DB_FILES_TYPE_ENUM.UNALLOC_BLOCKS)) {

View File

@ -25,7 +25,7 @@ import java.util.Map;
import java.util.logging.Level; import java.util.logging.Level;
import org.sleuthkit.autopsy.casemodule.Case; import org.sleuthkit.autopsy.casemodule.Case;
import org.sleuthkit.autopsy.coreutils.Logger; import org.sleuthkit.autopsy.coreutils.Logger;
import org.sleuthkit.autopsy.ingest.IngestContext; import org.sleuthkit.autopsy.ingest.PipelineContext;
import org.sleuthkit.autopsy.ingest.IngestMessage; import org.sleuthkit.autopsy.ingest.IngestMessage;
import org.sleuthkit.autopsy.ingest.IngestModuleAbstractFile; import org.sleuthkit.autopsy.ingest.IngestModuleAbstractFile;
import org.sleuthkit.autopsy.ingest.IngestModuleInit; import org.sleuthkit.autopsy.ingest.IngestModuleInit;
@ -193,7 +193,7 @@ public class HashDbIngestModule implements IngestModuleAbstractFile {
@Override @Override
public ProcessResult process(IngestContext<IngestModuleAbstractFile>ingestContext, AbstractFile file) { public ProcessResult process(PipelineContext<IngestModuleAbstractFile>pipelineContext, AbstractFile file) {
//skip unalloc //skip unalloc
if (file.getType().equals(TskData.TSK_DB_FILES_TYPE_ENUM.UNALLOC_BLOCKS)) { if (file.getType().equals(TskData.TSK_DB_FILES_TYPE_ENUM.UNALLOC_BLOCKS)) {
return IngestModuleAbstractFile.ProcessResult.OK; return IngestModuleAbstractFile.ProcessResult.OK;

View File

@ -45,7 +45,7 @@ import org.sleuthkit.autopsy.casemodule.Case;
import org.sleuthkit.autopsy.coreutils.EscapeUtil; import org.sleuthkit.autopsy.coreutils.EscapeUtil;
import org.sleuthkit.autopsy.coreutils.StopWatch; import org.sleuthkit.autopsy.coreutils.StopWatch;
import org.sleuthkit.autopsy.coreutils.StringExtract.StringExtractUnicodeTable.SCRIPT; import org.sleuthkit.autopsy.coreutils.StringExtract.StringExtractUnicodeTable.SCRIPT;
import org.sleuthkit.autopsy.ingest.IngestContext; import org.sleuthkit.autopsy.ingest.PipelineContext;
import org.sleuthkit.autopsy.ingest.IngestServices; import org.sleuthkit.autopsy.ingest.IngestServices;
import org.sleuthkit.autopsy.ingest.IngestMessage; import org.sleuthkit.autopsy.ingest.IngestMessage;
import org.sleuthkit.autopsy.ingest.IngestMessage.MessageType; import org.sleuthkit.autopsy.ingest.IngestMessage.MessageType;
@ -147,7 +147,7 @@ public final class KeywordSearchIngestModule implements IngestModuleAbstractFile
} }
@Override @Override
public ProcessResult process(IngestContext<IngestModuleAbstractFile>ingestContext, AbstractFile abstractFile) { public ProcessResult process(PipelineContext<IngestModuleAbstractFile>pipelineContext, AbstractFile abstractFile) {
if (initialized == false) //error initializing indexing/Solr if (initialized == false) //error initializing indexing/Solr
{ {

View File

@ -40,7 +40,7 @@ import java.io.UnsupportedEncodingException;
import java.sql.SQLException; import java.sql.SQLException;
import org.sleuthkit.autopsy.casemodule.services.FileManager; import org.sleuthkit.autopsy.casemodule.services.FileManager;
import org.sleuthkit.autopsy.coreutils.EscapeUtil; import org.sleuthkit.autopsy.coreutils.EscapeUtil;
import org.sleuthkit.autopsy.ingest.IngestContext; import org.sleuthkit.autopsy.ingest.PipelineContext;
import org.sleuthkit.autopsy.ingest.IngestImageWorkerController; import org.sleuthkit.autopsy.ingest.IngestImageWorkerController;
import org.sleuthkit.autopsy.ingest.IngestModuleImage; import org.sleuthkit.autopsy.ingest.IngestModuleImage;
import org.sleuthkit.autopsy.ingest.IngestModuleInit; import org.sleuthkit.autopsy.ingest.IngestModuleInit;
@ -90,7 +90,7 @@ public class Chrome extends Extract implements IngestModuleImage {
} }
@Override @Override
public void process(IngestContext<IngestModuleImage>ingestContext, Image image, IngestImageWorkerController controller) { public void process(PipelineContext<IngestModuleImage>pipelineContext, Image image, IngestImageWorkerController controller) {
this.getHistory(image, controller); this.getHistory(image, controller);
this.getBookmark(image, controller); this.getBookmark(image, controller);
this.getCookie(image, controller); this.getCookie(image, controller);

View File

@ -67,7 +67,7 @@ import org.sleuthkit.datamodel.Content;
import org.sleuthkit.datamodel.FsContent; import org.sleuthkit.datamodel.FsContent;
import org.sleuthkit.datamodel.SleuthkitCase; import org.sleuthkit.datamodel.SleuthkitCase;
import org.sleuthkit.autopsy.coreutils.PlatformUtil; import org.sleuthkit.autopsy.coreutils.PlatformUtil;
import org.sleuthkit.autopsy.ingest.IngestContext; import org.sleuthkit.autopsy.ingest.PipelineContext;
import org.sleuthkit.autopsy.ingest.IngestModuleImage; import org.sleuthkit.autopsy.ingest.IngestModuleImage;
import org.sleuthkit.autopsy.ingest.IngestModuleInit; import org.sleuthkit.autopsy.ingest.IngestModuleInit;
import org.sleuthkit.datamodel.*; import org.sleuthkit.datamodel.*;
@ -117,7 +117,7 @@ public class ExtractIE extends Extract implements IngestModuleImage {
} }
@Override @Override
public void process(IngestContext<IngestModuleImage>ingestContext, Image image, IngestImageWorkerController controller) { public void process(PipelineContext<IngestModuleImage>pipelineContext, Image image, IngestImageWorkerController controller) {
this.getHistory(image, controller); this.getHistory(image, controller);
this.getBookmark(image, controller); this.getBookmark(image, controller);
this.getCookie(image, controller); this.getCookie(image, controller);

View File

@ -38,7 +38,7 @@ import org.sleuthkit.autopsy.casemodule.Case;
import org.sleuthkit.autopsy.coreutils.Logger; import org.sleuthkit.autopsy.coreutils.Logger;
import org.sleuthkit.autopsy.coreutils.PlatformUtil; import org.sleuthkit.autopsy.coreutils.PlatformUtil;
import org.sleuthkit.autopsy.datamodel.ContentUtils; import org.sleuthkit.autopsy.datamodel.ContentUtils;
import org.sleuthkit.autopsy.ingest.IngestContext; import org.sleuthkit.autopsy.ingest.PipelineContext;
import org.sleuthkit.autopsy.ingest.IngestImageWorkerController; import org.sleuthkit.autopsy.ingest.IngestImageWorkerController;
import org.sleuthkit.autopsy.ingest.IngestModuleImage; import org.sleuthkit.autopsy.ingest.IngestModuleImage;
import org.sleuthkit.autopsy.ingest.IngestModuleInit; import org.sleuthkit.autopsy.ingest.IngestModuleInit;
@ -389,7 +389,7 @@ public class ExtractRegistry extends Extract implements IngestModuleImage {
} }
@Override @Override
public void process(IngestContext<IngestModuleImage>ingestContext, Image image, IngestImageWorkerController controller) { public void process(PipelineContext<IngestModuleImage>pipelineContext, Image image, IngestImageWorkerController controller) {
this.getRegistryFiles(image, controller); this.getRegistryFiles(image, controller);
} }

View File

@ -34,7 +34,7 @@ import java.util.logging.Level;
import org.sleuthkit.autopsy.casemodule.services.FileManager; import org.sleuthkit.autopsy.casemodule.services.FileManager;
import org.sleuthkit.autopsy.coreutils.EscapeUtil; import org.sleuthkit.autopsy.coreutils.EscapeUtil;
import org.sleuthkit.autopsy.datamodel.ContentUtils; import org.sleuthkit.autopsy.datamodel.ContentUtils;
import org.sleuthkit.autopsy.ingest.IngestContext; import org.sleuthkit.autopsy.ingest.PipelineContext;
import org.sleuthkit.autopsy.ingest.IngestImageWorkerController; import org.sleuthkit.autopsy.ingest.IngestImageWorkerController;
import org.sleuthkit.autopsy.ingest.IngestServices; import org.sleuthkit.autopsy.ingest.IngestServices;
import org.sleuthkit.autopsy.ingest.IngestModuleImage; import org.sleuthkit.autopsy.ingest.IngestModuleImage;
@ -84,7 +84,7 @@ public class Firefox extends Extract implements IngestModuleImage {
} }
@Override @Override
public void process(IngestContext<IngestModuleImage>ingestContext, Image image, IngestImageWorkerController controller) { public void process(PipelineContext<IngestModuleImage>pipelineContext, Image image, IngestImageWorkerController controller) {
this.getHistory(image, controller); this.getHistory(image, controller);
this.getBookmark(image, controller); this.getBookmark(image, controller);
this.getDownload(image, controller); this.getDownload(image, controller);

View File

@ -26,7 +26,7 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.logging.Level; import java.util.logging.Level;
import org.sleuthkit.autopsy.coreutils.Logger; import org.sleuthkit.autopsy.coreutils.Logger;
import org.sleuthkit.autopsy.ingest.IngestContext; import org.sleuthkit.autopsy.ingest.PipelineContext;
import org.sleuthkit.autopsy.ingest.IngestImageWorkerController; import org.sleuthkit.autopsy.ingest.IngestImageWorkerController;
import org.sleuthkit.autopsy.ingest.IngestServices; import org.sleuthkit.autopsy.ingest.IngestServices;
import org.sleuthkit.autopsy.ingest.IngestMessage; import org.sleuthkit.autopsy.ingest.IngestMessage;
@ -65,7 +65,7 @@ public final class RAImageIngestModule implements IngestModuleImage {
} }
@Override @Override
public void process(IngestContext<IngestModuleImage>ingestContext, Image image, IngestImageWorkerController controller) { public void process(PipelineContext<IngestModuleImage>pipelineContext, Image image, IngestImageWorkerController controller) {
services.postMessage(IngestMessage.createMessage(++messageId, MessageType.INFO, this, "Started " + image.getName())); services.postMessage(IngestMessage.createMessage(++messageId, MessageType.INFO, this, "Started " + image.getName()));
controller.switchToDeterminate(modules.size()); controller.switchToDeterminate(modules.size());
@ -79,7 +79,7 @@ public final class RAImageIngestModule implements IngestModuleImage {
break; break;
} }
try { try {
module.process(ingestContext, image, controller); module.process(pipelineContext, image, controller);
} catch (Exception ex) { } catch (Exception ex) {
logger.log(Level.SEVERE, "Exception occurred in " + module.getName(), ex); logger.log(Level.SEVERE, "Exception occurred in " + module.getName(), ex);
subCompleted.append(module.getName()).append(" failed - see log for details <br>"); subCompleted.append(module.getName()).append(" failed - see log for details <br>");

View File

@ -37,7 +37,7 @@ import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException; import javax.xml.parsers.ParserConfigurationException;
import org.sleuthkit.autopsy.coreutils.PlatformUtil; import org.sleuthkit.autopsy.coreutils.PlatformUtil;
import org.sleuthkit.autopsy.coreutils.XMLUtil; import org.sleuthkit.autopsy.coreutils.XMLUtil;
import org.sleuthkit.autopsy.ingest.IngestContext; import org.sleuthkit.autopsy.ingest.PipelineContext;
import org.sleuthkit.autopsy.ingest.IngestImageWorkerController; import org.sleuthkit.autopsy.ingest.IngestImageWorkerController;
import org.sleuthkit.autopsy.ingest.IngestModuleAbstract; import org.sleuthkit.autopsy.ingest.IngestModuleAbstract;
import org.sleuthkit.autopsy.ingest.IngestModuleImage; import org.sleuthkit.autopsy.ingest.IngestModuleImage;
@ -325,7 +325,7 @@ public class SearchEngineURLQueryAnalyzer extends Extract implements IngestModul
} }
@Override @Override
public void process(IngestContext<IngestModuleImage>ingestContext, Image image, IngestImageWorkerController controller) { public void process(PipelineContext<IngestModuleImage>pipelineContext, Image image, IngestImageWorkerController controller) {
this.getURLs(image, controller); this.getURLs(image, controller);
logger.info("Search Engine stats: \n" + getTotals()); logger.info("Search Engine stats: \n" + getTotals());
} }

View File

@ -48,7 +48,7 @@ import org.netbeans.api.progress.ProgressHandleFactory;
import org.sleuthkit.autopsy.casemodule.Case; import org.sleuthkit.autopsy.casemodule.Case;
import org.sleuthkit.autopsy.casemodule.services.FileManager; import org.sleuthkit.autopsy.casemodule.services.FileManager;
import org.sleuthkit.autopsy.coreutils.MessageNotifyUtil; import org.sleuthkit.autopsy.coreutils.MessageNotifyUtil;
import org.sleuthkit.autopsy.ingest.IngestContext; import org.sleuthkit.autopsy.ingest.PipelineContext;
import org.sleuthkit.autopsy.ingest.IngestMessage; import org.sleuthkit.autopsy.ingest.IngestMessage;
import org.sleuthkit.datamodel.BlackboardArtifact; import org.sleuthkit.datamodel.BlackboardArtifact;
import org.sleuthkit.datamodel.BlackboardArtifact.ARTIFACT_TYPE; import org.sleuthkit.datamodel.BlackboardArtifact.ARTIFACT_TYPE;
@ -145,7 +145,7 @@ public final class SevenZipIngestModule implements IngestModuleAbstractFile {
} }
@Override @Override
public ProcessResult process(IngestContext<IngestModuleAbstractFile> ingestContext, AbstractFile abstractFile) { public ProcessResult process(PipelineContext<IngestModuleAbstractFile> pipelineContext, AbstractFile abstractFile) {
if (initialized == false) { //error initializing the module if (initialized == false) { //error initializing the module
logger.log(Level.WARNING, "Skipping processing, module not initialized, file: " + abstractFile.getName()); logger.log(Level.WARNING, "Skipping processing, module not initialized, file: " + abstractFile.getName());
@ -178,10 +178,10 @@ public final class SevenZipIngestModule implements IngestModuleAbstractFile {
++processedFiles; ++processedFiles;
List<AbstractFile> unpackedFiles = unpack(ingestContext, abstractFile); List<AbstractFile> unpackedFiles = unpack(pipelineContext, abstractFile);
if (!unpackedFiles.isEmpty()) { if (!unpackedFiles.isEmpty()) {
sendNewFilesEvent(unpackedFiles); sendNewFilesEvent(unpackedFiles);
rescheduleNewFiles(ingestContext, unpackedFiles); rescheduleNewFiles(pipelineContext, unpackedFiles);
} }
//process, return error if occurred //process, return error if occurred
@ -192,9 +192,9 @@ public final class SevenZipIngestModule implements IngestModuleAbstractFile {
private void sendNewFilesEvent(List<AbstractFile> unpackedFiles) { private void sendNewFilesEvent(List<AbstractFile> unpackedFiles) {
} }
private void rescheduleNewFiles(IngestContext<IngestModuleAbstractFile> ingestContext, List<AbstractFile> unpackedFiles) { private void rescheduleNewFiles(PipelineContext<IngestModuleAbstractFile> pipelineContext, List<AbstractFile> unpackedFiles) {
for (AbstractFile unpackedFile : unpackedFiles) { for (AbstractFile unpackedFile : unpackedFiles) {
services.scheduleFile(unpackedFile, ingestContext); services.scheduleFile(unpackedFile, pipelineContext);
} }
} }
@ -233,7 +233,7 @@ public final class SevenZipIngestModule implements IngestModuleAbstractFile {
//TODO reimplement recursion depth check //TODO reimplement recursion depth check
// Integer curDepth = (Integer) ingestContext.getContextParamsValue(CONTEXT_DEPTH_PARAM); // Integer curDepth = (Integer) pipelineContext.getContextParamsValue(CONTEXT_DEPTH_PARAM);
// if (curDepth == null) { // if (curDepth == null) {
// curDepth = 1; // curDepth = 1;
// } else { // } else {
@ -244,7 +244,7 @@ public final class SevenZipIngestModule implements IngestModuleAbstractFile {
// "The archive is " + curDepth + " levels deep, skipping processing of this archive and its contents "); // "The archive is " + curDepth + " levels deep, skipping processing of this archive and its contents ");
// return unpackedFiles; // return unpackedFiles;
// } else { // } else {
// ingestContext.addContextParamsValue(CONTEXT_DEPTH_PARAM, curDepth); // pipelineContext.addContextParamsValue(CONTEXT_DEPTH_PARAM, curDepth);
// } // }
} }
@ -302,11 +302,11 @@ public final class SevenZipIngestModule implements IngestModuleAbstractFile {
/** /**
* Unpack the file to local folder and return a list of derived files * Unpack the file to local folder and return a list of derived files
* *
* @param ingestContext current ingest context * @param pipelineContext current ingest context
* @param archiveFile file to unpack * @param archiveFile file to unpack
* @return list of unpacked derived files * @return list of unpacked derived files
*/ */
private List<AbstractFile> unpack(IngestContext<IngestModuleAbstractFile> ingestContext, AbstractFile archiveFile) { private List<AbstractFile> unpack(PipelineContext<IngestModuleAbstractFile> pipelineContext, AbstractFile archiveFile) {
List<AbstractFile> unpackedFiles = Collections.<AbstractFile>emptyList(); List<AbstractFile> unpackedFiles = Collections.<AbstractFile>emptyList();
if (isZipBombArchiveCheck(archiveFile)) { if (isZipBombArchiveCheck(archiveFile)) {

View File

@ -48,7 +48,7 @@ import org.apache.commons.lang.StringEscapeUtils;
import org.sleuthkit.autopsy.casemodule.Case; import org.sleuthkit.autopsy.casemodule.Case;
import org.sleuthkit.autopsy.coreutils.Logger; import org.sleuthkit.autopsy.coreutils.Logger;
import org.sleuthkit.autopsy.datamodel.ContentUtils; import org.sleuthkit.autopsy.datamodel.ContentUtils;
import org.sleuthkit.autopsy.ingest.IngestContext; import org.sleuthkit.autopsy.ingest.PipelineContext;
import org.sleuthkit.autopsy.ingest.IngestModuleInit; import org.sleuthkit.autopsy.ingest.IngestModuleInit;
import org.sleuthkit.datamodel.AbstractFile; import org.sleuthkit.datamodel.AbstractFile;
import org.sleuthkit.datamodel.Content; import org.sleuthkit.datamodel.Content;
@ -77,7 +77,7 @@ public class ThunderbirdMboxFileIngestModule implements IngestModuleAbstractFile
} }
@Override @Override
public ProcessResult process(IngestContext<IngestModuleAbstractFile>ingestContext, AbstractFile abstractFile) { public ProcessResult process(PipelineContext<IngestModuleAbstractFile>ingestContext, AbstractFile abstractFile) {
ThunderbirdEmailParser mbox = new ThunderbirdEmailParser(); ThunderbirdEmailParser mbox = new ThunderbirdEmailParser();
boolean isMbox = false; boolean isMbox = false;