Autopsy  3.1
Graphical digital forensics platform for The Sleuth Kit and other tools.
Classes | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
org.sleuthkit.autopsy.timeline.events.db.EventsRepository Class Reference

Classes

class  DBPopulationWorker
 

Public Member Functions

Interval getBoundingEventsInterval (Interval timeRange, Filter filter)
 
FilteredEventsModel getEventsModel ()
 
 EventsRepository (ReadOnlyObjectProperty< ZoomParams > currentStateProperty)
 
Long getMaxTime ()
 
Long getMinTime ()
 
void recordLastArtifactID (long lastArtfID)
 
void recordWasIngestRunning (Boolean wasIngestRunning)
 
void recordLastObjID (Long lastObjID)
 
boolean getWasIngestRunning ()
 
Long getLastObjID ()
 
long getLastArtfactID ()
 
TimeLineEvent getEventById (Long eventID)
 
List< AggregateEventgetAggregatedEvents (ZoomParams params)
 
Map< EventType, Long > countEvents (ZoomParams params)
 
Set< Long > getEventIDs (Interval timeRange, Filter filter)
 
Interval getSpanningInterval (Collection< Long > eventIDs)
 
synchronized void rebuildRepository (Runnable r)
 

Private Member Functions

void invalidateCaches ()
 

Private Attributes

final EventDB eventDB
 
SwingWorker< Void, ProgressWindow.ProgressUpdate > dbPopulationWorker
 
final LoadingCache< Object, Long > maxCache
 
final LoadingCache< Object, Long > minCache
 
final FilteredEventsModel modelInstance
 
final LoadingCache< Long, TimeLineEventidToEventCache
 
final LoadingCache< ZoomParams, Map< EventType, Long > > eventCountsCache
 
final LoadingCache< ZoomParams, List< AggregateEvent > > aggregateEventsCache
 

Static Private Attributes

static final String FILES_AND_DIRS_WHERE_CLAUSE = "name != '.' AND name != '..'"
 
static final Logger LOGGER = Logger.getLogger(EventsRepository.class.getName())
 

Detailed Description

Provides public API (over EventsDB) to access events. In theory this insulates the rest of the timeline module form the details of the db implementation. Since there are no other implementations of the database or clients of this class, and no Java Interface defined yet, in practice this just delegates everything to the eventDB

Concurrency Policy:

Since almost everything just delegates to the EventDB, which is internally synchronized, we only have to worry about rebuildRepository() which we synchronize on our intrinsic lock.

Definition at line 73 of file EventsRepository.java.

Constructor & Destructor Documentation

org.sleuthkit.autopsy.timeline.events.db.EventsRepository.EventsRepository ( ReadOnlyObjectProperty< ZoomParams currentStateProperty)

Member Function Documentation

Map<EventType, Long> org.sleuthkit.autopsy.timeline.events.db.EventsRepository.countEvents ( ZoomParams  params)
List<AggregateEvent> org.sleuthkit.autopsy.timeline.events.db.EventsRepository.getAggregatedEvents ( ZoomParams  params)
Interval org.sleuthkit.autopsy.timeline.events.db.EventsRepository.getBoundingEventsInterval ( Interval  timeRange,
Filter  filter 
)
TimeLineEvent org.sleuthkit.autopsy.timeline.events.db.EventsRepository.getEventById ( Long  eventID)
Set<Long> org.sleuthkit.autopsy.timeline.events.db.EventsRepository.getEventIDs ( Interval  timeRange,
Filter  filter 
)
FilteredEventsModel org.sleuthkit.autopsy.timeline.events.db.EventsRepository.getEventsModel ( )
Returns
a FilteredEvetns object with this repository as underlying source of events

Definition at line 104 of file EventsRepository.java.

References org.sleuthkit.autopsy.timeline.events.db.EventsRepository.modelInstance.

Referenced by org.sleuthkit.autopsy.timeline.TimeLineController.TimeLineController().

long org.sleuthkit.autopsy.timeline.events.db.EventsRepository.getLastArtfactID ( )

Definition at line 159 of file EventsRepository.java.

Long org.sleuthkit.autopsy.timeline.events.db.EventsRepository.getLastObjID ( )

Definition at line 156 of file EventsRepository.java.

Long org.sleuthkit.autopsy.timeline.events.db.EventsRepository.getMaxTime ( )
Long org.sleuthkit.autopsy.timeline.events.db.EventsRepository.getMinTime ( )
Interval org.sleuthkit.autopsy.timeline.events.db.EventsRepository.getSpanningInterval ( Collection< Long >  eventIDs)
boolean org.sleuthkit.autopsy.timeline.events.db.EventsRepository.getWasIngestRunning ( )

Definition at line 152 of file EventsRepository.java.

void org.sleuthkit.autopsy.timeline.events.db.EventsRepository.invalidateCaches ( )
private
synchronized void org.sleuthkit.autopsy.timeline.events.db.EventsRepository.rebuildRepository ( Runnable  r)
void org.sleuthkit.autopsy.timeline.events.db.EventsRepository.recordLastArtifactID ( long  lastArtfID)

Definition at line 140 of file EventsRepository.java.

void org.sleuthkit.autopsy.timeline.events.db.EventsRepository.recordLastObjID ( Long  lastObjID)

Definition at line 148 of file EventsRepository.java.

void org.sleuthkit.autopsy.timeline.events.db.EventsRepository.recordWasIngestRunning ( Boolean  wasIngestRunning)

Definition at line 144 of file EventsRepository.java.

Member Data Documentation

final LoadingCache<ZoomParams, List<AggregateEvent> > org.sleuthkit.autopsy.timeline.events.db.EventsRepository.aggregateEventsCache
private
SwingWorker<Void, ProgressWindow.ProgressUpdate> org.sleuthkit.autopsy.timeline.events.db.EventsRepository.dbPopulationWorker
private
final LoadingCache<ZoomParams, Map<EventType, Long> > org.sleuthkit.autopsy.timeline.events.db.EventsRepository.eventCountsCache
private
final EventDB org.sleuthkit.autopsy.timeline.events.db.EventsRepository.eventDB
private

Definition at line 77 of file EventsRepository.java.

final String org.sleuthkit.autopsy.timeline.events.db.EventsRepository.FILES_AND_DIRS_WHERE_CLAUSE = "name != '.' AND name != '..'"
staticprivate

Definition at line 75 of file EventsRepository.java.

final LoadingCache<Long, TimeLineEvent> org.sleuthkit.autopsy.timeline.events.db.EventsRepository.idToEventCache
private
final Logger org.sleuthkit.autopsy.timeline.events.db.EventsRepository.LOGGER = Logger.getLogger(EventsRepository.class.getName())
staticprivate

Definition at line 79 of file EventsRepository.java.

final LoadingCache<Object, Long> org.sleuthkit.autopsy.timeline.events.db.EventsRepository.maxCache
private
final LoadingCache<Object, Long> org.sleuthkit.autopsy.timeline.events.db.EventsRepository.minCache
private
final FilteredEventsModel org.sleuthkit.autopsy.timeline.events.db.EventsRepository.modelInstance
private

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

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