handle checkout ordertype
This commit is contained in:
@@ -219,3 +219,34 @@ func (h *RemoveDeliveryHandler) Is(m *Message) bool {
|
|||||||
_, ok := m.Content.(*messages.RemoveDelivery)
|
_, ok := m.Content.(*messages.RemoveDelivery)
|
||||||
return ok
|
return ok
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type CheckoutHandler struct {
|
||||||
|
TypedMessageHandler
|
||||||
|
}
|
||||||
|
|
||||||
|
func (h *CheckoutHandler) Write(m *Message, w io.Writer) error {
|
||||||
|
messageBytes, err := proto.Marshal(m.Content.(*messages.CreateCheckoutOrder))
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
w.Write(messageBytes)
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (h *CheckoutHandler) Read(data []byte) (interface{}, error) {
|
||||||
|
msg := &messages.CreateCheckoutOrder{}
|
||||||
|
|
||||||
|
err := proto.Unmarshal(data, msg)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return msg, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (h *CheckoutHandler) Is(m *Message) bool {
|
||||||
|
if m.Type != CreateCheckoutOrderType {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
_, ok := m.Content.(*messages.CreateCheckoutOrder)
|
||||||
|
return ok
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user