aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/traccar/handler/StandardLoggingHandler.java
diff options
context:
space:
mode:
authorAnton Tananaev <anton@traccar.org>2024-03-30 18:46:37 -0700
committerAnton Tananaev <anton@traccar.org>2024-03-30 18:46:37 -0700
commitf84e2710e05660822633ec9e61cde44c03a42d7e (patch)
tree0d68bee50cc42ed206d270275dfb32b4b69c5186 /src/main/java/org/traccar/handler/StandardLoggingHandler.java
parentee996425221ca64fdf00777d9035cedc6dccfa43 (diff)
downloadtrackermap-server-f84e2710e05660822633ec9e61cde44c03a42d7e.tar.gz
trackermap-server-f84e2710e05660822633ec9e61cde44c03a42d7e.tar.bz2
trackermap-server-f84e2710e05660822633ec9e61cde44c03a42d7e.zip
Refactor position and event handlers
Diffstat (limited to 'src/main/java/org/traccar/handler/StandardLoggingHandler.java')
-rw-r--r--src/main/java/org/traccar/handler/StandardLoggingHandler.java89
1 files changed, 0 insertions, 89 deletions
diff --git a/src/main/java/org/traccar/handler/StandardLoggingHandler.java b/src/main/java/org/traccar/handler/StandardLoggingHandler.java
deleted file mode 100644
index 513602dd8..000000000
--- a/src/main/java/org/traccar/handler/StandardLoggingHandler.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * Copyright 2019 - 2024 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.
- * 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.handler;
-
-import io.netty.buffer.ByteBuf;
-import io.netty.buffer.ByteBufUtil;
-import io.netty.channel.ChannelDuplexHandler;
-import io.netty.channel.ChannelHandlerContext;
-import io.netty.channel.ChannelPromise;
-import jakarta.inject.Inject;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.traccar.NetworkMessage;
-import org.traccar.helper.NetworkUtil;
-import org.traccar.model.LogRecord;
-import org.traccar.session.ConnectionManager;
-
-public class StandardLoggingHandler extends ChannelDuplexHandler {
-
- private static final Logger LOGGER = LoggerFactory.getLogger(StandardLoggingHandler.class);
-
- private final String protocol;
- private ConnectionManager connectionManager;
-
- public StandardLoggingHandler(String protocol) {
- this.protocol = protocol;
- }
-
- @Inject
- public void setConnectionManager(ConnectionManager connectionManager) {
- this.connectionManager = connectionManager;
- }
-
- @Override
- public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
- LogRecord record = createLogRecord(ctx, msg);
- log(ctx, false, record);
- super.channelRead(ctx, msg);
- if (record != null) {
- connectionManager.updateLog(record);
- }
- }
-
- @Override
- public void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise) throws Exception {
- log(ctx, true, createLogRecord(ctx, msg));
- super.write(ctx, msg, promise);
- }
-
- private LogRecord createLogRecord(ChannelHandlerContext ctx, Object msg) {
- if (msg instanceof NetworkMessage) {
- NetworkMessage networkMessage = (NetworkMessage) msg;
- if (networkMessage.getMessage() instanceof ByteBuf) {
- LogRecord record = new LogRecord(ctx.channel().localAddress(), networkMessage.getRemoteAddress());
- record.setProtocol(protocol);
- record.setData(ByteBufUtil.hexDump((ByteBuf) networkMessage.getMessage()));
- return record;
- }
- }
- return null;
- }
-
- private void log(ChannelHandlerContext ctx, boolean downstream, LogRecord record) {
- if (record != null) {
- StringBuilder message = new StringBuilder();
- message.append("[").append(NetworkUtil.session(ctx.channel())).append(": ");
- message.append(protocol);
- message.append(downstream ? " > " : " < ");
- message.append(record.getAddress().getHostString());
- message.append("] ");
- message.append(record.getData());
- LOGGER.info(message.toString());
- }
- }
-
-}