mirror of
https://github.com/overcuriousity/autopsy-flatpak.git
synced 2025-07-06 21:00:22 +00:00
38 lines
3.0 KiB
Plaintext
38 lines
3.0 KiB
Plaintext
/*! \page services_page Platform Services
|
|
|
|
|
|
\section platform_services Services
|
|
The platform provides a variety of services and utilities that you need to be familiar with. This section outlines the basic ones and additional ones are described at the end of the document in \ref mod_dev_adv.
|
|
|
|
\subsection platform_blackboard The Blackboard
|
|
|
|
The blackboard allows modules to communicate with each other and the UI. It has three main uses in Autopsy:
|
|
- Ingest modules can communicate with each other. For example, one module can calculate a MD5 hash of a file and post it to the blackboard. Then another module can retrieve the hash value from the blackboard and not need to calculate it again.
|
|
- The tree in the right-hand side of the UI uses the blackboard to populate its Results section. The bookmarks, hashset hits, etc. are all populated from Ingest modules that created blackboard entries.
|
|
- The report modules query the blackboard to identify what they should report on.
|
|
|
|
The blackboard is not unique to Autopsy. It is part of The Sleuth Kit datamodel and The Sleuth Kit Framework. In the name of reducing the amount of documentation that we need to maintain, we provide links here to those documentation sources.
|
|
|
|
- Details on the blackboard concepts (artifacts versus attributes) can be found at http://sleuthkit.org/sleuthkit/docs/framework-docs/mod_bbpage.html. These documents are about the C++ implementation of the blackboard, but it is the same concepts.
|
|
- Details of the Java classes can be found in \ref jni_blackboard section of the The Sleuth Kit JNI documents (http://sleuthkit.org/sleuthkit/docs/jni-docs/).
|
|
|
|
|
|
\subsection mod_dev_other_services Framework Services
|
|
|
|
The followig are basic services that are available.
|
|
|
|
- FileManager: the org.sleuthkit.autopsy.casemodule.services.FileManager service provides an API to access any file in the case. You can access FileManager by calling org.sleuthkit.autopsy.casemodule.services.Services.getFileManager(). Data Source-level Ingest modules and Report modules typically use this service because the other modules are passed in a reference to a specific file to do something with.
|
|
- org.sleuthkit.autopsy.coreutils.Logger - Use this class to log error and informational messages to the central Autopsy log file.
|
|
- If you have a background task that needs the provide the user with feedback, you can use the org.sleuthkit.autopsy.coreutils.MessageNotifyUtil.Notify.show() method to make a message in the lower right hand area.
|
|
- IngestModules also have a class that provides additional services. See \ref ingest_modules_services_ingest.
|
|
|
|
|
|
\subsection mod_dev_other_utilities Framework Utilities
|
|
|
|
In addition to the services previously listed, there are some general utilities that could be useful to modules. These include:
|
|
- org.sleuthkit.autopsy.coreutils.PlatformUtil - platform-specific methods to determine available disk space, memory, etc.
|
|
- org.sleuthkit.autopsy.coreutils.ModuleSettings - to persist module configuration and settings
|
|
- org.sleuthkit.autopsy.coreutils.FileUtil - to delete and add folders, etc.
|
|
|
|
*/
|