fmt: whole hsp package
This commit is contained in:
@ -1,6 +1,7 @@
|
||||
package hsp
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"fmt"
|
||||
"net"
|
||||
@ -8,7 +9,7 @@ import (
|
||||
)
|
||||
|
||||
type Request struct {
|
||||
conn net.Conn
|
||||
conn net.Conn
|
||||
packet *Packet
|
||||
}
|
||||
|
||||
@ -54,6 +55,19 @@ func (req *Request) ExtractText() (string, error) {
|
||||
return string(req.packet.Payload), nil
|
||||
}
|
||||
|
||||
func (req *Request) ExtractJson(out any) error {
|
||||
df, err := req.GetDataFormat()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if !slices.Contains([]string{DF_JSON}, df.Format) {
|
||||
return errors.New(fmt.Sprintf("Data format '%s' cannot be extracted as json", df.Format))
|
||||
}
|
||||
|
||||
return json.Unmarshal(req.packet.Payload, out)
|
||||
}
|
||||
|
||||
func (req *Request) ExtractBytes() ([]byte, error) {
|
||||
df, err := req.GetDataFormat()
|
||||
if err != nil {
|
||||
@ -66,4 +80,3 @@ func (req *Request) ExtractBytes() ([]byte, error) {
|
||||
|
||||
return req.packet.Payload, nil
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user