diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2017-09-22 14:22:01 +1200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-09-22 14:22:01 +1200 |
commit | a6fa965fd1d7fc55c891f9bba4913fcfe68b086c (patch) | |
tree | f840a542096c653d7dafc6df37645893d423d9d1 /src/org/traccar/reports/ReportUtils.java | |
parent | 76639c6b2284a5dfc4b45c17e533788dd739bcf1 (diff) | |
parent | 36ad4ac525b8eb25ac1c2eed8c05d690754399c5 (diff) | |
download | trackermap-server-a6fa965fd1d7fc55c891f9bba4913fcfe68b086c.tar.gz trackermap-server-a6fa965fd1d7fc55c891f9bba4913fcfe68b086c.tar.bz2 trackermap-server-a6fa965fd1d7fc55c891f9bba4913fcfe68b086c.zip |
Merge pull request #3540 from Abyss777/check_valid_optional
Make check for valid in MotionEventHandler optional
Diffstat (limited to 'src/org/traccar/reports/ReportUtils.java')
-rw-r--r-- | src/org/traccar/reports/ReportUtils.java | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/org/traccar/reports/ReportUtils.java b/src/org/traccar/reports/ReportUtils.java index 5f718feac..f6f386e99 100644 --- a/src/org/traccar/reports/ReportUtils.java +++ b/src/org/traccar/reports/ReportUtils.java @@ -253,8 +253,7 @@ public final class ReportUtils { } } - private static boolean isMoving(ArrayList<Position> positions, int index, - TripsConfig tripsConfig, double speedThreshold) { + private static boolean isMoving(ArrayList<Position> positions, int index, TripsConfig tripsConfig) { if (tripsConfig.getMinimalNoDataDuration() > 0) { boolean beforeGap = index < positions.size() - 1 && positions.get(index + 1).getFixTime().getTime() - positions.get(index).getFixTime().getTime() @@ -270,12 +269,12 @@ public final class ReportUtils { && positions.get(index).getAttributes().get(Position.KEY_MOTION) instanceof Boolean) { return positions.get(index).getBoolean(Position.KEY_MOTION); } else { - return positions.get(index).getSpeed() > speedThreshold; + return positions.get(index).getSpeed() > tripsConfig.getSpeedThreshold(); } } public static <T extends BaseReport> Collection<T> detectTripsAndStops(Collection<Position> positionCollection, - TripsConfig tripsConfig, boolean ignoreOdometer, double speedThreshold, Class<T> reportClass) { + TripsConfig tripsConfig, boolean ignoreOdometer, Class<T> reportClass) { Collection<T> result = new ArrayList<>(); ArrayList<Position> positions = new ArrayList<>(positionCollection); @@ -283,12 +282,12 @@ public final class ReportUtils { boolean trips = reportClass.equals(TripReport.class); MotionEventHandler motionHandler = new MotionEventHandler(tripsConfig); DeviceState deviceState = new DeviceState(); - deviceState.setMotionState(isMoving(positions, 0, tripsConfig, speedThreshold)); + deviceState.setMotionState(isMoving(positions, 0, tripsConfig)); int startEventIndex = trips == deviceState.getMotionState() ? 0 : -1; int startNoEventIndex = -1; for (int i = 0; i < positions.size(); i++) { Map<Event, Position> event = motionHandler.updateMotionState(deviceState, positions.get(i), - isMoving(positions, i, tripsConfig, speedThreshold)); + isMoving(positions, i, tripsConfig)); if (startEventIndex == -1 && (trips != deviceState.getMotionState() && deviceState.getMotionPosition() != null || trips == deviceState.getMotionState() && event != null)) { |