aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/traccar
diff options
context:
space:
mode:
authorAnton Tananaev <anton.tananaev@gmail.com>2021-10-21 20:26:45 -0700
committerAnton Tananaev <anton.tananaev@gmail.com>2021-10-21 20:26:45 -0700
commit36bcdfc80dc19bc932f03bc8a0da056f46023304 (patch)
treecdee146ba681fdaa3ce262026d28cd0d7ba7f550 /src/main/java/org/traccar
parent7f1cb863872c01aaf7defa8164940b729eb86b77 (diff)
downloadtrackermap-server-36bcdfc80dc19bc932f03bc8a0da056f46023304.tar.gz
trackermap-server-36bcdfc80dc19bc932f03bc8a0da056f46023304.tar.bz2
trackermap-server-36bcdfc80dc19bc932f03bc8a0da056f46023304.zip
Expect TCP JSON data
Diffstat (limited to 'src/main/java/org/traccar')
-rw-r--r--src/main/java/org/traccar/protocol/HoopoProtocol.java11
-rw-r--r--src/main/java/org/traccar/protocol/HoopoProtocolDecoder.java14
-rw-r--r--src/main/java/org/traccar/protocol/JsonFrameDecoder.java (renamed from src/main/java/org/traccar/protocol/StbFrameDecoder.java)2
-rw-r--r--src/main/java/org/traccar/protocol/StbProtocol.java2
4 files changed, 10 insertions, 19 deletions
diff --git a/src/main/java/org/traccar/protocol/HoopoProtocol.java b/src/main/java/org/traccar/protocol/HoopoProtocol.java
index d47327ad8..387b967d3 100644
--- a/src/main/java/org/traccar/protocol/HoopoProtocol.java
+++ b/src/main/java/org/traccar/protocol/HoopoProtocol.java
@@ -15,9 +15,8 @@
*/
package org.traccar.protocol;
-import io.netty.handler.codec.http.HttpObjectAggregator;
-import io.netty.handler.codec.http.HttpRequestDecoder;
-import io.netty.handler.codec.http.HttpResponseEncoder;
+import io.netty.handler.codec.string.StringDecoder;
+import io.netty.handler.codec.string.StringEncoder;
import org.traccar.BaseProtocol;
import org.traccar.PipelineBuilder;
import org.traccar.TrackerServer;
@@ -28,9 +27,9 @@ public class HoopoProtocol extends BaseProtocol {
addServer(new TrackerServer(false, getName()) {
@Override
protected void addProtocolHandlers(PipelineBuilder pipeline) {
- pipeline.addLast(new HttpResponseEncoder());
- pipeline.addLast(new HttpRequestDecoder());
- pipeline.addLast(new HttpObjectAggregator(65535));
+ pipeline.addLast(new JsonFrameDecoder());
+ pipeline.addLast(new StringEncoder());
+ pipeline.addLast(new StringDecoder());
pipeline.addLast(new HoopoProtocolDecoder(HoopoProtocol.this));
}
});
diff --git a/src/main/java/org/traccar/protocol/HoopoProtocolDecoder.java b/src/main/java/org/traccar/protocol/HoopoProtocolDecoder.java
index 4f6b3d546..5db7f0bc0 100644
--- a/src/main/java/org/traccar/protocol/HoopoProtocolDecoder.java
+++ b/src/main/java/org/traccar/protocol/HoopoProtocolDecoder.java
@@ -16,9 +16,7 @@
package org.traccar.protocol;
import io.netty.channel.Channel;
-import io.netty.handler.codec.http.FullHttpRequest;
-import io.netty.handler.codec.http.HttpResponseStatus;
-import org.traccar.BaseHttpProtocolDecoder;
+import org.traccar.BaseProtocolDecoder;
import org.traccar.DeviceSession;
import org.traccar.Protocol;
import org.traccar.model.Position;
@@ -27,11 +25,10 @@ import javax.json.Json;
import javax.json.JsonObject;
import java.io.StringReader;
import java.net.SocketAddress;
-import java.nio.charset.StandardCharsets;
import java.time.OffsetDateTime;
import java.util.Date;
-public class HoopoProtocolDecoder extends BaseHttpProtocolDecoder {
+public class HoopoProtocolDecoder extends BaseProtocolDecoder {
public HoopoProtocolDecoder(Protocol protocol) {
super(protocol);
@@ -41,13 +38,10 @@ public class HoopoProtocolDecoder extends BaseHttpProtocolDecoder {
protected Object decode(
Channel channel, SocketAddress remoteAddress, Object msg) throws Exception {
- FullHttpRequest request = (FullHttpRequest) msg;
- String content = request.content().toString(StandardCharsets.UTF_8);
- JsonObject json = Json.createReader(new StringReader(content)).readObject();
+ JsonObject json = Json.createReader(new StringReader((String) msg)).readObject();
DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, json.getString("deviceId"));
if (deviceSession == null) {
- sendResponse(channel, HttpResponseStatus.BAD_REQUEST);
return null;
}
@@ -72,8 +66,6 @@ public class HoopoProtocolDecoder extends BaseHttpProtocolDecoder {
}
- sendResponse(channel, HttpResponseStatus.OK);
-
return null;
}
diff --git a/src/main/java/org/traccar/protocol/StbFrameDecoder.java b/src/main/java/org/traccar/protocol/JsonFrameDecoder.java
index 6a4157f17..b2d7fbd53 100644
--- a/src/main/java/org/traccar/protocol/StbFrameDecoder.java
+++ b/src/main/java/org/traccar/protocol/JsonFrameDecoder.java
@@ -20,7 +20,7 @@ import io.netty.channel.Channel;
import io.netty.channel.ChannelHandlerContext;
import org.traccar.BaseFrameDecoder;
-public class StbFrameDecoder extends BaseFrameDecoder {
+public class JsonFrameDecoder extends BaseFrameDecoder {
@Override
protected Object decode(
diff --git a/src/main/java/org/traccar/protocol/StbProtocol.java b/src/main/java/org/traccar/protocol/StbProtocol.java
index ca95787d0..002ed86c7 100644
--- a/src/main/java/org/traccar/protocol/StbProtocol.java
+++ b/src/main/java/org/traccar/protocol/StbProtocol.java
@@ -27,7 +27,7 @@ public class StbProtocol extends BaseProtocol {
addServer(new TrackerServer(false, getName()) {
@Override
protected void addProtocolHandlers(PipelineBuilder pipeline) {
- pipeline.addLast(new StbFrameDecoder());
+ pipeline.addLast(new JsonFrameDecoder());
pipeline.addLast(new StringEncoder());
pipeline.addLast(new StringDecoder());
pipeline.addLast(new StbProtocolDecoder(StbProtocol.this));