From 44691a373200b0e265df5a24e159f5cdff89fb96 Mon Sep 17 00:00:00 2001 From: Abyss777 Date: Fri, 14 Jul 2017 10:56:20 +0500 Subject: Populate driverUniqueId in CopyAttributesHanler --- src/org/traccar/BasePipelineFactory.java | 8 ---- .../traccar/processing/CopyAttributesHandler.java | 1 + .../traccar/processing/PopulateDriverHandler.java | 45 ---------------------- 3 files changed, 1 insertion(+), 53 deletions(-) delete mode 100644 src/org/traccar/processing/PopulateDriverHandler.java (limited to 'src/org') diff --git a/src/org/traccar/BasePipelineFactory.java b/src/org/traccar/BasePipelineFactory.java index 98a327220..edbebc9e2 100644 --- a/src/org/traccar/BasePipelineFactory.java +++ b/src/org/traccar/BasePipelineFactory.java @@ -41,7 +41,6 @@ import org.traccar.events.AlertEventHandler; import org.traccar.helper.Log; import org.traccar.processing.ComputedAttributesHandler; import org.traccar.processing.CopyAttributesHandler; -import org.traccar.processing.PopulateDriverHandler; import java.net.InetSocketAddress; @@ -56,7 +55,6 @@ public abstract class BasePipelineFactory implements ChannelPipelineFactory { private GeocoderHandler geocoderHandler; private GeolocationHandler geolocationHandler; private HemisphereHandler hemisphereHandler; - private PopulateDriverHandler populateDriverHandler; private CopyAttributesHandler copyAttributesHandler; private ComputedAttributesHandler computedAttributesHandler; @@ -156,8 +154,6 @@ public abstract class BasePipelineFactory implements ChannelPipelineFactory { hemisphereHandler = new HemisphereHandler(); } - populateDriverHandler = new PopulateDriverHandler(); - if (Context.getConfig().getBoolean("processing.copyAttributes.enable")) { copyAttributesHandler = new CopyAttributesHandler(); } @@ -221,10 +217,6 @@ public abstract class BasePipelineFactory implements ChannelPipelineFactory { pipeline.addLast("motion", motionHandler); } - if (populateDriverHandler != null) { - pipeline.addLast("populateDriver", populateDriverHandler); - } - if (copyAttributesHandler != null) { pipeline.addLast("copyAttributes", copyAttributesHandler); } diff --git a/src/org/traccar/processing/CopyAttributesHandler.java b/src/org/traccar/processing/CopyAttributesHandler.java index 3a96ca98d..a9e761c3d 100644 --- a/src/org/traccar/processing/CopyAttributesHandler.java +++ b/src/org/traccar/processing/CopyAttributesHandler.java @@ -35,6 +35,7 @@ public class CopyAttributesHandler extends BaseDataHandler { position.getDeviceId(), "processing.copyAttributes", null, true); Position last = getLastPosition(position.getDeviceId()); if (attributesString != null && last != null) { + attributesString += Position.KEY_DRIVER_UNIQUE_ID + ","; for (String attribute : attributesString.split("[ ,]")) { if (last.getAttributes().containsKey(attribute) && !position.getAttributes().containsKey(attribute)) { position.getAttributes().put(attribute, last.getAttributes().get(attribute)); diff --git a/src/org/traccar/processing/PopulateDriverHandler.java b/src/org/traccar/processing/PopulateDriverHandler.java deleted file mode 100644 index 339cc5548..000000000 --- a/src/org/traccar/processing/PopulateDriverHandler.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright 2017 Anton Tananaev (anton@traccar.org) - * Copyright 2017 Andrey Kunitsyn (andrey@traccar.org) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.processing; - -import org.traccar.BaseDataHandler; -import org.traccar.Context; -import org.traccar.model.Position; - -public class PopulateDriverHandler extends BaseDataHandler { - - private Position getLastPosition(long deviceId) { - if (Context.getIdentityManager() != null) { - return Context.getIdentityManager().getLastPosition(deviceId); - } - return null; - } - - @Override - protected Position handlePosition(Position position) { - if (position.getAttributes().containsKey(Position.KEY_RFID)) { - position.set(Position.KEY_DRIVER_UNIQUE_ID, position.getString(Position.KEY_RFID)); - } else { - Position last = getLastPosition(position.getDeviceId()); - if (last != null && last.getAttributes().containsKey(Position.KEY_DRIVER_UNIQUE_ID)) { - position.set(Position.KEY_DRIVER_UNIQUE_ID, last.getString(Position.KEY_DRIVER_UNIQUE_ID)); - } - } - return position; - } - -} -- cgit v1.2.3