aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/traccar/BaseHttpProtocolDecoder.java
diff options
context:
space:
mode:
authorjcardus <joaquim.cardeira@gmail.com>2020-03-25 17:25:19 +0000
committerjcardus <joaquim.cardeira@gmail.com>2020-03-25 17:25:19 +0000
commitfeac85bad4004fb3e316a88285626e12840398d2 (patch)
treed268a79d63b9d1f27b6e433fedc90de7b427b172 /src/main/java/org/traccar/BaseHttpProtocolDecoder.java
parent7b669e3181f637f06b31b55bd930584c7b08e897 (diff)
parentf3d465abe7f255ec44e976caade642e4c2fd7598 (diff)
downloadtrackermap-server-feac85bad4004fb3e316a88285626e12840398d2.tar.gz
trackermap-server-feac85bad4004fb3e316a88285626e12840398d2.tar.bz2
trackermap-server-feac85bad4004fb3e316a88285626e12840398d2.zip
Merge remote-tracking branch 'origin/master'
Diffstat (limited to 'src/main/java/org/traccar/BaseHttpProtocolDecoder.java')
-rw-r--r--src/main/java/org/traccar/BaseHttpProtocolDecoder.java15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/main/java/org/traccar/BaseHttpProtocolDecoder.java b/src/main/java/org/traccar/BaseHttpProtocolDecoder.java
index 57a68acac..b762be12c 100644
--- a/src/main/java/org/traccar/BaseHttpProtocolDecoder.java
+++ b/src/main/java/org/traccar/BaseHttpProtocolDecoder.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2017 - 2018 Anton Tananaev (anton@traccar.org)
+ * Copyright 2017 - 2020 Anton Tananaev (anton@traccar.org)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -15,6 +15,8 @@
*/
package org.traccar;
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
import io.netty.channel.Channel;
import io.netty.handler.codec.http.DefaultFullHttpResponse;
import io.netty.handler.codec.http.HttpHeaderNames;
@@ -29,9 +31,16 @@ public abstract class BaseHttpProtocolDecoder extends BaseProtocolDecoder {
}
public void sendResponse(Channel channel, HttpResponseStatus status) {
+ sendResponse(channel, status, null);
+ }
+
+ public void sendResponse(Channel channel, HttpResponseStatus status, ByteBuf buf) {
if (channel != null) {
- HttpResponse response = new DefaultFullHttpResponse(HttpVersion.HTTP_1_1, status);
- response.headers().add(HttpHeaderNames.CONTENT_LENGTH, 0);
+ if (buf == null) {
+ buf = Unpooled.buffer(0);
+ }
+ HttpResponse response = new DefaultFullHttpResponse(HttpVersion.HTTP_1_1, status, buf);
+ response.headers().add(HttpHeaderNames.CONTENT_LENGTH, buf.readableBytes());
channel.writeAndFlush(new NetworkMessage(response, channel.remoteAddress()));
}
}