Skip to content

Commit

Permalink
feat(plc4go/spi): improve string outputs of transports
Browse files Browse the repository at this point in the history
  • Loading branch information
sruehl committed Mar 22, 2023
1 parent b865077 commit a618193
Show file tree
Hide file tree
Showing 5 changed files with 43 additions and 0 deletions.
9 changes: 9 additions & 0 deletions plc4go/spi/transports/pcap/Transport.go
Expand Up @@ -22,6 +22,7 @@ package pcap
import (
"bufio"
"bytes"
"fmt"
"github.com/apache/plc4x/plc4go/spi/transports"
"github.com/gopacket/gopacket"
"github.com/gopacket/gopacket/layers"
Expand Down Expand Up @@ -78,6 +79,10 @@ func (m Transport) CreateTransportInstance(transportUrl url.URL, options map[str
return NewPcapTransportInstance(transportUrl.Path, transportType, portRange, speedFactor, &m), nil
}

func (m Transport) String() string {
return m.GetTransportCode() + "(" + m.GetTransportName() + ")"
}

type TransportInstance struct {
transports.DefaultBufferedTransportInstance
transportFile string
Expand Down Expand Up @@ -193,3 +198,7 @@ func (m *TransportInstance) Write(_ []uint8) error {
func (m *TransportInstance) GetReader() *bufio.Reader {
return m.reader
}

func (m *TransportInstance) String() string {
return fmt.Sprintf("pcap:%s(%s)x%d", m.transportFile, m.portRange, m.speedFactor)
}
9 changes: 9 additions & 0 deletions plc4go/spi/transports/serial/Transport.go
Expand Up @@ -21,6 +21,7 @@ package serial

import (
"bufio"
"fmt"
"github.com/apache/plc4x/plc4go/spi/transports"
"github.com/jacobsa/go-serial/serial"
"github.com/pkg/errors"
Expand Down Expand Up @@ -75,6 +76,10 @@ func (m Transport) CreateTransportInstanceForLocalAddress(transportUrl url.URL,
return NewTransportInstance(serialPortName, baudRate, connectTimeout, &m), nil
}

func (m Transport) String() string {
return m.GetTransportCode() + "(" + m.GetTransportName() + ")"
}

type TransportInstance struct {
transports.DefaultBufferedTransportInstance
SerialPortName string
Expand Down Expand Up @@ -150,3 +155,7 @@ func (m *TransportInstance) Write(data []uint8) error {
func (m *TransportInstance) GetReader() *bufio.Reader {
return m.reader
}

func (m *TransportInstance) String() string {
return fmt.Sprintf("serial:%s:%d", m.SerialPortName, m.BaudRate)
}
8 changes: 8 additions & 0 deletions plc4go/spi/transports/tcp/Transport.go
Expand Up @@ -95,6 +95,10 @@ func (m Transport) CreateTransportInstance(transportUrl url.URL, options map[str
return NewTcpTransportInstance(tcpAddr, connectTimeout, &m), nil
}

func (m Transport) String() string {
return m.GetTransportCode() + "(" + m.GetTransportName() + ")"
}

type TransportInstance struct {
transports.DefaultBufferedTransportInstance
RemoteAddress *net.TCPAddr
Expand Down Expand Up @@ -167,3 +171,7 @@ func (m *TransportInstance) Write(data []uint8) error {
func (m *TransportInstance) GetReader() *bufio.Reader {
return m.reader
}

func (m *TransportInstance) String() string {
return fmt.Sprintf("tcp:%s->%s", m.LocalAddress, m.RemoteAddress)
}
8 changes: 8 additions & 0 deletions plc4go/spi/transports/test/Transport.go
Expand Up @@ -49,6 +49,10 @@ func (m Transport) CreateTransportInstance(_ url.URL, _ map[string][]string) (tr
return NewTransportInstance(&m), nil
}

func (m Transport) String() string {
return m.GetTransportCode() + "(" + m.GetTransportName() + ")"
}

type TransportInstance struct {
readBuffer []byte
writeBuffer []byte
Expand Down Expand Up @@ -140,3 +144,7 @@ func (m *TransportInstance) DrainWriteBuffer(numBytes uint32) ([]uint8, error) {
m.writeBuffer = m.writeBuffer[int(numBytes):]
return data, nil
}

func (m *TransportInstance) String() string {
return "test"
}
9 changes: 9 additions & 0 deletions plc4go/spi/transports/udp/Transport.go
Expand Up @@ -22,6 +22,7 @@ package udp
import (
"bufio"
"context"
"fmt"
"github.com/apache/plc4x/plc4go/spi/transports"
"github.com/apache/plc4x/plc4go/spi/utils"
"github.com/libp2p/go-reuseport"
Expand Down Expand Up @@ -107,6 +108,10 @@ func (m Transport) CreateTransportInstanceForLocalAddress(transportUrl url.URL,
return NewTransportInstance(localAddress, remoteAddress, connectTimeout, soReUse, &m), nil
}

func (m Transport) String() string {
return m.GetTransportCode() + "(" + m.GetTransportName() + ")"
}

type TransportInstance struct {
LocalAddress *net.UDPAddr
RemoteAddress *net.UDPAddr
Expand Down Expand Up @@ -262,3 +267,7 @@ func (m *TransportInstance) Write(data []uint8) error {
}
return nil
}

func (m *TransportInstance) String() string {
return fmt.Sprintf("udp:%s->%s", m.LocalAddress, m.RemoteAddress)
}

0 comments on commit a618193

Please sign in to comment.