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

Inherits org.sleuthkit.autopsy.datasourcesummary.uiutils.DefaultArtifactUpdateGovernor.

Classes

class  CityCountsList
 
class  CityData
 
class  CityRecordCount
 
class  PointFetcher
 
interface  SupplierWithException
 

Public Member Functions

 GeolocationSummary ()
 
 GeolocationSummary (SupplierWithException< ClosestCityMapper, IOException > cityMapper, SleuthkitCaseProvider provider, java.util.logging.Logger logger)
 
Set< Integer > getArtifactTypeIdsForRefresh ()
 
default Set< Case.Events > getCaseEventUpdates ()
 
CityData getCityCounts (DataSource dataSource, int daysCount, int maxCount) throws SleuthkitCaseProviderException, GeoLocationDataException, InterruptedException, IOException
 
List< ARTIFACT_TYPE > getGeoTypes ()
 
default Set< IngestJobEvent > getIngestJobEventUpdates ()
 
default boolean isRefreshRequired (ModuleDataEvent evt)
 
default boolean isRefreshRequired (ModuleContentEvent evt)
 
default boolean isRefreshRequired (IngestManager.IngestJobEvent evt)
 
default boolean isRefreshRequired (AbstractFile evt)
 
boolean isRefreshRequired (IngestJobEvent evt)
 
default boolean isRefreshRequiredForCaseEvent (PropertyChangeEvent evt)
 

Public Attributes

Set< IngestJobEvent > INGEST_JOB_EVENTS
 

Private Member Functions

Pair< Integer, Integer > getCounts (List< MapWaypoint > points, Long minTime)
 
List< MapWaypointgetPoints (DataSource dataSource) throws SleuthkitCaseProviderException, GeoLocationDataException, InterruptedException
 
boolean greaterThanOrEqual (Long minTime, Long time)
 

Private Attributes

final SupplierWithException< ClosestCityMapper, IOException > cityMapper
 
final java.util.logging.Logger logger
 
final SleuthkitCaseProvider provider
 

Static Private Attributes

static final long DAY_SECS = 24 * 60 * 60
 
static final Pair< Integer, Integer > EMPTY_COUNT = Pair.of(0, 0)
 
static final Set< Integer > GPS_ARTIFACT_TYPE_IDS
 
static final List< ARTIFACT_TYPE > GPS_ARTIFACT_TYPES
 

Detailed Description

Gathers summary data about Geolocation information for a data source.

Definition at line 49 of file GeolocationSummary.java.

Constructor & Destructor Documentation

org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.GeolocationSummary ( )
org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.GeolocationSummary ( SupplierWithException< ClosestCityMapper, IOException >  cityMapper,
SleuthkitCaseProvider  provider,
java.util.logging.Logger  logger 
)

Main constructor.

Parameters
cityMapperA means of acquiring a ClosestCityMapper that can throw an IOException.
providerA means of acquiring a SleuthkitCaseProvider.
loggerThe logger.

Definition at line 222 of file GeolocationSummary.java.

References org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.cityMapper, org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.logger, and org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.provider.

Member Function Documentation

Set<Integer> org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.getArtifactTypeIdsForRefresh ( )
default Set<Case.Events> org.sleuthkit.autopsy.datasourcesummary.uiutils.DefaultUpdateGovernor.getCaseEventUpdates ( )
inherited
Returns
The set of Case Events for which data should be updated.

Implements org.sleuthkit.autopsy.datasourcesummary.uiutils.UpdateGovernor.

Definition at line 57 of file DefaultUpdateGovernor.java.

CityData org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.getCityCounts ( DataSource  dataSource,
int  daysCount,
int  maxCount 
) throws SleuthkitCaseProviderException, GeoLocationDataException, InterruptedException, IOException

Get this list of hits per city where the list is sorted descending by number of found hits (i.e. most hits is first index).

Parameters
dataSourceThe data source.
daysCountNumber of days to go back.
maxCountMaximum number of results.
Returns
The sorted list.
Exceptions
SleuthkitCaseProviderException
GeoLocationDataException
InterruptedException

Definition at line 300 of file GeolocationSummary.java.

References org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.getCounts(), and org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.getPoints().

Referenced by org.sleuthkit.autopsy.datasourcesummary.ui.GeolocationPanel.GeolocationPanel().

Pair<Integer, Integer> org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.getCounts ( List< MapWaypoint points,
Long  minTime 
)
private

Based on a set of waypoints, determines the count of total waypoints and a total of waypoints whose time stamp is greater than or equal to minTime.

Parameters
pointsThe list of way points.
minTimeThe minimum time for most recent points count.
Returns
A pair where the left value is the total count of way points and the right is the total list of way points that are >= minTime.

Definition at line 271 of file GeolocationSummary.java.

References org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.EMPTY_COUNT, and org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.greaterThanOrEqual().

Referenced by org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.getCityCounts().

List<ARTIFACT_TYPE> org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.getGeoTypes ( )
default Set<IngestJobEvent> org.sleuthkit.autopsy.datasourcesummary.uiutils.DefaultArtifactUpdateGovernor.getIngestJobEventUpdates ( )
inherited
List<MapWaypoint> org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.getPoints ( DataSource  dataSource) throws SleuthkitCaseProviderException, GeoLocationDataException, InterruptedException
private

Fetches all GPS data for the data source from the current case.

Parameters
dataSourceThe data source.
Returns
The GPS data pertaining to the data source.
Exceptions
SleuthkitCaseProviderException
GeoLocationDataException
InterruptedException

Definition at line 409 of file GeolocationSummary.java.

References org.sleuthkit.autopsy.datasourcesummary.datamodel.SleuthkitCaseProvider.get(), org.sleuthkit.autopsy.geolocation.datamodel.WaypointBuilder.getAllWaypoints(), org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.GPS_ARTIFACT_TYPES, and org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.provider.

Referenced by org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.getCityCounts().

boolean org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.greaterThanOrEqual ( Long  minTime,
Long  time 
)
private

Returns whether or not the time is >= the provided minimum time handling the event where either time is null.

Parameters
minTimeThe minimum time. If null is provided, this function will return false.
timeThe time to check. If null is provided and the min time is non-null, then this function will return false.
Returns
If minTime == null then false. If minTime != null && time == null then false. Otherwise time >= minTime.

Definition at line 251 of file GeolocationSummary.java.

Referenced by org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.getCounts().

default boolean org.sleuthkit.autopsy.datasourcesummary.uiutils.DefaultArtifactUpdateGovernor.isRefreshRequired ( ModuleDataEvent  evt)
inherited

Given a module data event, whether or not an update should occur.

Parameters
evtThe ModuleDataEvent that is occurring.
Returns
Whether or not this event should trigger an update.

Implements org.sleuthkit.autopsy.datasourcesummary.uiutils.DefaultUpdateGovernor.

Definition at line 38 of file DefaultArtifactUpdateGovernor.java.

References org.sleuthkit.autopsy.datasourcesummary.uiutils.DefaultArtifactUpdateGovernor.getArtifactTypeIdsForRefresh(), and org.sleuthkit.autopsy.ingest.ModuleDataEvent.getBlackboardArtifactType().

default boolean org.sleuthkit.autopsy.datasourcesummary.uiutils.DefaultUpdateGovernor.isRefreshRequired ( ModuleContentEvent  evt)
inherited

Given a module content event, whether or not an update should occur.

Parameters
evtThe ModuleContentEvent.
Returns
Whether or not this event should trigger an update.

Implements org.sleuthkit.autopsy.datasourcesummary.uiutils.UpdateGovernor.

Implemented in org.sleuthkit.autopsy.datasourcesummary.datamodel.TimelineSummary, org.sleuthkit.autopsy.datasourcesummary.datamodel.ContainerSummary, org.sleuthkit.autopsy.datasourcesummary.datamodel.MimeTypeSummary, and org.sleuthkit.autopsy.datasourcesummary.datamodel.TypesSummary.

Definition at line 42 of file DefaultUpdateGovernor.java.

default boolean org.sleuthkit.autopsy.datasourcesummary.uiutils.DefaultArtifactUpdateGovernor.isRefreshRequired ( IngestManager.IngestJobEvent  evt)
inherited
default boolean org.sleuthkit.autopsy.datasourcesummary.uiutils.DefaultUpdateGovernor.isRefreshRequired ( AbstractFile  evt)
inherited
boolean org.sleuthkit.autopsy.datasourcesummary.uiutils.UpdateGovernor.isRefreshRequired ( IngestJobEvent  evt)
inherited

Given an ingest job event, determines whether or not an update should occur.

Parameters
evtThe event.
Returns
Whether or not this event should trigger an update.

Implemented in org.sleuthkit.autopsy.datasourcesummary.datamodel.TimelineSummary, org.sleuthkit.autopsy.datasourcesummary.datamodel.MimeTypeSummary, and org.sleuthkit.autopsy.datasourcesummary.datamodel.TypesSummary.

default boolean org.sleuthkit.autopsy.datasourcesummary.uiutils.DefaultUpdateGovernor.isRefreshRequiredForCaseEvent ( PropertyChangeEvent  evt)
inherited

Given a case event, whether or not an update should occur.

Parameters
evtThe event.
Returns
Whether or not this event should trigger an update.

Implements org.sleuthkit.autopsy.datasourcesummary.uiutils.UpdateGovernor.

Definition at line 37 of file DefaultUpdateGovernor.java.

Member Data Documentation

final SupplierWithException<ClosestCityMapper, IOException> org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.cityMapper
private
final long org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.DAY_SECS = 24 * 60 * 60
staticprivate

Definition at line 284 of file GeolocationSummary.java.

final Pair<Integer, Integer> org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.EMPTY_COUNT = Pair.of(0, 0)
staticprivate
final Set<Integer> org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.GPS_ARTIFACT_TYPE_IDS
staticprivate
Initial value:
.map(artifactType -> artifactType.getTypeID())
.collect(Collectors.toSet())

Definition at line 185 of file GeolocationSummary.java.

Referenced by org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.getArtifactTypeIdsForRefresh().

final List<ARTIFACT_TYPE> org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.GPS_ARTIFACT_TYPES
staticprivate
Initial value:
= Arrays.asList(
BlackboardArtifact.ARTIFACT_TYPE.TSK_GPS_BOOKMARK,
BlackboardArtifact.ARTIFACT_TYPE.TSK_GPS_LAST_KNOWN_LOCATION,
BlackboardArtifact.ARTIFACT_TYPE.TSK_GPS_ROUTE,
BlackboardArtifact.ARTIFACT_TYPE.TSK_GPS_SEARCH,
BlackboardArtifact.ARTIFACT_TYPE.TSK_GPS_TRACK,
BlackboardArtifact.ARTIFACT_TYPE.TSK_GPS_TRACKPOINT,
BlackboardArtifact.ARTIFACT_TYPE.TSK_METADATA_EXIF
)

Definition at line 174 of file GeolocationSummary.java.

Referenced by org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.getGeoTypes(), and org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.getPoints().

Set<IngestJobEvent> org.sleuthkit.autopsy.datasourcesummary.uiutils.DefaultArtifactUpdateGovernor.INGEST_JOB_EVENTS
inherited
Initial value:
= new HashSet<>(
Arrays.asList(IngestJobEvent.COMPLETED, IngestJobEvent.CANCELLED))

Definition at line 34 of file DefaultArtifactUpdateGovernor.java.

Referenced by org.sleuthkit.autopsy.datasourcesummary.uiutils.DefaultArtifactUpdateGovernor.getIngestJobEventUpdates().

final java.util.logging.Logger org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.logger
private
final SleuthkitCaseProvider org.sleuthkit.autopsy.datasourcesummary.datamodel.GeolocationSummary.provider
private

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

Copyright © 2012-2021 Basis Technology. Generated on: Tue Jan 19 2021
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.