Autopsy  4.10.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
 
enum  CaseType
 
enum  Events
 
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 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 acquireSharedCaseDirLock (String caseDir) throws CaseActionException
 
void close () throws CaseActionException
 
void close (ProgressIndicator progressIndicator)
 
void closeAppServiceCaseResources ()
 
void createCaseDatabase (ProgressIndicator progressIndicator) throws CaseActionException
 
void createCaseDirectoryIfDoesNotExist (ProgressIndicator progressIndicator) throws CaseActionException
 
void createCaseNodeData (ProgressIndicator progressIndicator) throws CaseActionException
 
void deleteTempfilesFromCaseDirectory (ProgressIndicator progressIndicator)
 
String getOrCreateSubdirectory (String subDirectoryName)
 
void open (boolean isNewCase) throws CaseActionException
 
void open (boolean isNewCase, ProgressIndicator progressIndicator) 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 releaseSharedCaseDirLock (String caseDir)
 
void saveCaseMetadataToFile (ProgressIndicator progressIndicator) throws CaseActionException
 
void switchLoggingToCaseLogsDirectory (ProgressIndicator progressIndicator)
 
void updateCaseNodeData (ProgressIndicator progressIndicator) throws CaseActionException
 

Static Private Member Functions

static CoordinationService.Lock acquireExclusiveCaseResourcesLock (String caseDir) throws CaseActionException
 
static void checkForUserCancellation () throws CaseActionCancelledException
 
static void clearTempSubDir (String tempSubDirPath)
 
static void deleteCase (CaseMetadata metadata, ProgressIndicator progressIndicator) throws CaseActionException
 
static String displayNameToUniqueName (String caseDisplayName)
 
static String getNameForTitle ()
 
static void openAsCurrentCase (Case newCurrentCase, boolean isNewCase) throws CaseActionException, CaseActionCancelledException
 
static void updateGUIForCaseClosed ()
 
static void updateGUIForCaseOpened (Case newCurrentCase)
 

Private Attributes

SleuthkitCase caseDb
 
CoordinationService.Lock caseDirLock
 
volatile ExecutorService caseLockingExecutor
 
Services caseServices
 
CollaborationMonitor collaborationMonitor
 
boolean hasDataSources
 
final CaseMetadata metadata
 

Static Private Attributes

static final String CACHE_FOLDER = "Cache"
 
static final String CASE_ACTION_THREAD_NAME = "%s-case-action"
 
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 int DIR_LOCK_TIMOUT_HOURS = 12
 
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 REPORTS_FOLDER = "Reports"
 
static final int RESOURCES_LOCK_TIMOUT_HOURS = 12
 
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 127 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 1822 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 1831 of file Case.java.

Member Function Documentation

static CoordinationService.Lock org.sleuthkit.autopsy.casemodule.Case.acquireExclusiveCaseResourcesLock ( 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 1102 of file Case.java.

References org.sleuthkit.autopsy.coordinationservice.CoordinationService.CategoryNode.CASES, org.sleuthkit.autopsy.coordinationservice.CoordinationService.getInstance(), and org.sleuthkit.autopsy.coordinationservice.CoordinationService.tryGetExclusiveLock().

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

void org.sleuthkit.autopsy.casemodule.Case.acquireSharedCaseDirLock ( String  caseDir) throws CaseActionException
private

Acquires a shared case directory lock for the current case.

Parameters
caseDirThe full path of the case directory.
Exceptions
CaseActionExceptionwith a user-friendly message if the lock cannot be acquired.

Definition at line 2649 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.caseDirLock, org.sleuthkit.autopsy.coordinationservice.CoordinationService.CategoryNode.CASES, org.sleuthkit.autopsy.coordinationservice.CoordinationService.getInstance(), and org.sleuthkit.autopsy.coordinationservice.CoordinationService.tryGetSharedLock().

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

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 427 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 452 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 437 of file Case.java.

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

Referenced by org.sleuthkit.autopsy.datamodel.AutopsyTreeChildFactory.addNotify(), org.sleuthkit.autopsy.datamodel.DataSourcesNode.DataSourcesNodeChildren.addNotify(), org.sleuthkit.autopsy.communications.FiltersPanel.addNotify(), org.sleuthkit.autopsy.datamodel.Tags.TagNameNodeFactory.addNotify(), org.sleuthkit.autopsy.datamodel.InterestingHits.SetNameFactory.addNotify(), org.sleuthkit.autopsy.datamodel.HashsetHits.HashsetNameFactory.addNotify(), org.sleuthkit.autopsy.datamodel.ExtractedContent.TypeFactory.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.report.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 3028 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 400 of file Case.java.

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

Referenced by org.sleuthkit.autopsy.communications.OpenCommVisualizationToolAction.OpenCommVisualizationToolAction(), and org.sleuthkit.autopsy.centralrepository.eventlisteners.Installer.restored().

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 1690 of file Case.java.

Referenced by org.sleuthkit.autopsy.report.caseuco.CaseUcoFormatExporter.generateReport(), org.sleuthkit.autopsy.modules.stix.STIXReportModule.generateReport(), org.sleuthkit.autopsy.communications.VisualizationPanel.handleSnapshotEvent(), and org.sleuthkit.autopsy.timeline.actions.SaveSnapshotAsReport.SaveSnapshotAsReport().

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 1708 of file Case.java.

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

static void org.sleuthkit.autopsy.casemodule.Case.checkForUserCancellation ( ) 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 2078 of file Case.java.

Referenced by 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 1254 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 ( ) throws CaseActionException
private
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 2899 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 2927 of file Case.java.

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

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 2844 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 2869 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 527 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 554 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 2236 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.open().

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 906 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.

TODO (JIRA-2180): Always create the case directory as part of the case creation process.

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 2100 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.open().

void org.sleuthkit.autopsy.casemodule.Case.createCaseNodeData ( ProgressIndicator  progressIndicator) throws CaseActionException
private
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

Deletes a case. This method cannot be used to delete the current case; deleting the current case must be done by calling Case.deleteCurrentCase.

Parameters
metadataThe metadata for the case to delete.
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 719 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.caseActionSerializationLock, org.sleuthkit.autopsy.coordinationservice.CoordinationService.CategoryNode.CASES, org.sleuthkit.autopsy.progress.ProgressIndicator.finish(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDirectory(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDisplayName(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseName(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseType(), org.sleuthkit.autopsy.coreutils.StopWatch.getElapsedTimeSecs(), org.sleuthkit.autopsy.coordinationservice.CoordinationService.getInstance(), org.sleuthkit.autopsy.progress.ProgressIndicator.progress(), org.sleuthkit.autopsy.coreutils.StopWatch.reset(), org.sleuthkit.autopsy.core.RuntimeProperties.runningWithGUI, org.sleuthkit.autopsy.casemodule.Case.CaseType.SINGLE_USER_CASE, org.sleuthkit.autopsy.coreutils.StopWatch.start(), org.sleuthkit.autopsy.progress.ProgressIndicator.start(), org.sleuthkit.autopsy.coreutils.StopWatch.stop(), and org.sleuthkit.autopsy.coordinationservice.CoordinationService.tryGetExclusiveLock().

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

static void org.sleuthkit.autopsy.casemodule.Case.deleteCase ( CaseMetadata  metadata,
ProgressIndicator  progressIndicator 
) throws CaseActionException
staticprivate
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 690 of file Case.java.

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

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 1745 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 3061 of file Case.java.

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

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 2211 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 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 866 of file Case.java.

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

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 2966 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 1733 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 2820 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 2954 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 1416 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 ( )

Gets the case notes.

Returns
The case notes.

Definition at line 1365 of file Case.java.

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

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

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 1456 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 1302 of file Case.java.

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

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 610 of file Case.java.

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

Referenced by org.sleuthkit.autopsy.commonpropertiessearch.CommonAttributeSearchAction.createAndShowPanel(), 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.centralrepository.contentviewer.DataContentViewerOtherCases.getCorrelationAttributesFromNode(), org.sleuthkit.autopsy.ingest.IngestServices.getCurrentCase(), org.sleuthkit.autopsy.ingest.IngestServices.getCurrentSleuthkitCaseDb(), org.sleuthkit.autopsy.commandlineingest.CommandLineIngestManager.JobProcessingTask.openCase(), org.sleuthkit.autopsy.contentviewers.AnnotationsContentViewer.populateCentralRepositoryData(), org.sleuthkit.autopsy.modules.dataSourceIntegrity.DataSourceIntegrityIngestModule.process(), 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.

TODO (JIRA-3825): Introduce a reference counting scheme for this get case method.

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

Definition at line 638 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.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< Image >.contentHasVisibleContentChildren(), org.sleuthkit.autopsy.coreutils.SQLiteTableReader.copyFileToTempDirectory(), org.sleuthkit.autopsy.timeline.explorernodes.EventNode.createEventNode(), 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.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.actions.GetTagNameDialog.display(), org.sleuthkit.autopsy.actions.GetTagNameAndCommentDialog.display(), org.sleuthkit.autopsy.modules.embeddedfileextractor.ExtractArchiveWithPasswordAction.ExtractAndIngestWorker.doInBackground(), org.sleuthkit.autopsy.corecomponents.DataContentViewerHex.BackgroundFileCopyTask.doInBackground(), org.sleuthkit.autopsy.directorytree.ExtractAction.extractFile(), org.sleuthkit.autopsy.directorytree.ExtractAction.extractFiles(), org.sleuthkit.autopsy.casemodule.LocalFilesDSProcessor.extractLogicalEvidenceFileContents(), org.sleuthkit.autopsy.datamodel.FileTypesByExtension.FileTypesByExtObservable.FileTypesByExtObservable(), org.sleuthkit.autopsy.commonpropertiessearch.CommonAttributeCaseSearchResults.filterMetadata(), 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.caseuco.CaseUcoFormatExporter.generateReport(), org.sleuthkit.autopsy.report.taggedhashes.AddTaggedHashesToHashDb.generateReport(), org.sleuthkit.autopsy.modules.stix.STIXReportModule.generateReport(), org.sleuthkit.autopsy.report.CreatePortableCaseModule.generateReport(), 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.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.datamodel.utils.DataSourceLoader.getDataSourceMap(), org.sleuthkit.autopsy.centralrepository.datamodel.EamArtifactUtil.getInstanceFromContent(), org.sleuthkit.autopsy.casemodule.events.ReportAddedEvent.getNewValue(), org.sleuthkit.autopsy.ingest.events.FileAnalyzedEvent.getNewValue(), org.sleuthkit.autopsy.casemodule.events.DataSourceAddedEvent.getNewValue(), org.sleuthkit.autopsy.ingest.events.ContentChangedEvent.getOldValue(), org.sleuthkit.autopsy.ingest.events.BlackboardPostEvent.getOldValue(), org.sleuthkit.autopsy.report.TableReportGenerator.ArtifactData.getOrderedRowDataAsStrings(), org.sleuthkit.autopsy.keywordsearch.ExtractedContentViewer.getRawArtifactText(), org.sleuthkit.autopsy.casemodule.services.TagsManager.getTagDisplayNames(), org.sleuthkit.autopsy.coreutils.VideoUtils.getVideoFileInTempDir(), org.sleuthkit.autopsy.communications.AccountsBrowser.handleFilterEvent(), org.sleuthkit.autopsy.communications.VisualizationPanel.handleSnapshotEvent(), org.sleuthkit.autopsy.ingest.IngestJobSettingsPanel.IngestJobSettingsPanel(), org.sleuthkit.autopsy.ingest.RunIngestAction.isEnabled(), org.sleuthkit.autopsy.centralrepository.datamodel.EamArtifactUtil.makeCorrelationAttributeInstanceUsingTypeValue(), org.sleuthkit.autopsy.centralrepository.datamodel.EamArtifactUtil.makeInstanceFromContent(), org.sleuthkit.autopsy.centralrepository.datamodel.EamArtifactUtil.makeInstancesFromBlackboardArtifact(), org.sleuthkit.autopsy.actions.GetTagNameDialog.okButtonActionPerformed(), org.sleuthkit.autopsy.actions.OpenOutputFolderAction.performAction(), org.sleuthkit.autopsy.healthmonitor.HealthMonitor.performDatabaseQuery(), org.sleuthkit.autopsy.report.ArtifactSelectionDialog.populateList(), org.sleuthkit.autopsy.centralrepository.contentviewer.DataContentViewerOtherCases.populateTable(), org.sleuthkit.autopsy.contentviewers.AnnotationsContentViewer.populateTagData(), org.sleuthkit.autopsy.centralrepository.eventlisteners.IngestEventsListener.postCorrelatedBadArtifactToBlackboard(), org.sleuthkit.autopsy.centralrepository.eventlisteners.IngestEventsListener.postCorrelatedPreviousArtifactToBlackboard(), org.sleuthkit.autopsy.thunderbirdparser.ThunderbirdMboxFileIngestModule.process(), org.sleuthkit.autopsy.modules.exif.ExifParserFileIngestModule.process(), org.sleuthkit.autopsy.modules.fileextmismatch.FileExtMismatchIngestModule.process(), org.sleuthkit.autopsy.modules.hashdatabase.HashDbIngestModule.process(), org.sleuthkit.autopsy.filesearch.DateSearchFilter.CasePropertyChangeListener.propertyChange(), org.sleuthkit.autopsy.directorytree.DirectoryTreeTopComponent.propertyChange(), org.sleuthkit.autopsy.timeline.TimeLineController.AutopsyIngestModuleListener.propertyChange(), org.sleuthkit.autopsy.directorytree.DirectoryTreeTopComponent.rebuildTree(), org.sleuthkit.autopsy.casemodule.IngestJobInfoPanel.refresh(), org.sleuthkit.autopsy.datamodel.DataSourcesNode.DataSourcesNodeChildren.reloadKeys(), 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.centralrepository.eventlisteners.IngestEventsListener.AnalysisCompleteTask.run(), org.sleuthkit.autopsy.centralrepository.eventlisteners.CaseEventListener.DataSourceAddedTask.run(), org.sleuthkit.autopsy.centralrepository.eventlisteners.CaseEventListener.DataSourceNameChangedTask.run(), org.sleuthkit.autopsy.report.caseuco.CaseUcoFormatExporter.saveCaseInfo(), org.sleuthkit.autopsy.timeline.actions.SaveSnapshotAsReport.SaveSnapshotAsReport(), org.sleuthkit.autopsy.centralrepository.contentviewer.DataContentViewerOtherCases.saveToCSV(), org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.setDisplayName(), 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.communications.FiltersPanel.updateDeviceFilter(), org.sleuthkit.autopsy.datamodel.Tags.TagNameNode.updateDisplayName(), org.sleuthkit.autopsy.datamodel.Tags.ContentTagTypeNode.updateDisplayName(), and org.sleuthkit.autopsy.datamodel.Tags.BlackboardArtifactTagTypeNode.updateDisplayName().

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

Gets the data sources for the case.

Returns
A list of data sources.
Exceptions
org.sleuthkit.datamodel.TskCoreExceptionif there is a problem querying the case database.

Definition at line 1495 of file Case.java.

Referenced by org.sleuthkit.autopsy.commonpropertiessearch.CommonAttributeSearchAction.createAndShowPanel(), org.sleuthkit.autopsy.casemodule.Case.getTimeZones(), org.sleuthkit.autopsy.casemodule.Case.hasData(), and org.sleuthkit.autopsy.datamodel.DataSourcesNode.DataSourcesNodeChildren.reloadKeys().

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

Gets the examiner name.

Returns
The examiner name.

Definition at line 1338 of file Case.java.

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

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

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

Gets the examiner email address.

Returns
The examiner email address.

Definition at line 1356 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 1347 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 1436 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 1477 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 3009 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 2980 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 ( )

Gets the case number.

Returns
The case number

Definition at line 1329 of file Case.java.

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

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

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 1386 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 2995 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 1284 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.CreatePortableCaseModule.addArtifactsToPortableCase(), org.sleuthkit.autopsy.report.CreatePortableCaseModule.addFilesToPortableCase(), org.sleuthkit.autopsy.actions.AddBlackboardArtifactTagAction.addTag(), org.sleuthkit.autopsy.actions.AddContentTagAction.addTag(), org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.addTagProperty(), org.sleuthkit.autopsy.modules.filetypeid.FileTypeIdIngestModule.createInterestingFileHit(), 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.report.taggedhashes.AddTaggedHashesToHashDb.generateReport(), org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.getAllTagsFromDatabase(), org.sleuthkit.autopsy.actions.AddTagAction.TagMenu.getAndAddTag(), org.sleuthkit.autopsy.report.TableReportGenerator.ArtifactData.getOrderedRowDataAsStrings(), org.sleuthkit.autopsy.casemodule.services.TagsManager.getTagDisplayNames(), org.sleuthkit.autopsy.timeline.datamodel.FilteredEventsModel.handleArtifactTagDeleted(), org.sleuthkit.autopsy.timeline.datamodel.FilteredEventsModel.handleContentTagDeleted(), org.sleuthkit.autopsy.actions.GetTagNameDialog.okButtonActionPerformed(), org.sleuthkit.autopsy.centralrepository.eventlisteners.IngestEventsListener.postCorrelatedBadArtifactToBlackboard(), org.sleuthkit.autopsy.centralrepository.eventlisteners.IngestEventsListener.postCorrelatedPreviousArtifactToBlackboard(), org.sleuthkit.autopsy.thunderbirdparser.ThunderbirdMboxFileIngestModule.process(), org.sleuthkit.autopsy.modules.exif.ExifParserFileIngestModule.process(), org.sleuthkit.autopsy.modules.fileextmismatch.FileExtMismatchIngestModule.process(), org.sleuthkit.autopsy.modules.hashdatabase.HashDbIngestModule.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 1275 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.AbstractContentNode< Image >.contentHasVisibleContentChildren(), org.sleuthkit.autopsy.report.CreatePortableCaseModule.copyArtifact(), org.sleuthkit.autopsy.timeline.explorernodes.EventNode.createEventNode(), org.sleuthkit.autopsy.ingest.DataSourceIngestJob.createIngestPipelines(), org.sleuthkit.autopsy.modules.filetypeid.FileTypeIdIngestModule.createInterestingFileHit(), org.sleuthkit.autopsy.datamodel.AutopsyTreeChildFactory.createKeys(), org.sleuthkit.autopsy.datamodel.VirtualDirectoryNode.createSheet(), org.sleuthkit.autopsy.datamodel.ImageNode.createSheet(), org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.createSheet(), org.sleuthkit.autopsy.timeline.db.EventsRepository.EventsRepository(), org.sleuthkit.autopsy.coreutils.SQLiteTableReader.findAndCopySQLiteMetaFile(), org.sleuthkit.autopsy.centralrepository.datamodel.CorrelationDataSource.fromTSKDataSource(), org.sleuthkit.autopsy.report.caseuco.CaseUcoFormatExporter.generateReport(), org.sleuthkit.autopsy.ingest.IngestServices.getCaseDatabase(), 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.datamodel.utils.DataSourceLoader.getDataSourceMap(), org.sleuthkit.autopsy.report.CreatePortableCaseModule.getNewArtifactTypeId(), org.sleuthkit.autopsy.casemodule.events.ReportAddedEvent.getNewValue(), org.sleuthkit.autopsy.ingest.events.FileAnalyzedEvent.getNewValue(), org.sleuthkit.autopsy.casemodule.events.DataSourceAddedEvent.getNewValue(), org.sleuthkit.autopsy.ingest.events.ContentChangedEvent.getOldValue(), org.sleuthkit.autopsy.ingest.events.BlackboardPostEvent.getOldValue(), org.sleuthkit.autopsy.keywordsearch.ExtractedContentViewer.getRawArtifactText(), org.sleuthkit.autopsy.timeline.datamodel.FilteredEventsModel.handleArtifactTagDeleted(), org.sleuthkit.autopsy.timeline.datamodel.FilteredEventsModel.handleContentTagDeleted(), org.sleuthkit.autopsy.communications.AccountsBrowser.handleFilterEvent(), org.sleuthkit.autopsy.ingest.IngestJobSettingsPanel.IngestJobSettingsPanel(), org.sleuthkit.autopsy.timeline.db.EventsRepository.invalidateCaches(), org.sleuthkit.autopsy.centralrepository.datamodel.EamArtifactUtil.makeCorrelationAttributeInstanceUsingTypeValue(), org.sleuthkit.autopsy.centralrepository.datamodel.EamArtifactUtil.makeInstancesFromBlackboardArtifact(), org.sleuthkit.autopsy.healthmonitor.HealthMonitor.performDatabaseQuery(), org.sleuthkit.autopsy.report.ArtifactSelectionDialog.populateList(), org.sleuthkit.autopsy.centralrepository.contentviewer.DataContentViewerOtherCases.populateTable(), org.sleuthkit.autopsy.contentviewers.AnnotationsContentViewer.populateTagData(), org.sleuthkit.autopsy.modules.dataSourceIntegrity.DataSourceIntegrityIngestModule.process(), org.sleuthkit.autopsy.casemodule.IngestJobInfoPanel.refresh(), org.sleuthkit.autopsy.datamodel.DataSourcesNode.DataSourcesNodeChildren.reloadKeys(), 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.CreatePortableCaseModule.saveHighestIds(), org.sleuthkit.autopsy.datamodel.BlackboardArtifactNode.setDisplayName(), org.sleuthkit.autopsy.timeline.OpenTimelineAction.tooManyFiles(), org.sleuthkit.autopsy.communications.FiltersPanel.updateDeviceFilter(), org.sleuthkit.autopsy.casemodule.Case.updateGUIForCaseOpened(), and org.sleuthkit.autopsy.communications.snapshot.CommSnapShotReportWriter.writeSnapShotHTMLFile().

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 1528 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 3046 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 1506 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
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 496 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 1559 of file Case.java.

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

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 1664 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 1675 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 1649 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 1612 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 1623 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 1588 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 1601 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 1573 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 1634 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 ( boolean  isNewCase) throws CaseActionException
private

Opens this case by creating a task running in the same non-UI thread that will be used to close the case. If the case is a single-user case, this supports cancelling creation of the case by cancelling the task. If the case is a multi-user case, this ensures ensures that case directory lock held as long as the case is open is released in the same thread in which it was acquired, as is required by the coordination service.

Parameters
isNewCaseTrue for a new case, false otherwise.
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.

Definition at line 1860 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.acquireExclusiveCaseResourcesLock(), org.sleuthkit.autopsy.casemodule.Case.acquireSharedCaseDirLock(), org.sleuthkit.autopsy.casemodule.Case.CancelButtonListener.actionPerformed(), org.sleuthkit.autopsy.progress.ProgressIndicator.finish(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseDirectory(), org.sleuthkit.autopsy.casemodule.Case.getCaseDirectory(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseName(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseType(), org.sleuthkit.autopsy.progress.ProgressIndicator.progress(), org.sleuthkit.autopsy.casemodule.Case.releaseSharedCaseDirLock(), 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.actions.OpenLogFolderAction.actionPerformed(), org.sleuthkit.autopsy.casemodule.Case.openAsCurrentCase(), and org.sleuthkit.autopsy.actions.OpenOutputFolderAction.performAction().

void org.sleuthkit.autopsy.casemodule.Case.open ( boolean  isNewCase,
ProgressIndicator  progressIndicator 
) throws CaseActionException
private
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 2885 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

Opens an existing case and makes it the current case.

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

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.

Definition at line 581 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.Case(), org.sleuthkit.autopsy.casemodule.CaseMetadata.getCaseType(), org.sleuthkit.autopsy.core.UserPreferences.getIsMultiUserModeEnabled(), org.sleuthkit.autopsy.casemodule.Case.metadata, and org.sleuthkit.autopsy.casemodule.Case.CaseType.MULTI_USER_CASE.

Referenced by org.sleuthkit.autopsy.keywordsearch.multicase.MultiCaseKeywordSearchNode.OpenCaseAction.actionPerformed(), org.sleuthkit.autopsy.casemodule.Case.createAsCurrentCase(), and org.sleuthkit.autopsy.casemodule.Case.open().

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 2282 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 2310 of file Case.java.

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

Referenced by 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 2440 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.checkForUserCancellation(), 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.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 2941 of file Case.java.

void org.sleuthkit.autopsy.casemodule.Case.releaseSharedCaseDirLock ( String  caseDir)
private

Releases a shared case directory lock for the current case.

Parameters
caseDirThe full path of the case directory.

Definition at line 2665 of file Case.java.

References org.sleuthkit.autopsy.casemodule.Case.caseDirLock.

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

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 462 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 472 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 482 of file Case.java.

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

Referenced by org.sleuthkit.autopsy.datamodel.VolumeNode.removeListeners(), org.sleuthkit.autopsy.datamodel.ImageNode.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.BlackboardArtifactNode.removeListeners(), org.sleuthkit.autopsy.datamodel.AutopsyTreeChildFactory.removeNotify(), org.sleuthkit.autopsy.datamodel.DataSourcesNode.DataSourcesNodeChildren.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.ExtractedContent.TypeFactory.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(), and org.sleuthkit.autopsy.datamodel.accounts.Accounts.BINFactory.removeNotify().

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 412 of file Case.java.

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

Referenced by org.sleuthkit.autopsy.timeline.TimeLineController.shutDownTimeLine(), and 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 2137 of file Case.java.

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

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

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 2117 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.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 133 of file Case.java.

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

Definition at line 140 of file Case.java.

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

Definition at line 141 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 150 of file Case.java.

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

CoordinationService.Lock org.sleuthkit.autopsy.casemodule.Case.caseDirLock
private
volatile ExecutorService org.sleuthkit.autopsy.casemodule.Case.caseLockingExecutor
private

Definition at line 148 of file Case.java.

Services org.sleuthkit.autopsy.casemodule.Case.caseServices
private

Definition at line 152 of file Case.java.

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

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

Definition at line 151 of file Case.java.

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

Definition at line 137 of file Case.java.

volatile Case org.sleuthkit.autopsy.casemodule.Case.currentCase
staticprivate
final int org.sleuthkit.autopsy.casemodule.Case.DIR_LOCK_TIMOUT_HOURS = 12
staticprivate

Definition at line 129 of file Case.java.

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

Definition at line 132 of file Case.java.

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

Definition at line 143 of file Case.java.

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

Definition at line 134 of file Case.java.

boolean org.sleuthkit.autopsy.casemodule.Case.hasDataSources
private

Definition at line 153 of file Case.java.

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

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

Definition at line 135 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 145 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 139 of file Case.java.

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

Definition at line 136 of file Case.java.

final int org.sleuthkit.autopsy.casemodule.Case.RESOURCES_LOCK_TIMOUT_HOURS = 12
staticprivate

Definition at line 130 of file Case.java.

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

Definition at line 138 of file Case.java.


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

Copyright © 2012-2018 Basis Technology. Generated on: Fri Mar 22 2019
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.