Return PONG response from server

This commit is contained in:
Kelvin Clement Mwinuka
2023-06-26 19:41:38 +08:00
parent 40be716513
commit e0e865fd56
3 changed files with 49 additions and 23 deletions

View File

@@ -3,30 +3,31 @@ package serialization
import (
"bytes"
"fmt"
"io"
"github.com/tidwall/resp"
)
func Decode(raw string) {
func Decode(raw string) ([]string, error) {
rd := resp.NewReader(bytes.NewBufferString(raw))
for {
v, _, err := rd.ReadValue()
v, _, err := rd.ReadValue()
if err == io.EOF {
break
}
if err != nil {
return nil, err
}
if err != nil {
fmt.Println(err)
}
res := []string{}
fmt.Println(v)
if v.Type().String() == "Array" {
for _, elem := range v.Array() {
fmt.Printf("%s: %v\n", elem.Type().String(), elem)
}
if v.Type().String() == "SimpleString" {
return []string{v.String()}, nil
}
if v.Type().String() == "Array" {
for _, elem := range v.Array() {
res = append(res, elem.String())
}
}
fmt.Println(res)
return res, nil
}