update stuff
Some checks failed
Build and Publish / BuildAndDeploy (push) Failing after 3m53s
Build and Publish / BuildAndDeployAmd64 (push) Failing after 42s

This commit is contained in:
matst80
2025-02-27 20:20:21 +01:00
parent d35a87e549
commit 03123bac89
5 changed files with 67 additions and 0 deletions

View File

@@ -16,6 +16,7 @@ var Handlers = map[uint16]MessageHandler{
RemoveItemType: &RemoveItemHandler{},
RemoveDeliveryType: &RemoveDeliveryHandler{},
CreateCheckoutOrderType: &CheckoutHandler{},
SetCartItemsType: &SetCartItemsHandler{},
}
func GetMessageHandler(t uint16) (MessageHandler, error) {
@@ -35,6 +36,37 @@ type TypedMessageHandler struct {
Type uint16
}
type SetCartItemsHandler struct {
TypedMessageHandler
}
func (h *SetCartItemsHandler) Write(m *Message, w io.Writer) error {
messageBytes, err := proto.Marshal(m.Content.(*messages.SetCartRequest))
if err != nil {
return err
}
w.Write(messageBytes)
return nil
}
func (h *SetCartItemsHandler) Read(data []byte) (interface{}, error) {
msg := &messages.SetCartRequest{}
err := proto.Unmarshal(data, msg)
if err != nil {
return nil, err
}
return msg, nil
}
func (h *SetCartItemsHandler) Is(m *Message) bool {
if m.Type != AddRequestType {
return false
}
_, ok := m.Content.(*messages.SetCartRequest)
return ok
}
type AddRequestHandler struct {
TypedMessageHandler
}