Autopsy  4.0
Graphical digital forensics platform for The Sleuth Kit and other tools.
Classes | Public Member Functions | List of all members
org.sleuthkit.autopsy.ingest.IngestModule Interface Reference

Inherited by org.sleuthkit.autopsy.ingest.DataSourceIngestModule, and org.sleuthkit.autopsy.ingest.FileIngestModule.

Classes

class  IngestModuleException
 
enum  ProcessResult
 

Public Member Functions

void startUp (IngestJobContext context) throws IngestModuleException
 

Detailed Description

The interface that must be implemented by all ingest modules.

Autopsy will generally use several instances of an ingest module for each ingest job it performs (one for each thread that it is using).

Autopsy will call startUp() before any data is processed, will pass any data to be analyzed into the process() method (FileIngestModule.process() or DataSourceIngestModule.process()), and call shutDown() after either all data is analyzed or the user has canceled the job.

Autopsy may use multiple threads to complete an ingest job, but it is guaranteed that a module instance will always be called from a single thread. Therefore, you can easily have thread-safe code by not using any static member variables.

If the module instances must share resources, the modules are responsible for synchronizing access to the shared resources and doing reference counting as required to release those resources correctly. Also, more than one ingest job may be in progress at any given time. This must also be taken into consideration when sharing resources between module instances.

TIP: An ingest module that does not require initialization or clean up may extend the abstract IngestModuleAdapter class to get a default "do nothing" implementation of this interface.

Definition at line 47 of file IngestModule.java.

Member Function Documentation

void org.sleuthkit.autopsy.ingest.IngestModule.startUp ( IngestJobContext  context) throws IngestModuleException

Invoked by Autopsy to allow an ingest module instance to set up any internal data structures and acquire any private resources it will need during an ingest job. If the module depends on loading any resources, it should do so in this method so that it can throw an exception in the case of an error and alert the user. Exceptions that are thrown from process() and shutDown() are logged, but do not stop processing of the data source.

Parameters
contextProvides data and services specific to the ingest job and the ingest pipeline of which the module is a part.
Exceptions
org.sleuthkit.autopsy.ingest.IngestModule.IngestModuleException

Implemented in org.sleuthkit.autopsy.ingest.FileIngestPipeline.PipelineModule, org.sleuthkit.autopsy.keywordsearch.KeywordSearchIngestModule, org.sleuthkit.autopsy.modules.fileextmismatch.FileExtMismatchIngestModule, org.sleuthkit.autopsy.modules.exif.ExifParserFileIngestModule, org.sleuthkit.autopsy.modules.hashdatabase.HashDbIngestModule, org.sleuthkit.autopsy.examples.SampleExecutableDataSourceIngestModule, org.sleuthkit.autopsy.modules.filetypeid.FileTypeIdIngestModule, org.sleuthkit.autopsy.thunderbirdparser.ThunderbirdMboxFileIngestModule, org.sleuthkit.autopsy.modules.embeddedfileextractor.EmbeddedFileExtractorIngestModule, org.sleuthkit.autopsy.modules.e01verify.E01VerifyIngestModule, org.sleuthkit.autopsy.recentactivity.RAImageIngestModule, org.sleuthkit.autopsy.ingest.DataSourceIngestModuleAdapter, and org.sleuthkit.autopsy.ingest.FileIngestModuleAdapter.

Referenced by org.sleuthkit.autopsy.ingest.FileIngestPipeline.PipelineModule.startUp().


The documentation for this interface was generated from the following file:

Copyright © 2012-2015 Basis Technology. Generated on: Wed Apr 6 2016
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.