This is an automated email from the ASF dual-hosted git repository. cdutz pushed a commit to branch develop in repository https://gitbox.apache.org/repos/asf/plc4x.git
commit 5c8bc05b881ded89a1d7139ead6bf022f0e3909e Author: Christofer Dutz <[email protected]> AuthorDate: Tue Sep 24 10:00:55 2019 +0200 - Adjusted the existing dirvers to latest changes --- .../plc4x/java/abeth/protocol/AbEthProtocol.java | 27 +++++++++++++++++++++- .../plc4x/java/df1/protocol/Df1Protocol.java | 2 +- .../plc4x/javapassive/s7/PassiveS7PlcDriver.java | 5 ++-- .../s7/connection/PassiveS7PlcConnection.java | 3 ++- 4 files changed, 32 insertions(+), 5 deletions(-) diff --git a/sandbox/test-java-ab-eth-driver/src/main/java/org/apache/plc4x/java/abeth/protocol/AbEthProtocol.java b/sandbox/test-java-ab-eth-driver/src/main/java/org/apache/plc4x/java/abeth/protocol/AbEthProtocol.java index 34c6e64..24cd162 100644 --- a/sandbox/test-java-ab-eth-driver/src/main/java/org/apache/plc4x/java/abeth/protocol/AbEthProtocol.java +++ b/sandbox/test-java-ab-eth-driver/src/main/java/org/apache/plc4x/java/abeth/protocol/AbEthProtocol.java @@ -18,14 +18,39 @@ under the License. */ package org.apache.plc4x.java.abeth.protocol; +import io.netty.buffer.ByteBuf; import org.apache.plc4x.java.abeth.readwrite.CIPEncapsulationPacket; import org.apache.plc4x.java.abeth.readwrite.io.CIPEncapsulationPacketIO; import org.apache.plc4x.java.base.GeneratedDriverByteToMessageCodec; +import org.apache.plc4x.java.utils.MessageIO; +import org.apache.plc4x.java.utils.ParseException; +import org.apache.plc4x.java.utils.ReadBuffer; +import org.apache.plc4x.java.utils.WriteBuffer; public class AbEthProtocol extends GeneratedDriverByteToMessageCodec<CIPEncapsulationPacket> { public AbEthProtocol() { - super(new CIPEncapsulationPacketIO()); + super(new MessageIO<CIPEncapsulationPacket, CIPEncapsulationPacket>() { + @Override + public CIPEncapsulationPacket parse(ReadBuffer io) throws ParseException { + return CIPEncapsulationPacketIO.parse(io); + } + + @Override + public void serialize(WriteBuffer io, CIPEncapsulationPacket value) throws ParseException { + CIPEncapsulationPacketIO.serialize(io, value); + } + }); + } + + @Override + protected int getPacketSize(ByteBuf byteBuf) { + return byteBuf.readableBytes(); + } + + @Override + protected void removeRestOfCorruptPackage(ByteBuf byteBuf) { + // Nothing to do here ... } } diff --git a/sandbox/test-java-df1-driver/src/main/java/org/apache/plc4x/java/df1/protocol/Df1Protocol.java b/sandbox/test-java-df1-driver/src/main/java/org/apache/plc4x/java/df1/protocol/Df1Protocol.java index cd21883..6ce72d2 100644 --- a/sandbox/test-java-df1-driver/src/main/java/org/apache/plc4x/java/df1/protocol/Df1Protocol.java +++ b/sandbox/test-java-df1-driver/src/main/java/org/apache/plc4x/java/df1/protocol/Df1Protocol.java @@ -138,7 +138,7 @@ public class Df1Protocol extends PlcByteToMessageCodec<DF1Command> { in.readBytes(data); ReadBuffer readBuffer = new ReadBuffer(data, false); - resp = df1SymbolIO.parse(readBuffer, size); + resp = df1SymbolIO.parse(readBuffer); // } while (readWasSucessfull); // // TODO if unableto read diff --git a/sandbox/test-java-passive-s7-driver/src/main/java/org/apache/plc4x/javapassive/s7/PassiveS7PlcDriver.java b/sandbox/test-java-passive-s7-driver/src/main/java/org/apache/plc4x/javapassive/s7/PassiveS7PlcDriver.java index 05b0871..1c08af0 100644 --- a/sandbox/test-java-passive-s7-driver/src/main/java/org/apache/plc4x/javapassive/s7/PassiveS7PlcDriver.java +++ b/sandbox/test-java-passive-s7-driver/src/main/java/org/apache/plc4x/javapassive/s7/PassiveS7PlcDriver.java @@ -24,13 +24,14 @@ import org.apache.plc4x.java.api.authentication.PlcAuthentication; import org.apache.plc4x.java.api.exceptions.PlcConnectionException; import org.apache.plc4x.java.api.messages.PlcReadRequest; import org.apache.plc4x.java.spi.PlcDriver; -import org.apache.plc4x.java.utils.rawsockets.netty.RawSocketAddress; import org.apache.plc4x.java.utils.rawsockets.netty.RawSocketIpAddress; import org.apache.plc4x.javapassive.s7.connection.PassiveS7PlcConnection; import java.util.regex.Matcher; import java.util.regex.Pattern; +import static org.apache.plc4x.java.utils.rawsockets.netty.RawSocketAddress.ALL_PROTOCOLS; + /** * Implementation of the S7 protocol, based on: * - S7 Protocol @@ -67,7 +68,7 @@ public class PassiveS7PlcDriver implements PlcDriver { try { RawSocketIpAddress rawSocketAddress = new RawSocketIpAddress( - networkDevice, RawSocketIpAddress.ALL_PROTOCOLS, null, ISO_ON_TCP_PORT); + networkDevice, ALL_PROTOCOLS, null, ISO_ON_TCP_PORT); return new PassiveS7PlcConnection(rawSocketAddress, params); } catch (Exception e) { throw new PlcConnectionException("Error connecting to host", e); diff --git a/sandbox/test-java-passive-s7-driver/src/main/java/org/apache/plc4x/javapassive/s7/connection/PassiveS7PlcConnection.java b/sandbox/test-java-passive-s7-driver/src/main/java/org/apache/plc4x/javapassive/s7/connection/PassiveS7PlcConnection.java index 04245ec..a56b437 100644 --- a/sandbox/test-java-passive-s7-driver/src/main/java/org/apache/plc4x/javapassive/s7/connection/PassiveS7PlcConnection.java +++ b/sandbox/test-java-passive-s7-driver/src/main/java/org/apache/plc4x/javapassive/s7/connection/PassiveS7PlcConnection.java @@ -31,6 +31,7 @@ import org.apache.plc4x.java.base.events.ConnectedEvent; import org.apache.plc4x.java.base.messages.DefaultPlcReadRequest; import org.apache.plc4x.java.base.messages.PlcReader; import org.apache.plc4x.java.utils.rawsockets.netty.RawSocketIpAddress; +import org.apache.plc4x.java.utils.rawsockets.netty.TcpIpPacketHandler; import org.apache.plc4x.javapassive.s7.protocol.HelloWorldProtocol; import org.apache.plc4x.javapassive.s7.protocol.PassiveS7Protocol; @@ -40,7 +41,7 @@ public class PassiveS7PlcConnection extends NettyPlcConnection implements PlcRea public PassiveS7PlcConnection(RawSocketIpAddress address, String params) { this(new RawSocketChannelFactory(address.getDeviceName(), null, - 102, -1), params); + address.getPort(), -1, new TcpIpPacketHandler()), params); } public PassiveS7PlcConnection(ChannelFactory channelFactory, String param) {
