20 package org.sleuthkit.autopsy.geolocation.datamodel;
22 import java.util.Collections;
23 import java.util.HashMap;
24 import java.util.List;
26 import org.openide.util.NbBundle.Messages;
55 "Route_Label=As-the-crow-flies Route"
58 super(
artifact, Bundle.Route_Label());
63 timestamp = attribute != null ? attribute.
getValueLong() : null;
108 "Route_point_label=Waypoints for route"
114 if (label == null || label.isEmpty()) {
115 label = Bundle.Route_point_label();
117 label = String.format(
"%s: %s", Bundle.Route_point_label(), label);
120 if (attribute != null) {
125 throw new GeoLocationDataException(String.format(
"Unable to parse waypoints in TSK_GEO_WAYPOINTS attribute (artifact object ID =%d)", artifact.
getId()), ex);
128 String name = waypoint.getName();
130 if(name != null && !name.isEmpty()) {
132 map =
new HashMap<>(attributeMap);
135 addToPath(
new Waypoint(artifact, label, timestamp, waypoint.getLatitude(), waypoint.getLongitude(), waypoint.getAltitude(), null, map,
this));
159 "Route_Start_Label=Start"
167 if (latitude != null && longitude != null) {
169 Bundle.Route_Start_Label(),
194 "Route_End_Label=End"
201 if (latitude != null && longitude != null) {
204 Bundle.Route_End_Label(),
static< T > T fromAttribute(BlackboardAttribute attr, Class< T > clazz)
List< Waypoint > getRoute()
Waypoint getRouteEndPoint(BlackboardArtifact artifact, Map< BlackboardAttribute.ATTRIBUTE_TYPE, BlackboardAttribute > attributeMap)
final List< Waypoint.Property > propertiesList
final BlackboardArtifact artifact
final List< Waypoint > getPath()
List< Waypoint.Property > getOtherProperties()
void createRoute(BlackboardArtifact artifact, Map< BlackboardAttribute.ATTRIBUTE_TYPE, BlackboardAttribute > attributeMap)
Waypoint getRouteStartPoint(BlackboardArtifact artifact, Map< BlackboardAttribute.ATTRIBUTE_TYPE, BlackboardAttribute > attributeMap)