Autopsy  4.14.0
Graphical digital forensics platform for The Sleuth Kit and other tools.
Classes | Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
org.sleuthkit.autopsy.casemodule.Case Class Reference

Classes

class  CancelButtonListener
 
interface  CaseAction
 
enum  CaseLockType
 
enum  CaseType
 
enum  Events
 
class  SleuthkitEventListener
 
class  TaskThreadFactory
 

Public Member Functions

Image addImage (String imgPath, long imgId, String timeZone) throws CaseActionException
 
void addReport (String localPath, String srcModuleName, String reportName) throws TskCoreException
 
Report addReport (String localPath, String srcModuleName, String reportName, Content parent) throws TskCoreException
 
void closeCase () throws CaseActionException
 
SleuthkitCase createPortableCase (String caseName, File portableCaseFolder) throws TskCoreException
 
void deleteReports (Collection<?extends Report > reports) throws TskCoreException
 
void deleteReports (Collection<?extends Report > reports, boolean deleteFromDisk) throws TskCoreException
 
List< Report > getAllReports () throws TskCoreException
 
String getCacheDirectory ()
 
String getCaseDirectory ()
 
String getCaseNotes ()
 
CaseType getCaseType ()
 
String getConfigDirectory ()
 
String getCreatedDate ()
 
List< Content > getDataSources () throws TskCoreException
 
String getDisplayName ()
 
String getExaminer ()
 
String getExaminerEmail ()
 
String getExaminerPhone ()
 
String getExportDirectory ()
 
String getLogDirectoryPath ()
 
String getModuleDirectory ()
 
String getModuleOutputDirectoryRelativePath ()
 
String getModulesOutputDirAbsPath ()
 
String getName ()
 
String getNumber ()
 
String getOutputDirectory ()
 
String getReportDirectory ()
 
Services getServices ()
 
SleuthkitCase getSleuthkitCase ()
 
String getTempDirectory ()
 
String getTextIndexName ()
 
Set< TimeZone > getTimeZone ()
 
Set< TimeZone > getTimeZones ()
 
boolean hasData ()
 
void notifyAddingDataSource (UUID eventId)
 
void notifyBlackBoardArtifactTagAdded (BlackboardArtifactTag newTag)
 
void notifyBlackBoardArtifactTagDeleted (BlackboardArtifactTag deletedTag)
 
void notifyCentralRepoCommentChanged (long contentId, String newComment)
 
void notifyContentTagAdded (ContentTag newTag)
 
void notifyContentTagDeleted (ContentTag deletedTag)
 
void notifyDataSourceAdded (Content dataSource, UUID addingDataSourceEventId)
 
void notifyDataSourceNameChanged (Content dataSource, String newName)
 
void notifyFailedAddingDataSource (UUID addingDataSourceEventId)
 
void notifyTagDefinitionChanged (String changedTagName)
 

Static Public Member Functions

static void addEventSubscriber (Set< String > eventNames, PropertyChangeListener subscriber)
 
static void addEventSubscriber (String eventName, PropertyChangeListener subscriber)
 
static void addEventTypeSubscriber (Set< Events > eventTypes, PropertyChangeListener subscriber)
 
static void addPropertyChangeListener (PropertyChangeListener listener)
 
static void closeCurrentCase () throws CaseActionException
 
static String convertTimeZone (String timeZoneId)
 
static void create (String caseDir, String caseDisplayName, String caseNumber, String examiner) throws CaseActionException
 
static void create (String caseDir, String caseDisplayName, String caseNumber, String examiner, CaseType caseType) throws CaseActionException
 
static void createAsCurrentCase (String caseDir, String caseDisplayName, String caseNumber, String examiner, CaseType caseType) throws CaseActionException, CaseActionCancelledException
 
static void createAsCurrentCase (CaseType caseType, String caseDir, CaseDetails caseDetails) throws CaseActionException, CaseActionCancelledException
 
static void createCaseDirectory (String caseDirPath, CaseType caseType) throws CaseActionException
 
static void deleteCase (CaseMetadata metadata) throws CaseActionException
 
static void deleteCurrentCase () throws CaseActionException
 
static boolean deleteMultiUserCase (CaseNodeData caseNodeData, CaseMetadata metadata, ProgressIndicator progressIndicator, Logger logger) throws InterruptedException
 
static boolean existsCurrentCase ()
 
static String getAppName ()
 
static String getAutopsyVersion ()
 
static Case getCurrentCase ()
 
static Case getCurrentCaseThrows () throws NoCurrentCaseException
 
static String getModulesOutputDirRelPath ()
 
static PropertyChangeSupport getPropertyChangeSupport ()
 
static void invokeStartupDialog ()
 
static boolean isCaseOpen ()
 
static boolean isValidName (String caseName)
 
static void open (String caseMetadataFilePath) throws CaseActionException
 
static void openAsCurrentCase (String caseMetadataFilePath) throws CaseActionException
 
static boolean pathExists (String filePath)
 
static void removeEventSubscriber (String eventName, PropertyChangeListener subscriber)
 
static void removeEventSubscriber (Set< String > eventNames, PropertyChangeListener subscriber)
 
static void removeEventTypeSubscriber (Set< Events > eventTypes, PropertyChangeListener subscriber)
 
static void removePropertyChangeListener (PropertyChangeListener listener)
 

Private Member Functions

 Case (CaseType caseType, String caseDir, CaseDetails caseDetails)
 
 Case (CaseMetadata caseMetaData)
 
void acquireCaseLock (CaseLockType lockType) throws CaseActionException
 
void close (ProgressIndicator progressIndicator)
 
void closeAppServiceCaseResources ()
 
Void create (ProgressIndicator progressIndicator, Object additionalParams) throws CaseActionException
 
void createCaseDatabase (ProgressIndicator progressIndicator) throws CaseActionException
 
void createCaseDirectoryIfDoesNotExist (ProgressIndicator progressIndicator) throws CaseActionException
 
void createCaseNodeData (ProgressIndicator progressIndicator) throws CaseActionException
 
void deleteTempfilesFromCaseDirectory (ProgressIndicator progressIndicator)
 
void doCloseCaseAction () throws CaseActionException
 
void doOpenCaseAction (String progressIndicatorTitle, CaseAction< ProgressIndicator, Object, Void > caseAction, CaseLockType caseLockType, boolean allowCancellation, Object additionalParams) throws CaseActionException
 
String getOrCreateSubdirectory (String subDirectoryName)
 
Void open (ProgressIndicator progressIndicator, Object additionalParams) throws CaseActionException
 
void openAppServiceCaseResources (ProgressIndicator progressIndicator) throws CaseActionException
 
void openCaseDataBase (ProgressIndicator progressIndicator) throws CaseActionException
 
void openCaseLevelServices (ProgressIndicator progressIndicator)
 
void openCommunicationChannels (ProgressIndicator progressIndicator) throws CaseActionException
 
void releaseCaseLock ()
 
void saveCaseMetadataToFile (ProgressIndicator progressIndicator) throws CaseActionException
 
void switchLoggingToCaseLogsDirectory (ProgressIndicator progressIndicator)
 
void updateCaseNodeData (ProgressIndicator progressIndicator) throws CaseActionException
 

Static Private Member Functions

static CoordinationService.Lock acquireCaseResourcesLock (String caseDir) throws CaseActionException
 
static void checkForCancellation () throws CaseActionCancelledException
 
static void clearTempSubDir (String tempSubDirPath)
 
static void deleteCaseDirectory (CaseMetadata metadata, ProgressIndicator progressIndicator) throws CaseActionException
 
static void deleteFromRecentCases (CaseMetadata metadata, ProgressIndicator progressIndicator)
 
static void deleteMultiUserCase (CaseMetadata metadata, ProgressIndicator progressIndicator) throws CaseActionException, InterruptedException
 
static void deleteMultiUserCaseDatabase (CaseNodeData caseNodeData, CaseMetadata metadata, ProgressIndicator progressIndicator, Logger logger) throws UserPreferencesException, ClassNotFoundException, SQLException, InterruptedException
 
static void deleteMultiUserCaseDirectory (CaseNodeData caseNodeData, CaseMetadata metadata, ProgressIndicator progressIndicator, Logger logger) throws CaseActionException, InterruptedException
 
static void deleteMultiUserCaseTextIndex (CaseNodeData caseNodeData, CaseMetadata metadata, ProgressIndicator progressIndicator, Logger logger) throws KeywordSearchServiceException, InterruptedException
 
static void deleteSingleUserCase (CaseMetadata metadata, ProgressIndicator progressIndicator) throws CaseActionException
 
static void deleteTextIndex (CaseMetadata metadata, ProgressIndicator progressIndicator) throws KeywordSearchServiceException
 
static String displayNameToUniqueName (String caseDisplayName)
 
static String getNameForTitle ()
 
static boolean isNoNodeException (CoordinationServiceException ex)
 
static void openAsCurrentCase (Case newCurrentCase, boolean isNewCase) throws CaseActionException, CaseActionCancelledException
 
static void setDeletedItemFlag (CaseNodeData caseNodeData, CaseNodeData.DeletedFlags flag) throws InterruptedException
 
static void updateGUIForCaseClosed ()
 
static void updateGUIForCaseOpened (Case newCurrentCase)
 

Private Attributes

volatile ExecutorService caseActionExecutor
 
SleuthkitCase caseDb
 
CoordinationService.Lock caseLock
 
Services caseServices
 
CollaborationMonitor collaborationMonitor
 
final CaseMetadata metadata
 
final SleuthkitEventListener sleuthkitEventListener
 

Static Private Attributes

static final String CACHE_FOLDER = "Cache"
 
static final String CASE_ACTION_THREAD_NAME = "%s-case-action"
 
static final int CASE_LOCK_TIMEOUT_MINS = 1
 
static final int CASE_RESOURCES_LOCK_TIMEOUT_HOURS = 1
 
static final String CASE_RESOURCES_THREAD_NAME = "%s-manage-case-resources"
 
static final Object caseActionSerializationLock = new Object()
 
static final String CONFIG_FOLDER = "Config"
 
static volatile Case currentCase
 
static final String EVENT_CHANNEL_NAME = "%s-Case-Events"
 
static final AutopsyEventPublisher eventPublisher = new AutopsyEventPublisher()
 
static final String EXPORT_FOLDER = "Export"
 
static final String LOG_FOLDER = "Log"
 
static final Logger logger = Logger.getLogger(Case.class.getName())
 
static volatile Frame mainFrame
 
static final String MODULE_FOLDER = "ModuleOutput"
 
static final String NO_NODE_ERROR_MSG_FRAGMENT = "KeeperErrorCode = NoNode"
 
static final String REPORTS_FOLDER = "Reports"
 
static final String SINGLE_USER_CASE_DB_NAME = "autopsy.db"
 
static final String TEMP_FOLDER = "Temp"
 

Detailed Description

An Autopsy case. Currently, only one case at a time may be open.

Definition at line 140 of file Case.java.

Constructor & Destructor Documentation

org.sleuthkit.autopsy.casemodule.Case.Case ( CaseType  caseType,
String  caseDir,
CaseDetails  caseDetails 
)
private

Constructs a Case object for a new Autopsy case.

Parameters
caseTypeThe type of case (single-user or multi-user).
caseDirThe full path of the case directory. The directory will be created if it doesn't already exist; if it exists, it is ASSUMED it was created by calling createCaseDirectory.
caseDetailsContains details of the case, such as examiner, display name, etc

Definition at line 1761 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.displayNameToUniqueName(), and org.sleuthkit.autopsy.casemodule.CaseDetails.getCaseDisplayName().

Referenced by org.sleuthkit.autopsy.casemodule.Case.createAsCurrentCase(), and org.sleuthkit.autopsy.casemodule.Case.openAsCurrentCase().

org.sleuthkit.autopsy.casemodule.Case.Case ( CaseMetadata  caseMetaData)
private

Constructs a Case object for an existing Autopsy case.

Parameters
caseMetaDataThe metadata for the case.

Definition at line 1770 of file Case.java.

Member Function Documentation

void org.sleuthkit.autopsy.casemodule.Case.acquireCaseLock ( CaseLockType  lockType) throws CaseActionException
private
static CoordinationService.Lock org.sleuthkit.autopsy.casemodule.Case.acquireCaseResourcesLock ( String  caseDir) throws CaseActionException
staticprivate

Acquires an exclusive case resources lock.

Parameters
caseDirThe full path of the case directory.
Returns
The lock or null if the lock could not be acquired.
Exceptions
CaseActionExceptionwith a user-friendly message if the lock cannot be acquired due to an exception.

Definition at line 1042 of file Case.java.

References org.sleuthkit.autopsy.coordinationservice.CoordinationService.CategoryNode.CASES, org.sleuthkit.autopsy.casemodule.multiusercases.CoordinationServiceUtils.getCaseResourcesNodePath(), org.sleuthkit.autopsy.coordinationservice.CoordinationService.getInstance(), and org.sleuthkit.autopsy.coordinationservice.CoordinationService.tryGetExclusiveLock().

Referenced by org.sleuthkit.autopsy.casemodule.Case.doCloseCaseAction(), and org.sleuthkit.autopsy.casemodule.Case.doOpenCaseAction().

static void org.sleuthkit.autopsy.casemodule.Case.addEventSubscriber ( Set< String >  eventNames,
PropertyChangeListener  subscriber 
)
static

Adds a subscriber to specific case events.

Parameters
eventNamesThe events the subscriber is interested in.
subscriberThe subscriber (PropertyChangeListener) to add.
Deprecated:
Use addEventTypeSubscriber instead.

Definition at line 476 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.addSubscriber().

Referenced by org.sleuthkit.autopsy.casemodule.Case.addPropertyChangeListener().

static void org.sleuthkit.autopsy.casemodule.Case.addEventSubscriber ( String  eventName,
PropertyChangeListener  subscriber 
)
static

Adds a subscriber to specific case events.

Parameters
eventNameThe event the subscriber is interested in.
subscriberThe subscriber (PropertyChangeListener) to add.
Deprecated:
Use addEventTypeSubscriber instead.

Definition at line 501 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.addSubscriber().

static void org.sleuthkit.autopsy.casemodule.Case.addEventTypeSubscriber ( Set< Events eventTypes,
PropertyChangeListener  subscriber 
)
static

Adds a subscriber to specific case events.

Parameters
eventTypesThe events the subscriber is interested in.
subscriberThe subscriber (PropertyChangeListener) to add.

Definition at line 486 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.addSubscriber().

Referenced by org.sleuthkit.autopsy.datamodel.AutopsyTreeChildFactory.addNotify(), org.sleuthkit.autopsy.geolocation.GeolocationTopComponent.addNotify(), org.sleuthkit.autopsy.datamodel.ExtractedContent.TypeFactory.addNotify(), org.sleuthkit.autopsy.datamodel.Tags.TagNameNodeFactory.addNotify(), org.sleuthkit.autopsy.communications.FiltersPanel.addNotify(), org.sleuthkit.autopsy.datamodel.InterestingHits.SetNameFactory.addNotify(), org.sleuthkit.autopsy.datamodel.HashsetHits.HashsetNameFactory.addNotify(), org.sleuthkit.autopsy.datamodel.EmailExtracted.AccountFactory.addNotify(), org.sleuthkit.autopsy.communications.VisualizationPanel.addNotify(), org.sleuthkit.autopsy.datamodel.accounts.Accounts.AccountTypeFactory.addNotify(), org.sleuthkit.autopsy.datamodel.accounts.Accounts.DefaultAccountFactory.addNotify(), org.sleuthkit.autopsy.datamodel.KeywordHits.ListFactory.addNotify(), org.sleuthkit.autopsy.datamodel.accounts.Accounts.ViewModeFactory.addNotify(), org.sleuthkit.autopsy.datamodel.accounts.Accounts.FileWithCCNFactory.addNotify(), org.sleuthkit.autopsy.datamodel.accounts.Accounts.BINFactory.addNotify(), org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.BlackboardArtifactNode(), org.sleuthkit.autopsy.datamodel.FileTypesByExtension.FileTypesByExtObservable.FileTypesByExtObservable(), org.sleuthkit.autopsy.centralrepository.optionspanel.GlobalSettingsPanel.GlobalSettingsPanel(), org.sleuthkit.autopsy.datamodel.ImageNode.ImageNode(), org.sleuthkit.autopsy.datamodel.DataSourcesNode.DataSourcesNodeChildren.onAdd(), org.sleuthkit.autopsy.report.infrastructure.ReportWizardAction.ReportWizardAction(), org.sleuthkit.autopsy.ingest.IngestManager.subscribeToCaseEvents(), org.sleuthkit.autopsy.directorytree.DirectoryTreeTopComponent.subscribeToChangeEvents(), org.sleuthkit.autopsy.corecomponents.ViewPreferencesPanel.ViewPreferencesPanel(), and org.sleuthkit.autopsy.datamodel.VolumeNode.VolumeNode().

Image org.sleuthkit.autopsy.casemodule.Case.addImage ( String  imgPath,
long  imgId,
String  timeZone 
) throws CaseActionException

Adds an image to the current case after it has been added to the DB. Sends out event and reopens windows if needed.

Parameters
imgPathThe path of the image file.
imgIdThe ID of the image.
timeZoneThe time zone of the image.
Returns
Exceptions
org.sleuthkit.autopsy.casemodule.CaseActionException
Deprecated:
As of release 4.0

Definition at line 3445 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.notifyDataSourceAdded().

static void org.sleuthkit.autopsy.casemodule.Case.addPropertyChangeListener ( PropertyChangeListener  listener)
static

Adds a subscriber to all case events. To subscribe to only specific events, use one of the overloads of addEventSubscriber.

Parameters
listenerThe subscriber (PropertyChangeListener) to add.

Definition at line 449 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.addEventSubscriber().

Referenced by org.sleuthkit.autopsy.centralrepository.eventlisteners.Installer.addApplicationEventListeners(), org.sleuthkit.autopsy.communications.OpenCommVisualizationToolAction.OpenCommVisualizationToolAction(), and org.sleuthkit.autopsy.geolocation.OpenGeolocationAction.OpenGeolocationAction().

void org.sleuthkit.autopsy.casemodule.Case.addReport ( String  localPath,
String  srcModuleName,
String  reportName 
) throws TskCoreException

Adds a report to the case.

Parameters
localPathThe path of the report file, must be in the case directory or one of its subdirectories.
srcModuleNameThe name of the module that created the report.
reportNameThe report name, may be empty.
Exceptions
TskCoreExceptionif there is a problem adding the report to the case database.

Definition at line 1630 of file Case.java.

Referenced by org.sleuthkit.autopsy.timeline.actions.SaveSnapshotAsReport.createReport(), org.sleuthkit.autopsy.report.modules.stix.STIXReportModule.generateReport(), org.sleuthkit.autopsy.report.modules.caseuco.CaseUcoReportModule.generateReport(), org.sleuthkit.autopsy.report.modules.kml.KMLReport.generateReport(), org.sleuthkit.autopsy.communications.VisualizationPanel.handleSnapshotEvent(), and org.sleuthkit.autopsy.report.modules.html.HTMLReport.writeIndex().

Report org.sleuthkit.autopsy.casemodule.Case.addReport ( String  localPath,
String  srcModuleName,
String  reportName,
Content  parent 
) throws TskCoreException

Adds a report to the case.

Parameters
localPathThe path of the report file, must be in the case directory or one of its subdirectories.
srcModuleNameThe name of the module that created the report.
reportNameThe report name, may be empty.
parentThe Content used to create the report, if available.
Returns
The new Report instance.
Exceptions
TskCoreExceptionif there is a problem adding the report to the case database.

Definition at line 1648 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.publish().

static void org.sleuthkit.autopsy.casemodule.Case.checkForCancellation ( ) throws CaseActionCancelledException
staticprivate

Checks current thread for an interrupt. Usage: checking for user cancellation of a case creation/opening operation, as reflected in the exception message.

Exceptions
CaseActionCancelledExceptionIf the current thread is interrupted, assumes interrupt was due to a user action.

Definition at line 2093 of file Case.java.

Referenced by org.sleuthkit.autopsy.casemodule.Case.create(), org.sleuthkit.autopsy.casemodule.Case.open(), org.sleuthkit.autopsy.casemodule.Case.openAppServiceCaseResources(), and org.sleuthkit.autopsy.casemodule.Case.openCommunicationChannels().

static void org.sleuthkit.autopsy.casemodule.Case.clearTempSubDir ( String  tempSubDirPath)
staticprivate

Empties the temp subdirectory for the current case.

Definition at line 1197 of file Case.java.

References org.sleuthkit.autopsy.coreutils.FileUtil.deleteDir().

Referenced by org.sleuthkit.autopsy.casemodule.Case.deleteTempfilesFromCaseDirectory().

void org.sleuthkit.autopsy.casemodule.Case.close ( ProgressIndicator  progressIndicator)
private
void org.sleuthkit.autopsy.casemodule.Case.closeAppServiceCaseResources ( )
private
void org.sleuthkit.autopsy.casemodule.Case.closeCase ( ) throws CaseActionException

Closes this Autopsy case.

Exceptions
CaseActionExceptionif there is a problem closing the case. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.
Deprecated:
Use closeCurrentCase instead.

Definition at line 3316 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.closeCurrentCase().

static void org.sleuthkit.autopsy.casemodule.Case.closeCurrentCase ( ) throws CaseActionException
static
static String org.sleuthkit.autopsy.casemodule.Case.convertTimeZone ( String  timeZoneId)
static

Converts a Java timezone id to a coded string with only alphanumeric characters. Example: "America/New_York" is converted to "EST5EDT" by this method.

Parameters
timeZoneIdThe time zone id.
Returns
The converted time zone string.
Deprecated:
Use org.sleuthkit.autopsy.coreutils.TimeZoneUtils.convertToAlphaNumericFormat instead.

Definition at line 3344 of file Case.java.

References org.sleuthkit.autopsy.coreutils.TimeZoneUtils.convertToAlphaNumericFormat().

Void org.sleuthkit.autopsy.casemodule.Case.create ( ProgressIndicator  progressIndicator,
Object  additionalParams 
) throws CaseActionException
private

A case action (interface CaseAction<T, V, R>) that creates the case directory and case database and opens the application services for this case.

Parameters
progressIndicatorA progress indicator.
additionalParamsAn Object that holds any additional parameters for a case action. For this action, this is null.
Exceptions
CaseActionExceptionIf there is a problem completing the action. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.

Definition at line 1913 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.checkForCancellation(), org.sleuthkit.autopsy.casemodule.Case.close(), org.sleuthkit.autopsy.casemodule.Case.createCaseDatabase(), org.sleuthkit.autopsy.casemodule.Case.createCaseDirectoryIfDoesNotExist(), org.sleuthkit.autopsy.casemodule.Case.createCaseNodeData(), org.sleuthkit.autopsy.casemodule.Case.openAppServiceCaseResources(), org.sleuthkit.autopsy.casemodule.Case.openCaseLevelServices(), org.sleuthkit.autopsy.casemodule.Case.openCommunicationChannels(), org.sleuthkit.autopsy.casemodule.Case.saveCaseMetadataToFile(), and org.sleuthkit.autopsy.casemodule.Case.switchLoggingToCaseLogsDirectory().

static void org.sleuthkit.autopsy.casemodule.Case.create ( String  caseDir,
String  caseDisplayName,
String  caseNumber,
String  examiner 
) throws CaseActionException
static

Creates a new, single-user Autopsy case.

Parameters
caseDirThe full path of the case directory. The directory will be created if it doesn't already exist; if it exists, it is ASSUMED it was created by calling createCaseDirectory.
caseDisplayNameThe display name of case, which may be changed later by the user.
caseNumberThe case number, can be the empty string.
examinerThe examiner to associate with the case, can be the empty string.
Exceptions
CaseActionExceptionif there is a problem creating the case. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.
Deprecated:
Use createAsCurrentCase instead.

Definition at line 3261 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.createAsCurrentCase(), and org.sleuthkit.autopsy.casemodule.Case.CaseType.SINGLE_USER_CASE.

static void org.sleuthkit.autopsy.casemodule.Case.create ( String  caseDir,
String  caseDisplayName,
String  caseNumber,
String  examiner,
CaseType  caseType 
) throws CaseActionException
static

Creates a new Autopsy case and makes it the current case.

Parameters
caseDirThe full path of the case directory. The directory will be created if it doesn't already exist; if it exists, it is ASSUMED it was created by calling createCaseDirectory.
caseDisplayNameThe display name of case, which may be changed later by the user.
caseNumberThe case number, can be the empty string.
examinerThe examiner to associate with the case, can be the empty string.
caseTypeThe type of case (single-user or multi-user).
Exceptions
CaseActionExceptionif there is a problem creating the case. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.
Deprecated:
Use createAsCurrentCase instead.

Definition at line 3286 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.createAsCurrentCase().

static void org.sleuthkit.autopsy.casemodule.Case.createAsCurrentCase ( String  caseDir,
String  caseDisplayName,
String  caseNumber,
String  examiner,
CaseType  caseType 
) throws CaseActionException, CaseActionCancelledException
static

Creates a new case and makes it the current case.

IMPORTANT: This method should not be called in the event dispatch thread (EDT).

Parameters
caseDirThe full path of the case directory. The directory will be created if it doesn't already exist; if it exists, it is ASSUMED it was created by calling createCaseDirectory.
caseDisplayNameThe display name of case, which may be changed later by the user.
caseNumberThe case number, can be the empty string.
examinerThe examiner to associate with the case, can be the empty string.
caseTypeThe type of case (single-user or multi-user).
Exceptions
CaseActionExceptionIf there is a problem creating the case.
CaseActionCancelledExceptionIf creating the case is cancelled.
Deprecated:
use createAsCurrentCase(CaseType caseType, String caseDir, CaseDetails caseDetails) instead

Definition at line 576 of file Case.java.

Referenced by org.sleuthkit.autopsy.casemodule.Case.create(), and org.sleuthkit.autopsy.commandlineingest.CommandLineIngestManager.JobProcessingTask.openCase().

static void org.sleuthkit.autopsy.casemodule.Case.createAsCurrentCase ( CaseType  caseType,
String  caseDir,
CaseDetails  caseDetails 
) throws CaseActionException, CaseActionCancelledException
static

Creates a new case and makes it the current case.

IMPORTANT: This method should not be called in the event dispatch thread (EDT).

Parameters
caseDirThe full path of the case directory. The directory will be created if it doesn't already exist; if it exists, it is ASSUMED it was created by calling createCaseDirectory.
caseTypeThe type of case (single-user or multi-user).
caseDetailsContains the modifiable details of the case such as the case display name, the case number, and the examiner related data.
Exceptions
CaseActionExceptionIf there is a problem creating the case.
CaseActionCancelledExceptionIf creating the case is cancelled.

Definition at line 603 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.Case(), org.sleuthkit.autopsy.casemodule.CaseDetails.getCaseDisplayName(), and org.sleuthkit.autopsy.casemodule.Case.openAsCurrentCase().

void org.sleuthkit.autopsy.casemodule.Case.createCaseDatabase ( ProgressIndicator  progressIndicator) throws CaseActionException
private

Creates the node data for the case directory lock coordination service node, the case directory, the case database and the case metadata file.

Parameters
progressIndicatorA progress indicator.
Exceptions
CaseActionExceptionIf there is a problem completing the operation. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.

Definition at line 2249 of file Case.java.

References org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDirectory(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDisplayName(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseType(), org.sleuthkit.autopsy.core.UserPreferences.getDatabaseConnectionInfo(), org.sleuthkit.autopsy.progress.ProgressIndicator.progress(), org.sleuthkit.autopsy.casemodule.Case.CaseType.SINGLE_USER_CASE, and org.sleuthkit.autopsy.casemodule.Case.SINGLE_USER_CASE_DB_NAME.

Referenced by org.sleuthkit.autopsy.casemodule.Case.create().

static void org.sleuthkit.autopsy.casemodule.Case.createCaseDirectory ( String  caseDirPath,
CaseType  caseType 
) throws CaseActionException
static

Creates a case directory and its subdirectories.

Parameters
caseDirPathPath to the case directory (typically base + case name).
caseTypeThe type of case, single-user or multi-user.
Exceptions
CaseActionExceptionthrow if could not create the case dir

Definition at line 945 of file Case.java.

References org.sleuthkit.autopsy.coreutils.NetworkUtils.getLocalHostName(), and org.sleuthkit.autopsy.casemodule.Case.CaseType.MULTI_USER_CASE.

Referenced by org.sleuthkit.autopsy.casemodule.Case.createCaseDirectoryIfDoesNotExist(), and org.sleuthkit.autopsy.commandlineingest.CommandLineIngestManager.JobProcessingTask.openCase().

void org.sleuthkit.autopsy.casemodule.Case.createCaseDirectoryIfDoesNotExist ( ProgressIndicator  progressIndicator) throws CaseActionException
private

Creates the case directory, if it does not already exist.

Parameters
progressIndicatorA progress indicator.
Exceptions
CaseActionExceptionIf there is a problem completing the operation. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.

Definition at line 2112 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.createCaseDirectory(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDirectory(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseType(), and org.sleuthkit.autopsy.progress.ProgressIndicator.progress().

Referenced by org.sleuthkit.autopsy.casemodule.Case.create().

void org.sleuthkit.autopsy.casemodule.Case.createCaseNodeData ( ProgressIndicator  progressIndicator) throws CaseActionException
private

Creates the node data for the case directory lock coordination service node.

Parameters
progressIndicatorA progress indicator.
Exceptions
CaseActionExceptionIf there is a problem completing the operation. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.

Definition at line 2177 of file Case.java.

References org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.createCaseNodeData(), org.sleuthkit.autopsy.casemodule.Case.getCaseType(), org.sleuthkit.autopsy.casemodule.Case.CaseType.MULTI_USER_CASE, and org.sleuthkit.autopsy.progress.ProgressIndicator.progress().

Referenced by org.sleuthkit.autopsy.casemodule.Case.create().

SleuthkitCase org.sleuthkit.autopsy.casemodule.Case.createPortableCase ( String  caseName,
File  portableCaseFolder 
) throws TskCoreException
static void org.sleuthkit.autopsy.casemodule.Case.deleteCase ( CaseMetadata  metadata) throws CaseActionException
static
static void org.sleuthkit.autopsy.casemodule.Case.deleteCaseDirectory ( CaseMetadata  metadata,
ProgressIndicator  progressIndicator 
) throws CaseActionException
staticprivate

Attempts to delete the case directory for a case.

Parameters
metadataThe case metadata.
progressIndicatorA progress indicator.
Exceptions
CaseActionExceptionIf there is an error deleting the case directory.

Definition at line 3011 of file Case.java.

References org.sleuthkit.autopsy.coreutils.FileUtil.deleteDir(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDirectory(), and org.sleuthkit.autopsy.progress.ProgressIndicator.progress().

Referenced by org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCaseDirectory(), and org.sleuthkit.autopsy.casemodule.Case.deleteSingleUserCase().

static void org.sleuthkit.autopsy.casemodule.Case.deleteCurrentCase ( ) throws CaseActionException
static

Deletes the current case.

Exceptions
CaseActionExceptionIf there is a problem deleting the case. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.

Definition at line 740 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.caseActionSerializationLock, org.sleuthkit.autopsy.casemodule.Case.closeCurrentCase(), and org.sleuthkit.autopsy.casemodule.Case.deleteCase().

static void org.sleuthkit.autopsy.casemodule.Case.deleteFromRecentCases ( CaseMetadata  metadata,
ProgressIndicator  progressIndicator 
)
staticprivate

Attempts to remove a case from the recent cases menu if the main application window is present.

Parameters
metadataThe case metadata.
progressIndicatorA progress indicator.

Definition at line 3028 of file Case.java.

References org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDisplayName(), org.sleuthkit.autopsy.progress.ProgressIndicator.progress(), and org.sleuthkit.autopsy.core.RuntimeProperties.runningWithGUI.

Referenced by org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCase(), and org.sleuthkit.autopsy.casemodule.Case.deleteSingleUserCase().

static void org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCase ( CaseMetadata  metadata,
ProgressIndicator  progressIndicator 
) throws CaseActionException, InterruptedException
staticprivate

Deletes a multi-user case. This method does so after acquiring the case directory coordination service lock and is intended to be used for deleting simple multi-user cases without auto ingest input. Note that the case directory coordination service node for the case is only deleted if no errors occurred.

Parameters
metadataThe case metadata.
progressIndicatorA progress indicator.
Exceptions
CaseActionExceptionIf there were one or more errors deleting the case. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.
InterruptedExceptionIf the thread this code is running in is interrupted while blocked, i.e., if cancellation of the operation is detected during a wait.

Definition at line 2783 of file Case.java.

References org.sleuthkit.autopsy.coordinationservice.CoordinationService.CategoryNode.CASES, org.sleuthkit.autopsy.coordinationservice.CoordinationService.deleteNode(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDirectory(), org.sleuthkit.autopsy.casemodule.multiusercases.CoordinationServiceUtils.getCaseDirectoryNodePath(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDisplayName(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseName(), org.sleuthkit.autopsy.casemodule.multiusercases.CoordinationServiceUtils.getCaseResourcesNodePath(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.getDirectory(), org.sleuthkit.autopsy.coordinationservice.CoordinationService.getInstance(), org.sleuthkit.autopsy.casemodule.Case.isNoNodeException(), org.sleuthkit.autopsy.progress.ProgressIndicator.progress(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.readCaseNodeData(), and org.sleuthkit.autopsy.coordinationservice.CoordinationService.tryGetExclusiveLock().

Referenced by org.sleuthkit.autopsy.casemodule.Case.deleteCase().

static boolean org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCase ( CaseNodeData  caseNodeData,
CaseMetadata  metadata,
ProgressIndicator  progressIndicator,
Logger  logger 
) throws InterruptedException
static

IMPORTANT: This is a "beta" method and is subject to change or removal without notice!

Deletes a mulit-user case by attempting to delete the case database, the text index, the case directory, and the case resources coordination service node for a case, and removes the case from the recent cases menu of the main application window. Callers of this method MUST acquire and release the case directory lock for the case and are responsible for deleting the corresponding coordination service nodes, if desired.

Parameters
caseNodeDataThe coordination service node data for the case.
metadataThe case metadata.
progressIndicatorA progress indicator.
loggerA logger.
Returns
True if one or more errors occurred (see log for details), false otherwise.
Exceptions
InterruptedExceptionIf the thread this code is running in is interrupted while blocked, i.e., if cancellation of the operation is detected during a wait.

Definition at line 2870 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.deleteFromRecentCases(), org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCaseDatabase(), org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCaseDirectory(), org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCaseTextIndex(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDirectory(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDisplayName(), and org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseName().

static void org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCaseDatabase ( CaseNodeData  caseNodeData,
CaseMetadata  metadata,
ProgressIndicator  progressIndicator,
Logger  logger 
) throws UserPreferencesException, ClassNotFoundException, SQLException, InterruptedException
staticprivate

Attempts to delete the case database for a multi-user case.

Parameters
caseNodeDataThe coordination service node data for the case.
metadataThe case metadata.
progressIndicatorA progress indicator.
loggerA logger.
Exceptions
UserPreferencesExceptionif there is an error getting the database server connection info.
ClassNotFoundExceptionif there is an error gettting the required JDBC driver.
SQLExceptionif there is an error executing the SQL to drop the database from the database server.
InterruptedExceptionIf interrupted while blocked waiting for coordination service data to be written to the coordination service node database.

Definition at line 2913 of file Case.java.

References org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.DeletedFlags.CASE_DB, org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDatabaseName(), org.sleuthkit.autopsy.core.UserPreferences.getDatabaseConnectionInfo(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.getDirectory(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.getDisplayName(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.getName(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.isDeletedFlagSet(), org.sleuthkit.autopsy.progress.ProgressIndicator.progress(), and org.sleuthkit.autopsy.casemodule.Case.setDeletedItemFlag().

Referenced by org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCase().

static void org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCaseDirectory ( CaseNodeData  caseNodeData,
CaseMetadata  metadata,
ProgressIndicator  progressIndicator,
Logger  logger 
) throws CaseActionException, InterruptedException
staticprivate

Attempts to delete the case directory for a multi-user case.

Parameters
caseNodeDataThe coordination service node data for the case.
metadataThe case metadata.
progressIndicatorA progress indicator.
loggerA logger.
Exceptions
CaseActionExceptionif there is an error deleting the case directory.
InterruptedExceptionIf interrupted while blocked waiting for coordination service data to be written to the coordination service node database.

Definition at line 2991 of file Case.java.

References org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.DeletedFlags.CASE_DIR, org.sleuthkit.autopsy.casemodule.Case.deleteCaseDirectory(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.getDirectory(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.getDisplayName(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.getName(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.isDeletedFlagSet(), and org.sleuthkit.autopsy.casemodule.Case.setDeletedItemFlag().

Referenced by org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCase().

static void org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCaseTextIndex ( CaseNodeData  caseNodeData,
CaseMetadata  metadata,
ProgressIndicator  progressIndicator,
Logger  logger 
) throws KeywordSearchServiceException, InterruptedException
staticprivate

Attempts to delete the text index for a multi-user case.

Parameters
caseNodeDataThe coordination service node data for the case.
metadataThe case metadata.
progressIndicatorA progress indicator.
loggerA logger.
Exceptions
KeywordSearchServiceExceptionIf there is an error deleting the text index.
InterruptedExceptionIf interrupted while blocked waiting for coordination service data to be written to the coordination service node database.

Definition at line 2948 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.deleteTextIndex(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.getDirectory(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.getDisplayName(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.getName(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.isDeletedFlagSet(), org.sleuthkit.autopsy.casemodule.Case.setDeletedItemFlag(), and org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.DeletedFlags.TEXT_INDEX.

Referenced by org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCase().

void org.sleuthkit.autopsy.casemodule.Case.deleteReports ( Collection<?extends Report >  reports) throws TskCoreException

Deletes one or more reports from the case database. Does not delete the report files.

Parameters
reportsThe report(s) to be deleted from the case.
Exceptions
TskCoreExceptionif there is an error deleting the report(s).

Definition at line 1685 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.publish(), and org.sleuthkit.autopsy.casemodule.Case.Events.REPORT_DELETED.

Referenced by org.sleuthkit.autopsy.datamodel.Reports.ReportNode.DeleteReportAction.actionPerformed(), and org.sleuthkit.autopsy.casemodule.Case.deleteReports().

void org.sleuthkit.autopsy.casemodule.Case.deleteReports ( Collection<?extends Report >  reports,
boolean  deleteFromDisk 
) throws TskCoreException

Deletes reports from the case.

Parameters
reportsCollection of Report to be deleted from the case.
deleteFromDiskNo longer supported - ignored.
Exceptions
TskCoreException
Deprecated:
Use deleteReports(Collection<? extends Report> reports) instead.

Definition at line 3478 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.deleteReports().

static void org.sleuthkit.autopsy.casemodule.Case.deleteSingleUserCase ( CaseMetadata  metadata,
ProgressIndicator  progressIndicator 
) throws CaseActionException
staticprivate

Deletes a single-user case.

Parameters
metadataThe case metadata.
progressIndicatorA progress indicator.
Exceptions
CaseActionExceptionIf there were one or more errors deleting the case. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.

Definition at line 2731 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.deleteCaseDirectory(), org.sleuthkit.autopsy.casemodule.Case.deleteFromRecentCases(), org.sleuthkit.autopsy.casemodule.Case.deleteTextIndex(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDirectory(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDisplayName(), and org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseName().

Referenced by org.sleuthkit.autopsy.casemodule.Case.deleteCase().

void org.sleuthkit.autopsy.casemodule.Case.deleteTempfilesFromCaseDirectory ( ProgressIndicator  progressIndicator)
private

Deletes any files in the temp subdirectory of the case directory.

Parameters
progressIndicatorA progress indicator.

Definition at line 2224 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.clearTempSubDir(), org.sleuthkit.autopsy.casemodule.Case.getTempDirectory(), and org.sleuthkit.autopsy.progress.ProgressIndicator.progress().

Referenced by org.sleuthkit.autopsy.casemodule.Case.open().

static void org.sleuthkit.autopsy.casemodule.Case.deleteTextIndex ( CaseMetadata  metadata,
ProgressIndicator  progressIndicator 
) throws KeywordSearchServiceException
staticprivate

Attempts to delete the text index for a case.

Parameters
metadataThe case metadata.
progressIndicatorA progress indicator.
Exceptions
KeywordSearchServiceExceptionIf there is an error deleting the text index.

Definition at line 2968 of file Case.java.

References org.sleuthkit.autopsy.progress.ProgressIndicator.progress().

Referenced by org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCaseTextIndex(), and org.sleuthkit.autopsy.casemodule.Case.deleteSingleUserCase().

static String org.sleuthkit.autopsy.casemodule.Case.displayNameToUniqueName ( String  caseDisplayName)
staticprivate

Transforms a case display name into a unique case name that can be used to identify the case even if the display name is changed.

Parameters
caseDisplayNameA case display name.
Returns
The unique case name.

Definition at line 905 of file Case.java.

Referenced by org.sleuthkit.autopsy.casemodule.Case.Case().

void org.sleuthkit.autopsy.casemodule.Case.doCloseCaseAction ( ) throws CaseActionException
private

Performs a case action that involves closing a case opened by calling doOpenCaseAction. If the case is a multi-user case, the coordination service case lock acquired by the call to doOpenCaseAction is released. This case lock must be released in the same thread in which it was acquired, as required by the coordination service. The single-threaded executor saved during the case opening action is therefore used to do the case closing action.

Exceptions
CaseActionExceptionIf there is a problem completing the action. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.

Definition at line 2490 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.acquireCaseResourcesLock(), org.sleuthkit.autopsy.casemodule.Case.close(), org.sleuthkit.autopsy.progress.ProgressIndicator.finish(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDirectory(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseType(), org.sleuthkit.autopsy.progress.ProgressIndicator.progress(), org.sleuthkit.autopsy.casemodule.Case.releaseCaseLock(), org.sleuthkit.autopsy.core.RuntimeProperties.runningWithGUI, org.sleuthkit.autopsy.coreutils.ThreadUtils.shutDownTaskExecutor(), org.sleuthkit.autopsy.casemodule.Case.CaseType.SINGLE_USER_CASE, and org.sleuthkit.autopsy.progress.ProgressIndicator.start().

Referenced by org.sleuthkit.autopsy.casemodule.Case.closeCurrentCase().

void org.sleuthkit.autopsy.casemodule.Case.doOpenCaseAction ( String  progressIndicatorTitle,
CaseAction< ProgressIndicator, Object, Void >  caseAction,
CaseLockType  caseLockType,
boolean  allowCancellation,
Object  additionalParams 
) throws CaseActionException
private

Performs a case action that involves creating or opening a case. If the case is a multi-user case, the action is done after acquiring a coordination service case lock. This case lock must be released in the same thread in which it was acquired, as required by the coordination service. A single-threaded executor is therefore created to do the case opening action, and is saved for an eventual case closing action.

IMPORTANT: If an open case action for a multi-user case is terminated because an exception is thrown or the action is cancelled, the action is responsible for releasing the case lock while still running in the case action executor's thread. This method assumes this has been done and performs an orderly shut down of the case action executor.

Parameters
progressIndicatorTitleA title for the progress indicator for the case action.
caseActionThe case action method.
caseLockTypeThe type of case lock required for the case action.
allowCancellationWhether or not to allow the action to be cancelled.
additionalParamsAn Object that holds any additional parameters for a case action.
Exceptions
CaseActionExceptionIf there is a problem completing the action. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.

Definition at line 1811 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.acquireCaseLock(), org.sleuthkit.autopsy.casemodule.Case.acquireCaseResourcesLock(), org.sleuthkit.autopsy.casemodule.Case.CancelButtonListener.actionPerformed(), org.sleuthkit.autopsy.casemodule.Case.CaseAction< T, V, R >.execute(), org.sleuthkit.autopsy.progress.ProgressIndicator.finish(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDirectory(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseName(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseType(), org.sleuthkit.autopsy.casemodule.Case.releaseCaseLock(), org.sleuthkit.autopsy.core.RuntimeProperties.runningWithGUI, org.sleuthkit.autopsy.casemodule.Case.CancelButtonListener.setCaseActionFuture(), org.sleuthkit.autopsy.coreutils.ThreadUtils.shutDownTaskExecutor(), org.sleuthkit.autopsy.casemodule.Case.CaseType.SINGLE_USER_CASE, and org.sleuthkit.autopsy.progress.ProgressIndicator.start().

Referenced by org.sleuthkit.autopsy.casemodule.Case.openAsCurrentCase().

static boolean org.sleuthkit.autopsy.casemodule.Case.existsCurrentCase ( )
static

Check if case is currently open.

Returns
True if a case is open.
Deprecated:
Use isCaseOpen instead.

Definition at line 3383 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.isCaseOpen().

List<Report> org.sleuthkit.autopsy.casemodule.Case.getAllReports ( ) throws TskCoreException

Gets the reports that have been added to the case.

Returns
A collection of report objects.
Exceptions
TskCoreExceptionif there is a problem querying the case database.

Definition at line 1673 of file Case.java.

Referenced by org.sleuthkit.autopsy.datamodel.Reports.ReportNodeFactory.createKeys().

static String org.sleuthkit.autopsy.casemodule.Case.getAppName ( )
static

Gets the application name.

Returns
The application name.
Deprecated:

Definition at line 3237 of file Case.java.

References org.sleuthkit.autopsy.core.UserPreferences.getAppName().

static String org.sleuthkit.autopsy.casemodule.Case.getAutopsyVersion ( )
static

Gets the Autopsy version.

Returns
The Autopsy version.
Deprecated:
Use org.sleuthkit.autopsy.coreutils.Version.getVersion instead

Definition at line 3371 of file Case.java.

References org.sleuthkit.autopsy.coreutils.Version.getVersion().

String org.sleuthkit.autopsy.casemodule.Case.getCacheDirectory ( )

Gets the full path to the cache directory for this case, creating it if it does not exist.

Returns
The cache directory path.

Definition at line 1359 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.getOrCreateSubdirectory().

Referenced by org.sleuthkit.autopsy.coreutils.ImageUtils.getCachedThumbnailLocation().

String org.sleuthkit.autopsy.casemodule.Case.getCaseDirectory ( )
String org.sleuthkit.autopsy.casemodule.Case.getCaseNotes ( )
CaseType org.sleuthkit.autopsy.casemodule.Case.getCaseType ( )
String org.sleuthkit.autopsy.casemodule.Case.getConfigDirectory ( )

Gets the full path to the config directory for this case, creating it if it does not exist.

Returns
The config directory path.

Definition at line 1399 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.getOrCreateSubdirectory().

Referenced by org.sleuthkit.autopsy.casemodule.CasePreferences.loadFromStorage(), and org.sleuthkit.autopsy.casemodule.CasePreferences.saveToStorage().

String org.sleuthkit.autopsy.casemodule.Case.getCreatedDate ( )

Gets the case create date.

Returns
case The case create date.

Definition at line 1245 of file Case.java.

References org.sleuthkit.autopsy.casemodule.CaseMetadata.getCreatedDate().

Referenced by org.sleuthkit.autopsy.centralrepository.contentviewer.DataContentViewerOtherCases.getCaseCreatedDate().

static Case org.sleuthkit.autopsy.casemodule.Case.getCurrentCase ( )
static

Gets the current case. This method should only be called by clients that can be sure a case is currently open. Some examples of suitable clients are data source processors, ingest modules, and report modules.

Returns
The current case.

Definition at line 659 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.getCurrentCaseThrows().

Referenced by org.sleuthkit.autopsy.report.modules.html.HTMLReport.addThumbnailRows(), org.sleuthkit.autopsy.featureaccess.FeatureAccessUtils.canDeleteDataSources(), org.sleuthkit.autopsy.timeline.TimeLineTopComponent.componentOpened(), org.sleuthkit.autopsy.commonpropertiessearch.CommonAttributeSearchAction.createAndShowPanel(), org.sleuthkit.autopsy.geolocation.GeolocationTopComponent.createReportDirectory(), org.sleuthkit.autopsy.featureaccess.FeatureAccessUtils.currentCaseIsSingleUserCase(), org.sleuthkit.autopsy.casemodule.DeleteDataSourceAction.DataSourceDeletionWorker.doInBackground(), org.sleuthkit.autopsy.geolocation.GeoFilterPanel.DataSourceUpdater.doInBackground(), org.sleuthkit.autopsy.commonpropertiessearch.AllInterCaseCommonAttributeSearcher.findMatchesByCase(), org.sleuthkit.autopsy.commonpropertiessearch.SingleInterCaseCommonAttributeSearcher.findMatchesByCase(), org.sleuthkit.autopsy.commonpropertiessearch.AllInterCaseCommonAttributeSearcher.findMatchesByCount(), org.sleuthkit.autopsy.commonpropertiessearch.SingleInterCaseCommonAttributeSearcher.findMatchesByCount(), org.sleuthkit.autopsy.commonpropertiessearch.CentralRepoCommonAttributeInstance.generateNodes(), org.sleuthkit.autopsy.casemodule.services.Services.getArtifactsBlackboard(), org.sleuthkit.autopsy.centralrepository.contentviewer.DataContentViewerOtherCases.getCaseCreatedDate(), org.sleuthkit.autopsy.centralrepository.contentviewer.DataContentViewerOtherCases.getCorrelationAttributesFromNode(), org.sleuthkit.autopsy.ingest.IngestServices.getCurrentCase(), org.sleuthkit.autopsy.ingest.IngestServices.getCurrentSleuthkitCaseDb(), org.sleuthkit.autopsy.casemodule.services.Blackboard.getOrAddArtifactType(), org.sleuthkit.autopsy.casemodule.services.Blackboard.getOrAddAttributeType(), org.sleuthkit.autopsy.casemodule.services.Blackboard.indexArtifact(), org.sleuthkit.autopsy.commandlineingest.CommandLineIngestManager.JobProcessingTask.openCase(), org.sleuthkit.autopsy.contentviewers.AnnotationsContentViewer.populateCentralRepositoryData(), org.sleuthkit.autopsy.modules.dataSourceIntegrity.DataSourceIntegrityIngestModule.process(), org.sleuthkit.autopsy.modules.plaso.PlasoIngestModule.process(), org.sleuthkit.autopsy.logicalimager.dsp.LogicalImagerDSProcessor.run(), and org.sleuthkit.autopsy.casemodule.ImageFilePanel.validatePanel().

static Case org.sleuthkit.autopsy.casemodule.Case.getCurrentCaseThrows ( ) throws NoCurrentCaseException
static

Gets the current case, if there is one, or throws an exception if there is no current case. This method should only be called by methods known to run in threads where it is possible that another thread has closed the current case. The exception provides some protection from the consequences of the race condition between the calling thread and a case closing thread, but it is not fool-proof. Background threads calling this method should put all operations in an exception firewall with a try and catch-all block to handle the possibility of bad timing.

Returns
The current case.
Exceptions
NoCurrentCaseExceptionif there is no current case.

Definition at line 684 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.currentCase.

Referenced by org.sleuthkit.autopsy.actions.AddBookmarkTagAction.actionPerformed(), org.sleuthkit.autopsy.actions.OpenLogFolderAction.actionPerformed(), org.sleuthkit.autopsy.actions.DeleteContentTagAction.actionPerformed(), org.sleuthkit.autopsy.actions.DeleteBlackboardArtifactTagAction.actionPerformed(), org.sleuthkit.autopsy.centralrepository.AddEditCentralRepoCommentAction.actionPerformed(), org.sleuthkit.autopsy.directorytree.ExternalViewerAction.actionPerformed(), org.sleuthkit.autopsy.directorytree.ViewContextAction.actionPerformed(), org.sleuthkit.autopsy.datamodel.Reports.ReportNode.DeleteReportAction.actionPerformed(), org.sleuthkit.autopsy.casemodule.services.TagsManager.addBlackboardArtifactTag(), org.sleuthkit.autopsy.casemodule.services.TagsManager.addContentTag(), org.sleuthkit.autopsy.communications.VisualizationPanel.addNotify(), org.sleuthkit.autopsy.actions.AddBlackboardArtifactTagAction.addTag(), org.sleuthkit.autopsy.actions.AddContentTagAction.addTag(), org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.addTagProperty(), org.sleuthkit.autopsy.datamodel.AttachmentNode.AttachmentNode(), org.sleuthkit.autopsy.corecomponents.DataContentTopComponent.canClose(), org.sleuthkit.autopsy.corecomponents.DataResultTopComponent.canClose(), org.sleuthkit.autopsy.corecomponents.DataResultPanel.canClose(), org.sleuthkit.autopsy.directorytree.DirectoryTreeTopComponent.canClose(), org.sleuthkit.autopsy.casemodule.ImageDSProcessor.canProcess(), org.sleuthkit.autopsy.casemodule.events.CommentChangedEvent.CommentChangedEvent(), org.sleuthkit.autopsy.directorytree.DirectoryTreeTopComponent.componentOpened(), org.sleuthkit.autopsy.datamodel.AbstractContentNode< Pool >.contentHasVisibleContentChildren(), org.sleuthkit.autopsy.coreutils.SQLiteTableReader.copyFileToTempDirectory(), org.sleuthkit.autopsy.ingest.DataSourceIngestJob.createIngestPipelines(), org.sleuthkit.autopsy.modules.filetypeid.FileTypeIdIngestModule.createInterestingFileHit(), org.sleuthkit.autopsy.datamodel.AutopsyTreeChildFactory.createKeys(), org.sleuthkit.autopsy.datamodel.Reports.ReportNodeFactory.createKeys(), org.sleuthkit.autopsy.datamodel.Tags.TagNameNodeFactory.createKeys(), org.sleuthkit.autopsy.datamodel.Tags.ContentTagNodeFactory.createKeys(), org.sleuthkit.autopsy.datamodel.Tags.BlackboardArtifactTagNodeFactory.createKeys(), org.sleuthkit.autopsy.datamodel.AttachmentNode.createLookup(), org.sleuthkit.autopsy.centralrepository.contentviewer.OtherOccurrencesFilesTableModel.createNodeKey(), org.sleuthkit.autopsy.timeline.actions.SaveSnapshotAsReport.createReport(), org.sleuthkit.autopsy.report.infrastructure.ReportGenerator.createReportDirectory(), org.sleuthkit.autopsy.datamodel.VirtualDirectoryNode.createSheet(), org.sleuthkit.autopsy.datamodel.ImageNode.createSheet(), org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.createSheet(), org.sleuthkit.autopsy.casemodule.services.TagsManager.deleteBlackboardArtifactTag(), org.sleuthkit.autopsy.casemodule.services.TagsManager.deleteContentTag(), org.sleuthkit.autopsy.actions.DeleteFileContentTagAction.deleteTag(), org.sleuthkit.autopsy.actions.DeleteFileBlackboardArtifactTagAction.deleteTag(), org.sleuthkit.autopsy.casemodule.services.contentviewertags.ContentViewerTagManager.deleteTag(), org.sleuthkit.autopsy.actions.GetTagNameDialog.display(), org.sleuthkit.autopsy.actions.GetTagNameAndCommentDialog.display(), org.sleuthkit.autopsy.filequery.OpenFileDiscoveryAction.displayErrorMessage(), org.sleuthkit.autopsy.modules.embeddedfileextractor.ExtractArchiveWithPasswordAction.ExtractAndIngestWorker.doInBackground(), org.sleuthkit.autopsy.corecomponents.DataContentViewerHex.BackgroundFileCopyTask.doInBackground(), org.sleuthkit.autopsy.directorytree.actionhelpers.ExtractActionHelper.extractFile(), org.sleuthkit.autopsy.directorytree.actionhelpers.ExtractActionHelper.extractFiles(), org.sleuthkit.autopsy.casemodule.LocalFilesDSProcessor.extractLogicalEvidenceFileContents(), org.sleuthkit.autopsy.datamodel.FileTypesByExtension.FileTypesByExtObservable.FileTypesByExtObservable(), org.sleuthkit.autopsy.commonpropertiessearch.CommonAttributeCaseSearchResults.filterMetadata(), org.sleuthkit.autopsy.coreutils.AppSQLiteDB.findAndCopySQLiteDB(), org.sleuthkit.autopsy.coreutils.AppSQLiteDB.findAndCopySQLiteMetaFile(), org.sleuthkit.autopsy.coreutils.SQLiteTableReader.findAndCopySQLiteMetaFile(), org.sleuthkit.autopsy.commonpropertiessearch.IntraCaseCommonAttributeSearcher.findMatchesByCount(), org.sleuthkit.autopsy.ingest.IngestMonitor.MonitorTimerAction.findRootDirectoryForCurrentCase(), org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationDataSource.fromTSKDataSource(), org.sleuthkit.autopsy.report.modules.stix.STIXReportModule.generateReport(), org.sleuthkit.autopsy.report.modules.taggedhashes.SaveTaggedHashesToHashDb.generateReport(), org.sleuthkit.autopsy.report.modules.caseuco.CaseUcoReportModule.generateReport(), org.sleuthkit.autopsy.report.modules.kml.KMLReport.generateReport(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.generateReport(), org.sleuthkit.autopsy.datamodel.utils.DataSourceLoader.getAllDataSources(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.getAllInterestingItemsSets(), org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.getAllTagsFromDatabase(), org.sleuthkit.autopsy.actions.AddTagAction.TagMenu.getAndAddTag(), org.sleuthkit.autopsy.coreutils.ImageUtils.getCachedThumbnailLocation(), org.sleuthkit.autopsy.ingest.IngestServices.getCase(), org.sleuthkit.autopsy.ingest.IngestServices.getCaseDatabase(), org.sleuthkit.autopsy.timeline.TimeLineModule.getController(), org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationAttributeUtil.getCorrAttrForFile(), org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationAttributeUtil.getCorrAttrSourceArtifact(), org.sleuthkit.autopsy.centralrepository.contentviewer.DataContentViewerOtherCases.getCorrelatedInstances(), org.sleuthkit.autopsy.casemodule.Case.getCurrentCase(), org.sleuthkit.autopsy.casemodule.events.DataSourceNameChangedEvent.getDataSource(), org.sleuthkit.autopsy.ingest.events.DataSourceAnalysisEvent.getDataSource(), org.sleuthkit.autopsy.filesearch.DataSourcePanel.getDataSourceArray(), org.sleuthkit.autopsy.report.infrastructure.ReportGenerator.getFiles(), org.sleuthkit.autopsy.timeline.events.TimelineEventAddedEvent.getNewValue(), org.sleuthkit.autopsy.casemodule.events.ReportAddedEvent.getNewValue(), org.sleuthkit.autopsy.ingest.events.FileAnalyzedEvent.getNewValue(), org.sleuthkit.autopsy.casemodule.events.DataSourceAddedEvent.getNewValue(), org.sleuthkit.autopsy.contentviewers.MessageContentViewer.getNodeArtifact(), org.sleuthkit.autopsy.ingest.events.ContentChangedEvent.getOldValue(), org.sleuthkit.autopsy.ingest.events.BlackboardPostEvent.getOldValue(), org.sleuthkit.autopsy.report.infrastructure.TableReportGenerator.ArtifactData.getOrderedRowDataAsStrings(), org.sleuthkit.autopsy.keywordsearch.ExtractedTextViewer.getRawArtifactText(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.getRelativeFilePath(), org.sleuthkit.autopsy.casemodule.services.contentviewertags.ContentViewerTagManager.getTag(), org.sleuthkit.autopsy.casemodule.services.TagsManager.getTagDisplayNames(), org.sleuthkit.autopsy.coreutils.VideoUtils.getVideoFileInTempDir(), org.sleuthkit.autopsy.communications.VisualizationPanel.handleSnapshotEvent(), org.sleuthkit.autopsy.ingest.IngestJobSettingsPanel.IngestJobSettingsPanel(), org.sleuthkit.autopsy.communications.FiltersPanel.initalizeDateTimeFilters(), org.sleuthkit.autopsy.ingest.RunIngestAction.isEnabled(), org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationAttributeUtil.makeCorrAttr(), org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationAttributeUtil.makeCorrAttrFromFile(), org.sleuthkit.autopsy.datamodel.DataSourcesNode.DataSourcesNodeChildren.makeKeys(), org.sleuthkit.autopsy.actions.GetTagNameDialog.okButtonActionPerformed(), org.sleuthkit.autopsy.actions.OpenOutputFolderAction.performAction(), org.sleuthkit.autopsy.healthmonitor.HealthMonitor.performDatabaseQuery(), org.sleuthkit.autopsy.contentviewers.contextviewer.ContextViewer.populateSourceContextData(), org.sleuthkit.autopsy.centralrepository.contentviewer.DataContentViewerOtherCases.populateTable(), org.sleuthkit.autopsy.contentviewers.AnnotationsContentViewer.populateTagData(), org.sleuthkit.autopsy.modules.exif.ExifParserFileIngestModule.process(), org.sleuthkit.autopsy.modules.fileextmismatch.FileExtMismatchIngestModule.process(), org.sleuthkit.autopsy.modules.hashdatabase.HashDbIngestModule.process(), org.sleuthkit.autopsy.datasourceprocessors.xry.XRYDataSourceProcessor.process(), org.sleuthkit.autopsy.filesearch.DateSearchFilter.CasePropertyChangeListener.propertyChange(), org.sleuthkit.autopsy.directorytree.DirectoryTreeTopComponent.propertyChange(), org.sleuthkit.autopsy.directorytree.DirectoryTreeTopComponent.rebuildTree(), org.sleuthkit.autopsy.casemodule.IngestJobInfoPanel.refresh(), org.sleuthkit.autopsy.report.modules.html.HTMLReport.refresh(), org.sleuthkit.autopsy.actions.ReplaceContentTagAction.replaceTag(), org.sleuthkit.autopsy.actions.ReplaceBlackboardArtifactTagAction.replaceTag(), org.sleuthkit.autopsy.commandlineingest.CommandLineIngestManager.JobProcessingTask.run(), org.sleuthkit.autopsy.centralrepository.eventlisteners.CaseEventListener.ContentTagTask.run(), org.sleuthkit.autopsy.datasourceprocessors.xry.XRYDataSourceProcessor.run(), org.sleuthkit.autopsy.centralrepository.eventlisteners.CaseEventListener.BlackboardTagTask.run(), org.sleuthkit.autopsy.centralrepository.eventlisteners.CaseEventListener.TagDefinitionChangeTask.run(), org.sleuthkit.autopsy.centralrepository.eventlisteners.IngestEventsListener.AnalysisCompleteTask.run(), org.sleuthkit.autopsy.centralrepository.eventlisteners.CaseEventListener.DataSourceAddedTask.run(), org.sleuthkit.autopsy.centralrepository.eventlisteners.CaseEventListener.DataSourceNameChangedTask.run(), org.sleuthkit.autopsy.directorytree.ExportCSVAction.saveNodesToCSV(), org.sleuthkit.autopsy.casemodule.services.contentviewertags.ContentViewerTagManager.saveTag(), org.sleuthkit.autopsy.centralrepository.contentviewer.DataContentViewerOtherCases.saveToCSV(), org.sleuthkit.autopsy.timeline.OpenTimelineAction.showTimeline(), org.sleuthkit.autopsy.ingest.IngestManager.startIngestJob(), org.sleuthkit.autopsy.modules.embeddedfileextractor.EmbeddedFileExtractorIngestModule.startUp(), org.sleuthkit.autopsy.thunderbirdparser.ThunderbirdMboxFileIngestModule.startUp(), org.sleuthkit.autopsy.keywordsearch.KeywordSearchIngestModule.startUp(), org.sleuthkit.autopsy.ingest.IngestManager.subscribeToServiceMonitorEvents(), org.sleuthkit.autopsy.timeline.OpenTimelineAction.tooManyFiles(), org.sleuthkit.autopsy.datamodel.Tags.TagNameNode.updateDisplayName(), org.sleuthkit.autopsy.datamodel.Tags.ContentTagTypeNode.updateDisplayName(), org.sleuthkit.autopsy.datamodel.Tags.BlackboardArtifactTagTypeNode.updateDisplayName(), org.sleuthkit.autopsy.communications.FiltersPanel.updateFilters(), org.sleuthkit.autopsy.centralrepository.contentviewer.DataContentViewerOtherCases.updateOnCaseSelection(), org.sleuthkit.autopsy.casemodule.services.contentviewertags.ContentViewerTagManager.updateTag(), org.sleuthkit.autopsy.report.modules.html.HTMLReport.writeIndex(), and org.sleuthkit.autopsy.report.modules.html.HTMLReport.writeSummary().

List<Content> org.sleuthkit.autopsy.casemodule.Case.getDataSources ( ) throws TskCoreException
String org.sleuthkit.autopsy.casemodule.Case.getDisplayName ( )

Gets the case name that can be changed by the user.

Returns
The case display name.

Definition at line 1263 of file Case.java.

References org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDisplayName().

Referenced by org.sleuthkit.autopsy.casemodule.Case.closeCurrentCase(), org.sleuthkit.autopsy.geolocation.GeolocationTopComponent.createReportDirectory(), org.sleuthkit.autopsy.report.infrastructure.ReportGenerator.createReportDirectory(), org.sleuthkit.autopsy.commonpropertiessearch.CommonAttributeCaseSearchResults.filterMetadata(), org.sleuthkit.autopsy.commonpropertiessearch.IntraCaseCommonAttributeSearcher.findMatchesByCount(), org.sleuthkit.autopsy.commonpropertiessearch.CentralRepoCommonAttributeInstance.generateNodes(), org.sleuthkit.autopsy.report.modules.taggedhashes.SaveTaggedHashesToHashDb.generateReport(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.generateReport(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.getRelativeFilePath(), org.sleuthkit.autopsy.communications.VisualizationPanel.handleSnapshotEvent(), org.sleuthkit.autopsy.casemodule.Case.openAppServiceCaseResources(), org.sleuthkit.autopsy.casemodule.Case.openAsCurrentCase(), org.sleuthkit.autopsy.centralrepository.contentviewer.DataContentViewerOtherCases.populateTable(), org.sleuthkit.autopsy.timeline.actions.SaveSnapshotAsReport.SaveSnapshotAsReport(), org.sleuthkit.autopsy.casemodule.Case.updateGUIForCaseOpened(), org.sleuthkit.autopsy.report.modules.html.HTMLReport.writeIndex(), and org.sleuthkit.autopsy.report.modules.html.HTMLReport.writeSummaryCaseDetails().

String org.sleuthkit.autopsy.casemodule.Case.getExaminer ( )
String org.sleuthkit.autopsy.casemodule.Case.getExaminerEmail ( )

Gets the examiner email address.

Returns
The examiner email address.

Definition at line 1299 of file Case.java.

References org.sleuthkit.autopsy.casemodule.CaseMetadata.getExaminerEmail().

Referenced by org.sleuthkit.autopsy.casemodule.Case.createPortableCase().

String org.sleuthkit.autopsy.casemodule.Case.getExaminerPhone ( )

Gets the examiner phone number.

Returns
The examiner phone number.

Definition at line 1290 of file Case.java.

References org.sleuthkit.autopsy.casemodule.CaseMetadata.getExaminerPhone().

Referenced by org.sleuthkit.autopsy.casemodule.Case.createPortableCase().

String org.sleuthkit.autopsy.casemodule.Case.getExportDirectory ( )
String org.sleuthkit.autopsy.casemodule.Case.getLogDirectoryPath ( )

Gets the full path to the log directory for this case, creating it if it does not exist.

Returns
The log directory path.

Definition at line 1379 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.getOrCreateSubdirectory().

Referenced by org.sleuthkit.autopsy.actions.OpenLogFolderAction.actionPerformed(), and org.sleuthkit.autopsy.casemodule.Case.switchLoggingToCaseLogsDirectory().

String org.sleuthkit.autopsy.casemodule.Case.getModuleDirectory ( )
String org.sleuthkit.autopsy.casemodule.Case.getModuleOutputDirectoryRelativePath ( )

Gets the path of the module output directory for this case, relative to the case directory, creating it if it does not exist.

Returns
The path to the module output directory, relative to the case directory.

Definition at line 1420 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.getCaseType(), org.sleuthkit.autopsy.casemodule.Case.getModuleDirectory(), and org.sleuthkit.autopsy.casemodule.Case.CaseType.MULTI_USER_CASE.

Referenced by org.sleuthkit.autopsy.modules.embeddedfileextractor.ExtractArchiveWithPasswordAction.ExtractAndIngestWorker.doInBackground(), and org.sleuthkit.autopsy.modules.embeddedfileextractor.EmbeddedFileExtractorIngestModule.startUp().

String org.sleuthkit.autopsy.casemodule.Case.getModulesOutputDirAbsPath ( )

Get module output directory path where modules should save their permanent data.

Returns
absolute path to the module output directory
Deprecated:
Use getModuleDirectory() instead.

Definition at line 3426 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.getModuleDirectory().

static String org.sleuthkit.autopsy.casemodule.Case.getModulesOutputDirRelPath ( )
static

Get relative (with respect to case dir) module output directory path where modules should save their permanent data. The directory is a subdirectory of this case dir.

Returns
relative path to the module output dir
Deprecated:
Use getModuleOutputDirectoryRelativePath() instead

Definition at line 3397 of file Case.java.

String org.sleuthkit.autopsy.casemodule.Case.getName ( )
static String org.sleuthkit.autopsy.casemodule.Case.getNameForTitle ( )
staticprivate
String org.sleuthkit.autopsy.casemodule.Case.getNumber ( )
String org.sleuthkit.autopsy.casemodule.Case.getOrCreateSubdirectory ( String  subDirectoryName)
private
String org.sleuthkit.autopsy.casemodule.Case.getOutputDirectory ( )

Gets the root case output directory for this case, creating it if it does not exist. If the case is a single-user case, this is the case directory. If the case is a multi-user case, this is a subdirectory of the case directory specific to the host machine.

Returns
the path to the host output directory.

Definition at line 1329 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.getCaseDirectory(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseType(), org.sleuthkit.autopsy.coreutils.NetworkUtils.getLocalHostName(), and org.sleuthkit.autopsy.casemodule.Case.CaseType.MULTI_USER_CASE.

Referenced by org.sleuthkit.autopsy.casemodule.Case.getOrCreateSubdirectory(), and org.sleuthkit.autopsy.actions.OpenOutputFolderAction.performAction().

static PropertyChangeSupport org.sleuthkit.autopsy.casemodule.Case.getPropertyChangeSupport ( )
static

Gets a PropertyChangeSupport object. The PropertyChangeSupport object returned is not used by instances of this class and does not have any PropertyChangeListeners.

Returns
A new PropertyChangeSupport object.
Deprecated:
Do not use.

Definition at line 3412 of file Case.java.

String org.sleuthkit.autopsy.casemodule.Case.getReportDirectory ( )
Services org.sleuthkit.autopsy.casemodule.Case.getServices ( )

Gets the case services manager.

Returns
The case services manager.

Definition at line 1227 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.caseServices.

Referenced by org.sleuthkit.autopsy.actions.AddBookmarkTagAction.actionPerformed(), org.sleuthkit.autopsy.actions.DeleteContentTagAction.actionPerformed(), org.sleuthkit.autopsy.actions.DeleteBlackboardArtifactTagAction.actionPerformed(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.addArtifactsToPortableCase(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.addFilesToPortableCase(), org.sleuthkit.autopsy.actions.AddBlackboardArtifactTagAction.addTag(), org.sleuthkit.autopsy.actions.AddContentTagAction.addTag(), org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.addTagProperty(), org.sleuthkit.autopsy.report.modules.html.HTMLReport.addThumbnailRows(), org.sleuthkit.autopsy.datamodel.Tags.TagNameNodeFactory.createKeys(), org.sleuthkit.autopsy.datamodel.Tags.ContentTagNodeFactory.createKeys(), org.sleuthkit.autopsy.datamodel.Tags.BlackboardArtifactTagNodeFactory.createKeys(), org.sleuthkit.autopsy.actions.DeleteFileContentTagAction.deleteTag(), org.sleuthkit.autopsy.actions.DeleteFileBlackboardArtifactTagAction.deleteTag(), org.sleuthkit.autopsy.actions.GetTagNameDialog.display(), org.sleuthkit.autopsy.actions.GetTagNameAndCommentDialog.display(), org.sleuthkit.autopsy.datasourceprocessors.xry.XRYDataSourceProcessor.XRYReportProcessorSwingWorker.doInBackground(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.generateCaseUcoReport(), org.sleuthkit.autopsy.report.modules.taggedhashes.SaveTaggedHashesToHashDb.generateReport(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.generateReport(), org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.getAllTagsFromDatabase(), org.sleuthkit.autopsy.actions.AddTagAction.TagMenu.getAndAddTag(), org.sleuthkit.autopsy.report.infrastructure.TableReportGenerator.ArtifactData.getOrderedRowDataAsStrings(), org.sleuthkit.autopsy.casemodule.services.TagsManager.getTagDisplayNames(), org.sleuthkit.autopsy.actions.GetTagNameDialog.okButtonActionPerformed(), org.sleuthkit.autopsy.modules.dataSourceIntegrity.DataSourceIntegrityIngestModule.process(), org.sleuthkit.autopsy.modules.plaso.PlasoIngestModule.process(), org.sleuthkit.autopsy.actions.ReplaceContentTagAction.replaceTag(), org.sleuthkit.autopsy.actions.ReplaceBlackboardArtifactTagAction.replaceTag(), org.sleuthkit.autopsy.centralrepository.eventlisteners.CaseEventListener.ContentTagTask.run(), org.sleuthkit.autopsy.centralrepository.eventlisteners.CaseEventListener.BlackboardTagTask.run(), org.sleuthkit.autopsy.centralrepository.eventlisteners.CaseEventListener.TagDefinitionChangeTask.run(), org.sleuthkit.autopsy.thunderbirdparser.ThunderbirdMboxFileIngestModule.startUp(), org.sleuthkit.autopsy.datamodel.Tags.TagNameNode.updateDisplayName(), org.sleuthkit.autopsy.datamodel.Tags.ContentTagTypeNode.updateDisplayName(), and org.sleuthkit.autopsy.datamodel.Tags.BlackboardArtifactTagTypeNode.updateDisplayName().

SleuthkitCase org.sleuthkit.autopsy.casemodule.Case.getSleuthkitCase ( )

Gets the case database.

Returns
The case database.

Definition at line 1218 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.caseDb.

Referenced by org.sleuthkit.autopsy.directorytree.ViewContextAction.actionPerformed(), org.sleuthkit.autopsy.thunderbirdparser.ThunderbirdMboxFileIngestModule.addEmailArtifact(), org.sleuthkit.autopsy.communications.VisualizationPanel.addNotify(), org.sleuthkit.autopsy.datamodel.AttachmentNode.AttachmentNode(), org.sleuthkit.autopsy.featureaccess.FeatureAccessUtils.canDeleteDataSources(), org.sleuthkit.autopsy.keywordsearch.SolrSearchService.closeCaseResources(), org.sleuthkit.autopsy.timeline.TimeLineTopComponent.componentOpened(), org.sleuthkit.autopsy.datamodel.AbstractContentNode< Pool >.contentHasVisibleContentChildren(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.copyArtifact(), org.sleuthkit.autopsy.ingest.DataSourceIngestJob.createIngestPipelines(), org.sleuthkit.autopsy.modules.filetypeid.FileTypeIdIngestModule.createInterestingFileHit(), org.sleuthkit.autopsy.datamodel.AutopsyTreeChildFactory.createKeys(), org.sleuthkit.autopsy.datamodel.AttachmentNode.createLookup(), org.sleuthkit.autopsy.modules.plaso.PlasoIngestModule.createPlasoArtifacts(), org.sleuthkit.autopsy.datamodel.VirtualDirectoryNode.createSheet(), org.sleuthkit.autopsy.datamodel.ImageNode.createSheet(), org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.createSheet(), org.sleuthkit.autopsy.casemodule.services.contentviewertags.ContentViewerTagManager.deleteTag(), org.sleuthkit.autopsy.filequery.OpenFileDiscoveryAction.displayErrorMessage(), org.sleuthkit.autopsy.datasourceprocessors.xry.XRYDataSourceProcessor.XRYReportProcessorSwingWorker.doInBackground(), org.sleuthkit.autopsy.geolocation.GeoFilterPanel.DataSourceUpdater.doInBackground(), org.sleuthkit.autopsy.timeline.EventsModel.EventsModel(), org.sleuthkit.autopsy.coreutils.AppSQLiteDB.findAndCopySQLiteDB(), org.sleuthkit.autopsy.coreutils.AppSQLiteDB.findAndCopySQLiteMetaFile(), org.sleuthkit.autopsy.coreutils.SQLiteTableReader.findAndCopySQLiteMetaFile(), org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationDataSource.fromTSKDataSource(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.generateCaseUcoReport(), org.sleuthkit.autopsy.report.modules.kml.KMLReport.generateReport(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.generateReport(), org.sleuthkit.autopsy.datamodel.utils.DataSourceLoader.getAllDataSources(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.getAllInterestingItemsSets(), org.sleuthkit.autopsy.casemodule.services.Services.getArtifactsBlackboard(), org.sleuthkit.autopsy.ingest.IngestServices.getCaseDatabase(), org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationAttributeUtil.getCorrAttrSourceArtifact(), org.sleuthkit.autopsy.ingest.IngestServices.getCurrentSleuthkitCaseDb(), org.sleuthkit.autopsy.casemodule.events.DataSourceNameChangedEvent.getDataSource(), org.sleuthkit.autopsy.ingest.events.DataSourceAnalysisEvent.getDataSource(), org.sleuthkit.autopsy.filesearch.DataSourcePanel.getDataSourceArray(), org.sleuthkit.autopsy.report.infrastructure.ReportGenerator.getFiles(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.getImageTagDataForContentTag(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.getNewArtifactTypeId(), org.sleuthkit.autopsy.timeline.events.TimelineEventAddedEvent.getNewValue(), org.sleuthkit.autopsy.casemodule.events.ReportAddedEvent.getNewValue(), org.sleuthkit.autopsy.ingest.events.FileAnalyzedEvent.getNewValue(), org.sleuthkit.autopsy.casemodule.events.DataSourceAddedEvent.getNewValue(), org.sleuthkit.autopsy.contentviewers.MessageContentViewer.getNodeArtifact(), org.sleuthkit.autopsy.ingest.events.ContentChangedEvent.getOldValue(), org.sleuthkit.autopsy.ingest.events.BlackboardPostEvent.getOldValue(), org.sleuthkit.autopsy.casemodule.services.Blackboard.getOrAddArtifactType(), org.sleuthkit.autopsy.casemodule.services.Blackboard.getOrAddAttributeType(), org.sleuthkit.autopsy.keywordsearch.ExtractedTextViewer.getRawArtifactText(), org.sleuthkit.autopsy.timeline.EventsModel.getSleuthkitCase(), org.sleuthkit.autopsy.casemodule.services.contentviewertags.ContentViewerTagManager.getTag(), org.sleuthkit.autopsy.timeline.EventsModel.handleArtifactTagDeleted(), org.sleuthkit.autopsy.timeline.EventsModel.handleContentTagDeleted(), org.sleuthkit.autopsy.casemodule.services.Blackboard.indexArtifact(), org.sleuthkit.autopsy.ingest.IngestJobSettingsPanel.IngestJobSettingsPanel(), org.sleuthkit.autopsy.timeline.actions.AddManualEvent.JEventCreationDialog.EventCreationDialogPane.initialize(), org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationAttributeUtil.makeCorrAttr(), org.sleuthkit.autopsy.datamodel.DataSourcesNode.DataSourcesNodeChildren.makeKeys(), org.sleuthkit.autopsy.keywordsearch.SolrSearchService.openCaseResources(), org.sleuthkit.autopsy.healthmonitor.HealthMonitor.performDatabaseQuery(), org.sleuthkit.autopsy.timeline.EventsModel.populateDataSourcesCache(), org.sleuthkit.autopsy.contentviewers.contextviewer.ContextViewer.populateSourceContextData(), org.sleuthkit.autopsy.centralrepository.contentviewer.DataContentViewerOtherCases.populateTable(), org.sleuthkit.autopsy.contentviewers.AnnotationsContentViewer.populateTagData(), org.sleuthkit.autopsy.thunderbirdparser.ThunderbirdMboxFileIngestModule.process(), org.sleuthkit.autopsy.modules.exif.ExifParserFileIngestModule.process(), org.sleuthkit.autopsy.modules.fileextmismatch.FileExtMismatchIngestModule.process(), org.sleuthkit.autopsy.modules.dataSourceIntegrity.DataSourceIntegrityIngestModule.process(), org.sleuthkit.autopsy.modules.hashdatabase.HashDbIngestModule.process(), org.sleuthkit.autopsy.casemodule.IngestJobInfoPanel.refresh(), org.sleuthkit.autopsy.commandlineingest.CommandLineIngestManager.JobProcessingTask.run(), org.sleuthkit.autopsy.centralrepository.eventlisteners.CaseEventListener.ContentTagTask.run(), org.sleuthkit.autopsy.centralrepository.eventlisteners.CaseEventListener.BlackboardTagTask.run(), org.sleuthkit.autopsy.centralrepository.eventlisteners.CaseEventListener.TagDefinitionChangeTask.run(), org.sleuthkit.autopsy.report.modules.portablecase.PortableCaseReportModule.saveHighestIds(), org.sleuthkit.autopsy.casemodule.services.contentviewertags.ContentViewerTagManager.saveTag(), org.sleuthkit.autopsy.timeline.ui.ViewFrame.syncViewMode(), org.sleuthkit.autopsy.timeline.OpenTimelineAction.tooManyFiles(), org.sleuthkit.autopsy.timeline.EventsModel.updateEventsForHashSetHits(), org.sleuthkit.autopsy.communications.FiltersPanel.updateFilters(), org.sleuthkit.autopsy.casemodule.Case.updateGUIForCaseOpened(), org.sleuthkit.autopsy.casemodule.services.contentviewertags.ContentViewerTagManager.updateTag(), org.sleuthkit.autopsy.communications.snapshot.CommSnapShotReportWriter.writeSnapShotHTMLFile(), and org.sleuthkit.autopsy.report.modules.html.HTMLReport.writeSummary().

String org.sleuthkit.autopsy.casemodule.Case.getTempDirectory ( )
String org.sleuthkit.autopsy.casemodule.Case.getTextIndexName ( )

Gets the name of the legacy keyword search index for the case. Not for general use.

Returns
The index name.

Definition at line 1469 of file Case.java.

References org.sleuthkit.autopsy.casemodule.CaseMetadata.getTextIndexName().

Set<TimeZone> org.sleuthkit.autopsy.casemodule.Case.getTimeZone ( )

Gets the time zone(s) of the image data source(s) in this case.

Returns
The set of time zones in use.
Deprecated:
Use getTimeZones instead.

Definition at line 3463 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.getTimeZones().

Set<TimeZone> org.sleuthkit.autopsy.casemodule.Case.getTimeZones ( )

Gets the time zone(s) of the image data source(s) in this case.

Returns
The set of time zones in use.

Definition at line 1447 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.getDataSources().

Referenced by org.sleuthkit.autopsy.casemodule.Case.getTimeZone().

boolean org.sleuthkit.autopsy.casemodule.Case.hasData ( )
static void org.sleuthkit.autopsy.casemodule.Case.invokeStartupDialog ( )
static
static boolean org.sleuthkit.autopsy.casemodule.Case.isCaseOpen ( )
static

Checks if a case, the current case, is open at the time it is called.

Returns
True or false.

Definition at line 648 of file Case.java.

Referenced by org.sleuthkit.autopsy.actions.OpenLogFolderAction.actionPerformed(), org.sleuthkit.autopsy.centralrepository.optionspanel.GlobalSettingsPanel.addIngestJobEventsListener(), org.sleuthkit.autopsy.featureaccess.FeatureAccessUtils.canDeleteDataSources(), org.sleuthkit.autopsy.centralrepository.optionspanel.GlobalSettingsPanel.cbUseCentralRepoActionPerformed(), org.sleuthkit.autopsy.commonpropertiessearch.CommonAttributeSearchAction.createAndShowPanel(), org.sleuthkit.autopsy.featureaccess.FeatureAccessUtils.currentCaseIsSingleUserCase(), org.sleuthkit.autopsy.centralrepository.contentviewer.DataContentViewerOtherCases.customizeComponents(), org.sleuthkit.autopsy.casemodule.DeleteDataSourceAction.DataSourceDeletionWorker.done(), org.sleuthkit.autopsy.casemodule.Case.existsCurrentCase(), org.sleuthkit.autopsy.allcasessearch.AllCasesSearchAction.isEnabled(), org.sleuthkit.autopsy.diagnostics.PerformancePanelAction.isEnabled(), org.sleuthkit.autopsy.actions.ShowIngestProgressSnapshotAction.isEnabled(), org.sleuthkit.autopsy.commonpropertiessearch.CommonAttributeSearchAction.isEnabled(), org.sleuthkit.autopsy.filequery.OpenFileDiscoveryAction.isEnabled(), org.sleuthkit.autopsy.timeline.OpenTimelineAction.isEnabled(), org.sleuthkit.autopsy.actions.OpenOutputFolderAction.isEnabled(), org.sleuthkit.autopsy.corecomponents.ViewPreferencesPanel.load(), org.sleuthkit.autopsy.centralrepository.optionspanel.GlobalSettingsPanel.onSettingsChange(), org.sleuthkit.autopsy.centralrepository.optionspanel.GlobalSettingsPanel.IngestJobEventPropertyChangeListener.propertyChange(), and org.sleuthkit.autopsy.corecomponents.ViewPreferencesPanel.storeGroupItemsInTreeByDataSource().

static boolean org.sleuthkit.autopsy.casemodule.Case.isNoNodeException ( CoordinationServiceException  ex)
staticprivate

Examines a coordination service exception to try to determine if it is a "no node" exception, i.e., an operation was attempted on a node that does not exist.

Parameters
exA coordination service exception.
Returns
True or false.

Definition at line 3046 of file Case.java.

Referenced by org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCase().

static boolean org.sleuthkit.autopsy.casemodule.Case.isValidName ( String  caseName)
static

Checks if a case display name is valid, i.e., does not include any characters that cannot be used in file names.

Parameters
caseNameThe candidate case name.
Returns
True or false.

Definition at line 545 of file Case.java.

void org.sleuthkit.autopsy.casemodule.Case.notifyAddingDataSource ( UUID  eventId)

Notifies case event subscribers that a data source is being added to the case.

This should not be called from the event dispatch thread (EDT)

Parameters
eventIdA unique identifier for the event. This UUID must be used to call notifyFailedAddingDataSource or notifyNewDataSource after the data source is added.

Definition at line 1499 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.publish().

Referenced by org.sleuthkit.autopsy.commandlineingest.CommandLineIngestManager.JobProcessingTask.runDataSourceProcessor().

void org.sleuthkit.autopsy.casemodule.Case.notifyBlackBoardArtifactTagAdded ( BlackboardArtifactTag  newTag)

Notifies case event subscribers that an artifact tag has been added.

This should not be called from the event dispatch thread (EDT)

Parameters
newTagnew BlackboardArtifactTag added

Definition at line 1604 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.publish().

Referenced by org.sleuthkit.autopsy.casemodule.services.TagsManager.addBlackboardArtifactTag().

void org.sleuthkit.autopsy.casemodule.Case.notifyBlackBoardArtifactTagDeleted ( BlackboardArtifactTag  deletedTag)

Notifies case event subscribers that an artifact tag has been deleted.

This should not be called from the event dispatch thread (EDT)

Parameters
deletedTagBlackboardArtifactTag deleted

Definition at line 1615 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.publish().

Referenced by org.sleuthkit.autopsy.casemodule.services.TagsManager.deleteBlackboardArtifactTag().

void org.sleuthkit.autopsy.casemodule.Case.notifyCentralRepoCommentChanged ( long  contentId,
String  newComment 
)

Notifies case event subscribers that a central repository comment has been changed.

This should not be called from the event dispatch thread (EDT)

Parameters
contentIdthe objectId for the Content which has had its central repo comment changed
newCommentthe new value of the comment

Definition at line 1589 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.publish().

Referenced by org.sleuthkit.autopsy.centralrepository.AddEditCentralRepoCommentAction.actionPerformed().

void org.sleuthkit.autopsy.casemodule.Case.notifyContentTagAdded ( ContentTag  newTag)

Notifies case event subscribers that a content tag has been added.

This should not be called from the event dispatch thread (EDT)

Parameters
newTagnew ContentTag added

Definition at line 1552 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.publish().

Referenced by org.sleuthkit.autopsy.casemodule.services.TagsManager.addContentTag().

void org.sleuthkit.autopsy.casemodule.Case.notifyContentTagDeleted ( ContentTag  deletedTag)

Notifies case event subscribers that a content tag has been deleted.

This should not be called from the event dispatch thread (EDT)

Parameters
deletedTagContentTag deleted

Definition at line 1563 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.publish().

Referenced by org.sleuthkit.autopsy.casemodule.services.TagsManager.deleteContentTag().

void org.sleuthkit.autopsy.casemodule.Case.notifyDataSourceAdded ( Content  dataSource,
UUID  addingDataSourceEventId 
)

Notifies case event subscribers that a data source has been added to the case database.

This should not be called from the event dispatch thread (EDT)

Parameters
dataSourceThe data source.
addingDataSourceEventIdThe unique identifier for the corresponding adding data source event (see notifyAddingDataSource).

Definition at line 1528 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.publish().

Referenced by org.sleuthkit.autopsy.casemodule.Case.addImage(), and org.sleuthkit.autopsy.datasourceprocessors.AddDataSourceCallback.done().

void org.sleuthkit.autopsy.casemodule.Case.notifyDataSourceNameChanged ( Content  dataSource,
String  newName 
)

Notifies case event subscribers that a data source has been added to the case database.

This should not be called from the event dispatch thread (EDT)

Parameters
dataSourceThe data source.
newNameThe new name for the data source

Definition at line 1541 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.publish().

void org.sleuthkit.autopsy.casemodule.Case.notifyFailedAddingDataSource ( UUID  addingDataSourceEventId)

Notifies case event subscribers that a data source failed to be added to the case.

This should not be called from the event dispatch thread (EDT)

Parameters
addingDataSourceEventIdThe unique identifier for the corresponding adding data source event (see notifyAddingDataSource).

Definition at line 1513 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.publish().

Referenced by org.sleuthkit.autopsy.datasourceprocessors.AddDataSourceCallback.done().

void org.sleuthkit.autopsy.casemodule.Case.notifyTagDefinitionChanged ( String  changedTagName)

Notifies case event subscribers that a tag definition has changed.

This should not be called from the event dispatch thread (EDT)

Parameters
changedTagNamethe name of the tag definition which was changed

Definition at line 1574 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.publish(), and org.sleuthkit.autopsy.casemodule.Case.Events.TAG_DEFINITION_CHANGED.

Void org.sleuthkit.autopsy.casemodule.Case.open ( ProgressIndicator  progressIndicator,
Object  additionalParams 
) throws CaseActionException
private

A case action (interface CaseAction<T, V, R>) that opens the case database and application services for this case.

Parameters
progressIndicatorA progress indicator.
additionalParamsAn Object that holds any additional parameters for a case action. For this action, this is null.
Exceptions
CaseActionExceptionIf there is a problem completing the action. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.

Definition at line 1965 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.checkForCancellation(), org.sleuthkit.autopsy.casemodule.Case.close(), org.sleuthkit.autopsy.casemodule.Case.deleteTempfilesFromCaseDirectory(), org.sleuthkit.autopsy.casemodule.Case.openAppServiceCaseResources(), org.sleuthkit.autopsy.casemodule.Case.openCaseDataBase(), org.sleuthkit.autopsy.casemodule.Case.openCaseLevelServices(), org.sleuthkit.autopsy.casemodule.Case.openCommunicationChannels(), org.sleuthkit.autopsy.casemodule.Case.switchLoggingToCaseLogsDirectory(), and org.sleuthkit.autopsy.casemodule.Case.updateCaseNodeData().

Referenced by org.sleuthkit.autopsy.actions.OpenLogFolderAction.actionPerformed(), and org.sleuthkit.autopsy.actions.OpenOutputFolderAction.performAction().

static void org.sleuthkit.autopsy.casemodule.Case.open ( String  caseMetadataFilePath) throws CaseActionException
static

Opens an existing Autopsy case and makes it the current case.

Parameters
caseMetadataFilePathThe path of the case metadata (.aut) file.
Exceptions
CaseActionExceptionif there is a problem opening the case. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.
Deprecated:
Use openAsCurrentCase instead.

Definition at line 3302 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.openAsCurrentCase().

void org.sleuthkit.autopsy.casemodule.Case.openAppServiceCaseResources ( ProgressIndicator  progressIndicator) throws CaseActionException
private
static void org.sleuthkit.autopsy.casemodule.Case.openAsCurrentCase ( String  caseMetadataFilePath) throws CaseActionException
static
static void org.sleuthkit.autopsy.casemodule.Case.openAsCurrentCase ( Case  newCurrentCase,
boolean  isNewCase 
) throws CaseActionException, CaseActionCancelledException
staticprivate
void org.sleuthkit.autopsy.casemodule.Case.openCaseDataBase ( ProgressIndicator  progressIndicator) throws CaseActionException
private

Updates the node data for an existing case directory lock coordination service node and opens an existing case database.

Parameters
progressIndicatorA progress indicator.
Exceptions
CaseActionExceptionIf there is a problem completing the operation. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.

Definition at line 2295 of file Case.java.

References org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDatabaseName(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDirectory(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseType(), org.sleuthkit.autopsy.core.UserPreferences.getDatabaseConnectionInfo(), org.sleuthkit.autopsy.core.UserPreferences.getIsMultiUserModeEnabled(), org.sleuthkit.autopsy.progress.ProgressIndicator.progress(), and org.sleuthkit.autopsy.casemodule.Case.CaseType.SINGLE_USER_CASE.

Referenced by org.sleuthkit.autopsy.casemodule.Case.open().

void org.sleuthkit.autopsy.casemodule.Case.openCaseLevelServices ( ProgressIndicator  progressIndicator)
private

Opens the case-level services: the files manager, tags manager and blackboard.

Parameters
progressIndicatorA progress indicator.

Definition at line 2323 of file Case.java.

References org.sleuthkit.autopsy.progress.ProgressIndicator.progress().

Referenced by org.sleuthkit.autopsy.casemodule.Case.create(), and org.sleuthkit.autopsy.casemodule.Case.open().

void org.sleuthkit.autopsy.casemodule.Case.openCommunicationChannels ( ProgressIndicator  progressIndicator) throws CaseActionException
private

If this case is a multi-user case, sets up for communication with other application nodes.

Parameters
progressIndicatorA progress indicator.
Exceptions
CaseActionExceptionIf there is a problem completing the operation. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.

Definition at line 2461 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.checkForCancellation(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseName(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseType(), org.sleuthkit.autopsy.casemodule.Case.CaseType.MULTI_USER_CASE, org.sleuthkit.autopsy.events.AutopsyEventPublisher.openRemoteEventChannel(), and org.sleuthkit.autopsy.progress.ProgressIndicator.progress().

Referenced by org.sleuthkit.autopsy.casemodule.Case.create(), and org.sleuthkit.autopsy.casemodule.Case.open().

static boolean org.sleuthkit.autopsy.casemodule.Case.pathExists ( String  filePath)
static

Check if file exists and is a normal file.

Parameters
filePathThe file path.
Returns
True or false.
Deprecated:
Use java.io.File.exists or java.io.File.isFile instead

Definition at line 3358 of file Case.java.

void org.sleuthkit.autopsy.casemodule.Case.releaseCaseLock ( )
private
static void org.sleuthkit.autopsy.casemodule.Case.removeEventSubscriber ( String  eventName,
PropertyChangeListener  subscriber 
)
static

Removes a subscriber to specific case events.

Parameters
eventNameThe event the subscriber is no longer interested in.
subscriberThe subscriber (PropertyChangeListener) to remove.

Definition at line 511 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.removeSubscriber().

Referenced by org.sleuthkit.autopsy.casemodule.Case.removePropertyChangeListener().

static void org.sleuthkit.autopsy.casemodule.Case.removeEventSubscriber ( Set< String >  eventNames,
PropertyChangeListener  subscriber 
)
static

Removes a subscriber to specific case events.

Parameters
eventNamesThe event the subscriber is no longer interested in.
subscriberThe subscriber (PropertyChangeListener) to remove.

Definition at line 521 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.removeSubscriber().

static void org.sleuthkit.autopsy.casemodule.Case.removeEventTypeSubscriber ( Set< Events eventTypes,
PropertyChangeListener  subscriber 
)
static

Removes a subscriber to specific case events.

Parameters
eventTypesThe events the subscriber is no longer interested in.
subscriberThe subscriber (PropertyChangeListener) to remove.

Definition at line 531 of file Case.java.

References org.sleuthkit.autopsy.events.AutopsyEventPublisher.removeSubscriber().

Referenced by org.sleuthkit.autopsy.datamodel.DataSourcesNode.DataSourcesNodeChildren.onRemove(), org.sleuthkit.autopsy.datamodel.ImageNode.removeListeners(), org.sleuthkit.autopsy.datamodel.VolumeNode.removeListeners(), org.sleuthkit.autopsy.datamodel.FileTypesByMimeType.removeListeners(), org.sleuthkit.autopsy.datamodel.FileTypesByExtension.FileTypesByExtObservable.removeListeners(), org.sleuthkit.autopsy.datamodel.AbstractAbstractFileNode< SpecialDirectory >.removeListeners(), org.sleuthkit.autopsy.datamodel.FileSize.FileSizeRootChildren.FileSizeRootChildrenObservable.removeListeners(), org.sleuthkit.autopsy.datamodel.DeletedContent.DeletedContentsChildren.DeletedContentsChildrenObservable.removeListeners(), org.sleuthkit.autopsy.datamodel.AutopsyTreeChildFactory.removeNotify(), org.sleuthkit.autopsy.geolocation.GeolocationTopComponent.removeNotify(), org.sleuthkit.autopsy.datamodel.ExtractedContent.TypeFactory.removeNotify(), org.sleuthkit.autopsy.datamodel.Tags.TagNameNodeFactory.removeNotify(), org.sleuthkit.autopsy.datamodel.InterestingHits.SetNameFactory.removeNotify(), org.sleuthkit.autopsy.datamodel.HashsetHits.HashsetNameFactory.removeNotify(), org.sleuthkit.autopsy.datamodel.EmailExtracted.AccountFactory.removeNotify(), org.sleuthkit.autopsy.datamodel.accounts.Accounts.AccountTypeFactory.removeNotify(), org.sleuthkit.autopsy.datamodel.accounts.Accounts.DefaultAccountFactory.removeNotify(), org.sleuthkit.autopsy.datamodel.KeywordHits.ListFactory.removeNotify(), org.sleuthkit.autopsy.datamodel.accounts.Accounts.ViewModeFactory.removeNotify(), org.sleuthkit.autopsy.datamodel.accounts.Accounts.FileWithCCNFactory.removeNotify(), org.sleuthkit.autopsy.datamodel.accounts.Accounts.BINFactory.removeNotify(), and org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.unregisterListener().

static void org.sleuthkit.autopsy.casemodule.Case.removePropertyChangeListener ( PropertyChangeListener  listener)
static

Removes a subscriber to all case events. To remove a subscription to only specific events, use one of the overloads of removeEventSubscriber.

Parameters
listenerThe subscriber (PropertyChangeListener) to remove.

Definition at line 461 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.removeEventSubscriber().

Referenced by org.sleuthkit.autopsy.centralrepository.eventlisteners.Installer.uninstalled().

void org.sleuthkit.autopsy.casemodule.Case.saveCaseMetadataToFile ( ProgressIndicator  progressIndicator) throws CaseActionException
private

Saves teh case metadata to a file.SHould not be called until the case directory has been created.

Parameters
progressIndicatorA progress indicator.
Exceptions
CaseActionExceptionIf there is a problem completing the operation. The exception will have a user-friendly message and may be a wrapper for a lower-level exception.

Definition at line 2153 of file Case.java.

References org.sleuthkit.autopsy.progress.ProgressIndicator.progress().

Referenced by org.sleuthkit.autopsy.casemodule.Case.create().

static void org.sleuthkit.autopsy.casemodule.Case.setDeletedItemFlag ( CaseNodeData  caseNodeData,
CaseNodeData.DeletedFlags  flag 
) throws InterruptedException
staticprivate

Sets a deleted item flag in the coordination service node data for a multi-user case.

Parameters
caseNodeDataThe coordination service node data for the case.
flagThe flag to set.
Exceptions
InterruptedExceptionIf interrupted while blocked waiting for coordination service data to be written to the coordination service node database.

Definition at line 3067 of file Case.java.

References org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.getDirectory(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.getDisplayName(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.getName(), org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.setDeletedFlag(), and org.sleuthkit.autopsy.casemodule.multiusercases.CaseNodeData.writeCaseNodeData().

Referenced by org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCaseDatabase(), org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCaseDirectory(), and org.sleuthkit.autopsy.casemodule.Case.deleteMultiUserCaseTextIndex().

void org.sleuthkit.autopsy.casemodule.Case.switchLoggingToCaseLogsDirectory ( ProgressIndicator  progressIndicator)
private

Switches from writing log messages to the application logs to the logs subdirectory of the case directory.

Parameters
progressIndicatorA progress indicator.

Definition at line 2133 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.getLogDirectoryPath(), org.sleuthkit.autopsy.progress.ProgressIndicator.progress(), and org.sleuthkit.autopsy.coreutils.Logger.setLogDirectory().

Referenced by org.sleuthkit.autopsy.casemodule.Case.create(), and org.sleuthkit.autopsy.casemodule.Case.open().

void org.sleuthkit.autopsy.casemodule.Case.updateCaseNodeData ( ProgressIndicator  progressIndicator) throws CaseActionException
private
static void org.sleuthkit.autopsy.casemodule.Case.updateGUIForCaseClosed ( )
staticprivate
static void org.sleuthkit.autopsy.casemodule.Case.updateGUIForCaseOpened ( Case  newCurrentCase)
staticprivate

Member Data Documentation

final String org.sleuthkit.autopsy.casemodule.Case.CACHE_FOLDER = "Cache"
staticprivate

Definition at line 146 of file Case.java.

final String org.sleuthkit.autopsy.casemodule.Case.CASE_ACTION_THREAD_NAME = "%s-case-action"
staticprivate

Definition at line 153 of file Case.java.

final int org.sleuthkit.autopsy.casemodule.Case.CASE_LOCK_TIMEOUT_MINS = 1
staticprivate

Definition at line 142 of file Case.java.

final int org.sleuthkit.autopsy.casemodule.Case.CASE_RESOURCES_LOCK_TIMEOUT_HOURS = 1
staticprivate

Definition at line 143 of file Case.java.

final String org.sleuthkit.autopsy.casemodule.Case.CASE_RESOURCES_THREAD_NAME = "%s-manage-case-resources"
staticprivate

Definition at line 154 of file Case.java.

volatile ExecutorService org.sleuthkit.autopsy.casemodule.Case.caseActionExecutor
private

Definition at line 162 of file Case.java.

final Object org.sleuthkit.autopsy.casemodule.Case.caseActionSerializationLock = new Object()
staticprivate
SleuthkitCase org.sleuthkit.autopsy.casemodule.Case.caseDb
private

Definition at line 164 of file Case.java.

Referenced by org.sleuthkit.autopsy.casemodule.Case.getSleuthkitCase().

CoordinationService.Lock org.sleuthkit.autopsy.casemodule.Case.caseLock
private
Services org.sleuthkit.autopsy.casemodule.Case.caseServices
private

Definition at line 167 of file Case.java.

Referenced by org.sleuthkit.autopsy.casemodule.Case.getServices().

CollaborationMonitor org.sleuthkit.autopsy.casemodule.Case.collaborationMonitor
private

Definition at line 166 of file Case.java.

final String org.sleuthkit.autopsy.casemodule.Case.CONFIG_FOLDER = "Config"
staticprivate

Definition at line 150 of file Case.java.

volatile Case org.sleuthkit.autopsy.casemodule.Case.currentCase
staticprivate
final String org.sleuthkit.autopsy.casemodule.Case.EVENT_CHANNEL_NAME = "%s-Case-Events"
staticprivate

Definition at line 145 of file Case.java.

final AutopsyEventPublisher org.sleuthkit.autopsy.casemodule.Case.eventPublisher = new AutopsyEventPublisher()
staticprivate

Definition at line 157 of file Case.java.

final String org.sleuthkit.autopsy.casemodule.Case.EXPORT_FOLDER = "Export"
staticprivate

Definition at line 147 of file Case.java.

final String org.sleuthkit.autopsy.casemodule.Case.LOG_FOLDER = "Log"
staticprivate

Definition at line 148 of file Case.java.

final Logger org.sleuthkit.autopsy.casemodule.Case.logger = Logger.getLogger(Case.class.getName())
staticprivate
volatile Frame org.sleuthkit.autopsy.casemodule.Case.mainFrame
staticprivate

Definition at line 159 of file Case.java.

final CaseMetadata org.sleuthkit.autopsy.casemodule.Case.metadata
private
final String org.sleuthkit.autopsy.casemodule.Case.MODULE_FOLDER = "ModuleOutput"
staticprivate

Definition at line 152 of file Case.java.

final String org.sleuthkit.autopsy.casemodule.Case.NO_NODE_ERROR_MSG_FRAGMENT = "KeeperErrorCode = NoNode"
staticprivate

Definition at line 155 of file Case.java.

final String org.sleuthkit.autopsy.casemodule.Case.REPORTS_FOLDER = "Reports"
staticprivate

Definition at line 149 of file Case.java.

final String org.sleuthkit.autopsy.casemodule.Case.SINGLE_USER_CASE_DB_NAME = "autopsy.db"
staticprivate
final SleuthkitEventListener org.sleuthkit.autopsy.casemodule.Case.sleuthkitEventListener
private

Definition at line 165 of file Case.java.

final String org.sleuthkit.autopsy.casemodule.Case.TEMP_FOLDER = "Temp"
staticprivate

Definition at line 151 of file Case.java.


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

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