Skip to content
This repository has been archived by the owner on Mar 28, 2023. It is now read-only.

Commit

Permalink
Merge pull request #1654 from OpenBazaar/order_payment_network_message
Browse files Browse the repository at this point in the history
Add ORDER_PAYMENT network message
  • Loading branch information
placer14 authored Aug 8, 2019
2 parents 9d5e4e3 + 75eed3e commit 2367b14
Show file tree
Hide file tree
Showing 56 changed files with 1,536 additions and 882 deletions.
38 changes: 19 additions & 19 deletions Godeps/Godeps.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions api/jsonapi.go
Original file line number Diff line number Diff line change
Expand Up @@ -764,6 +764,17 @@ func (i *jsonAPIHandler) POSTSpendCoinsForOrder(w http.ResponseWriter, r *http.R
ErrorResponse(w, http.StatusBadRequest, err.Error())
return
}
msg := pb.OrderPaymentTxn{
Coin: spendArgs.Wallet,
OrderID: result.OrderID,
TransactionID: result.Txid,
WithInput: false,
}

err = i.node.SendOrderPayment(result.PeerID, &msg)
if err != nil {
log.Errorf("error sending order with id %s payment: %v", result.OrderID, err)
}

ser, err := json.MarshalIndent(result, "", " ")
if err != nil {
Expand Down
26 changes: 26 additions & 0 deletions core/net.go
Original file line number Diff line number Diff line change
Expand Up @@ -749,3 +749,29 @@ func (n *OpenBazaarNode) SendOfflineRelay(peerID string, encryptedMessage []byte
}
return n.sendMessage(peerID, nil, m)
}

// SendOrderPayment - send order payment msg to seller from buyer
func (n *OpenBazaarNode) SendOrderPayment(peerID string, paymentMessage *pb.OrderPaymentTxn) error {
a, err := ptypes.MarshalAny(paymentMessage)
if err != nil {
return err
}
m := pb.Message{
MessageType: pb.Message_ORDER_PAYMENT,
Payload: a,
}

p, err := peer.IDB58Decode(peerID)
if err != nil {
return err
}
ctx, cancel := context.WithTimeout(context.Background(), n.OfflineMessageFailoverTimeout)
err = n.Service.SendMessage(ctx, p, &m)
cancel()
if err != nil {
if err := n.SendOfflineMessage(p, nil, &m); err != nil {
return err
}
}
return nil
}
1 change: 1 addition & 0 deletions core/spend.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ type SpendResponse struct {
Timestamp time.Time `json:"timestamp"`
Txid string `json:"txid"`
UnconfirmedBalance int64 `json:"unconfirmedBalance"`
PeerID string `json:"-"`
}

// Spend will attempt to move funds from the node to the destination address described in the
Expand Down
1 change: 1 addition & 0 deletions net/retriever/retriever.go
Original file line number Diff line number Diff line change
Expand Up @@ -416,6 +416,7 @@ var MessageProcessingOrder = []pb.Message_MessageType{
pb.Message_ORDER_CANCEL,
pb.Message_ORDER_REJECT,
pb.Message_ORDER_CONFIRMATION,
pb.Message_ORDER_PAYMENT,
pb.Message_ORDER_FULFILLMENT,
pb.Message_ORDER_COMPLETION,
pb.Message_DISPUTE_OPEN,
Expand Down
Loading

0 comments on commit 2367b14

Please sign in to comment.