Autopsy  3.1
Graphical digital forensics platform for The Sleuth Kit and other tools.
Public Member Functions | Private Attributes | List of all members Class Reference

Public Member Functions

 FilteredEventsModel (EventsRepository repo, ReadOnlyObjectProperty< ZoomParams > currentStateProperty)
Interval getBoundingEventsInterval ()
synchronized ReadOnlyObjectProperty< ZoomParamsgetRequestedZoomParamters ()
TimeLineEvent getEventById (Long eventID)
Set< Long > getEventIDs (Interval timeRange, Filter filter)
Map< EventType, Long > getEventCounts (Interval timeRange)
synchronized ReadOnlyObjectProperty< Interval > timeRange ()
synchronized ReadOnlyObjectProperty< DescriptionLODdescriptionLOD ()
synchronized ReadOnlyObjectProperty< Filterfilter ()
final Interval getSpanningInterval ()
Interval getSpanningInterval (Collection< Long > eventIDs)
final Long getMinTime ()
final Long getMaxTime ()
List< AggregateEventgetAggregatedEvents ()
List< AggregateEventgetAggregatedEvents (ZoomParams params)
synchronized ReadOnlyObjectProperty< EventTypeZoomLeveleventTypeZoom ()
synchronized EventTypeZoomLevel getEventTypeZoom ()
DescriptionLOD getDescriptionLOD ()

Private Attributes

final ReadOnlyObjectWrapper< Interval > requestedTimeRange = new ReadOnlyObjectWrapper<>()
final ReadOnlyObjectWrapper< FilterrequestedFilter = new ReadOnlyObjectWrapper<>(Filter.getDefaultFilter())
final ReadOnlyObjectWrapper< EventTypeZoomLevelrequestedTypeZoom = new ReadOnlyObjectWrapper<>(EventTypeZoomLevel.BASE_TYPE)
final ReadOnlyObjectWrapper< DescriptionLODrequestedLOD = new ReadOnlyObjectWrapper<>(DescriptionLOD.SHORT)
final ReadOnlyObjectWrapper< ZoomParamsrequestedZoomParamters = new ReadOnlyObjectWrapper<>()
final EventsRepository repo

Detailed Description

This class acts as the model for a TimeLineView

Views can register listeners on properties returned by methods.

This class is implemented as a filtered view into an underlying EventsRepository.

TODO: as many methods as possible should cache their results so as to avoid unnecessary db calls through the EventsRepository -jm

Concurrency Policy: repo is internally synchronized, so methods that only access the repo atomicaly do not need further synchronization

all other member state variables should only be accessed with intrinsic lock of containing FilteredEventsModel held. Many methods delegate to a task submitted to the dbQueryThread executor. These methods should synchronize on this object, and the tasks should too. Since the tasks execute asynchronously from the invoking methods, the methods will return and release the lock for the tasks to obtain.

Definition at line 62 of file

Constructor & Destructor Documentation ( EventsRepository  repo,
ReadOnlyObjectProperty< ZoomParams currentStateProperty 

Member Function Documentation

synchronized ReadOnlyObjectProperty<DescriptionLOD> ( )
synchronized ReadOnlyObjectProperty<EventTypeZoomLevel> ( )
synchronized ReadOnlyObjectProperty<Filter> ( )
List<AggregateEvent> ( )
List<AggregateEvent> ( ZoomParams  params)
a list of aggregated events that are within the requested time range and pass the requested filter, using the given aggregation to control the grouping of events

Definition at line 236 of file

References, and

Interval ( )
DescriptionLOD ( )
TimeLineEvent ( Long  eventID)
Map<EventType, Long> ( Interval  timeRange)
Set<Long> ( Interval  timeRange,
Filter  filter 
synchronized EventTypeZoomLevel ( )
final Long ( )
the time (in seconds from unix epoch) of the absolutely last event available from the repository, ignoring any filters or requested ranges

Definition at line 204 of file

References, and

Referenced by

final Long ( )
the time (in seconds from unix epoch) of the absolutely first event available from the repository, ignoring any filters or requested ranges

Definition at line 195 of file

References, and

Referenced by

synchronized ReadOnlyObjectProperty<ZoomParams> ( )
final Interval ( )
Interval ( Collection< Long >  eventIDs)
synchronized ReadOnlyObjectProperty<Interval> ( )

Member Data Documentation

final EventsRepository
final ReadOnlyObjectWrapper<Filter> = new ReadOnlyObjectWrapper<>(Filter.getDefaultFilter())
final ReadOnlyObjectWrapper< DescriptionLOD> = new ReadOnlyObjectWrapper<>(DescriptionLOD.SHORT)
final ReadOnlyObjectWrapper<Interval> = new ReadOnlyObjectWrapper<>()
final ReadOnlyObjectWrapper< EventTypeZoomLevel> = new ReadOnlyObjectWrapper<>(EventTypeZoomLevel.BASE_TYPE)
final ReadOnlyObjectWrapper<ZoomParams> = new ReadOnlyObjectWrapper<>()

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.