From 84e654028ac2d9cbba79d8898b16ca0cc0212f4a Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Sat, 11 Jan 2014 12:29:29 +1300 Subject: Add UDP TAIP protocol --- src/org/traccar/ServerManager.java | 14 +++++++++++++- src/org/traccar/protocol/SyrusProtocolDecoder.java | 7 ++----- 2 files changed, 15 insertions(+), 6 deletions(-) (limited to 'src/org/traccar') diff --git a/src/org/traccar/ServerManager.java b/src/org/traccar/ServerManager.java index 56a5a1c08..74debb35b 100644 --- a/src/org/traccar/ServerManager.java +++ b/src/org/traccar/ServerManager.java @@ -1,5 +1,5 @@ /* - * Copyright 2012 - 2013 Anton Tananaev (anton.tananaev@gmail.com) + * Copyright 2012 - 2014 Anton Tananaev (anton.tananaev@gmail.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -158,6 +158,7 @@ public class ServerManager { initM2mServer("m2m"); initOsmAndServer("osmand"); initEasyTrackServer("easytrack"); + initTaipServer("taip"); // Initialize web server if (Boolean.valueOf(properties.getProperty("http.enable"))) { @@ -1018,4 +1019,15 @@ public class ServerManager { } } + private void initTaipServer(String protocol) throws SQLException { + if (isProtocolEnabled(properties, protocol)) { + serverList.add(new TrackerServer(this, new ConnectionlessBootstrap(), protocol) { + @Override + protected void addSpecificHandlers(ChannelPipeline pipeline) { + pipeline.addLast("objectDecoder", new SyrusProtocolDecoder(ServerManager.this)); + } + }); + } + } + } diff --git a/src/org/traccar/protocol/SyrusProtocolDecoder.java b/src/org/traccar/protocol/SyrusProtocolDecoder.java index 66d6872e4..b20e16bcb 100644 --- a/src/org/traccar/protocol/SyrusProtocolDecoder.java +++ b/src/org/traccar/protocol/SyrusProtocolDecoder.java @@ -1,5 +1,5 @@ /* - * Copyright 2013 Anton Tananaev (anton.tananaev@gmail.com) + * Copyright 2013 - 2014 Anton Tananaev (anton.tananaev@gmail.com) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -34,10 +34,7 @@ public class SyrusProtocolDecoder extends BaseProtocolDecoder { super(serverManager); } - /** - * Regular expressions pattern - */ - static private Pattern pattern = Pattern.compile( + private static final Pattern pattern = Pattern.compile( "R[EP]V" + // Type "(?:\\d{2}" + // Event index "(\\d{4})" + // Week -- cgit v1.2.3