diff options
Diffstat (limited to 'src/org/traccar/protocol/RuptelaProtocolDecoder.java')
-rw-r--r-- | src/org/traccar/protocol/RuptelaProtocolDecoder.java | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/src/org/traccar/protocol/RuptelaProtocolDecoder.java b/src/org/traccar/protocol/RuptelaProtocolDecoder.java index 7b11cc5c3..e5d196fed 100644 --- a/src/org/traccar/protocol/RuptelaProtocolDecoder.java +++ b/src/org/traccar/protocol/RuptelaProtocolDecoder.java @@ -1,5 +1,5 @@ /* - * Copyright 2013 - 2017 Anton Tananaev (anton@traccar.org) + * Copyright 2013 - 2018 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,11 +15,12 @@ */ package org.traccar.protocol; -import org.jboss.netty.buffer.ChannelBuffer; -import org.jboss.netty.buffer.ChannelBuffers; -import org.jboss.netty.channel.Channel; +import io.netty.buffer.ByteBuf; +import io.netty.buffer.Unpooled; +import io.netty.channel.Channel; import org.traccar.BaseProtocolDecoder; import org.traccar.DeviceSession; +import org.traccar.NetworkMessage; import org.traccar.helper.DataConverter; import org.traccar.helper.UnitsConverter; import org.traccar.model.Position; @@ -48,7 +49,7 @@ public class RuptelaProtocolDecoder extends BaseProtocolDecoder { public static final int MSG_SET_IO = 17; public static final int MSG_EXTENDED_RECORDS = 68; - private Position decodeCommandResponse(DeviceSession deviceSession, int type, ChannelBuffer buf) { + private Position decodeCommandResponse(DeviceSession deviceSession, int type, ByteBuf buf) { Position position = new Position(getProtocolName()); position.setDeviceId(deviceSession.getDeviceId()); @@ -73,7 +74,7 @@ public class RuptelaProtocolDecoder extends BaseProtocolDecoder { } } - private long readValue(ChannelBuffer buf, int length, boolean signed) { + private long readValue(ByteBuf buf, int length, boolean signed) { switch (length) { case 1: return signed ? buf.readByte() : buf.readUnsignedByte(); @@ -86,7 +87,7 @@ public class RuptelaProtocolDecoder extends BaseProtocolDecoder { } } - private void decodeParameter(Position position, int id, ChannelBuffer buf, int length) { + private void decodeParameter(Position position, int id, ByteBuf buf, int length) { switch (id) { case 2: case 3: @@ -114,7 +115,7 @@ public class RuptelaProtocolDecoder extends BaseProtocolDecoder { protected Object decode( Channel channel, SocketAddress remoteAddress, Object msg) throws Exception { - ChannelBuffer buf = (ChannelBuffer) msg; + ByteBuf buf = (ByteBuf) msg; buf.readUnsignedShort(); // data length @@ -196,7 +197,8 @@ public class RuptelaProtocolDecoder extends BaseProtocolDecoder { } if (channel != null) { - channel.write(ChannelBuffers.wrappedBuffer(DataConverter.parseHex("0002640113bc"))); + channel.writeAndFlush(new NetworkMessage( + Unpooled.wrappedBuffer(DataConverter.parseHex("0002640113bc")), remoteAddress)); } return positions; @@ -223,13 +225,14 @@ public class RuptelaProtocolDecoder extends BaseProtocolDecoder { position.set(Position.KEY_ARCHIVE, true); } - position.set(Position.KEY_DTCS, buf.readBytes(5).toString(StandardCharsets.US_ASCII)); + position.set(Position.KEY_DTCS, buf.readSlice(5).toString(StandardCharsets.US_ASCII)); positions.add(position); } if (channel != null) { - channel.write(ChannelBuffers.wrappedBuffer(DataConverter.parseHex("00026d01c4a4"))); + channel.writeAndFlush(new NetworkMessage( + Unpooled.wrappedBuffer(DataConverter.parseHex("00026d01c4a4")), remoteAddress)); } return positions; |