// TODO:
// RequestSign() will request a remote warder to sign a tx, the remote warder
// will sign the tx, update its tx data & signs data, and response with the signs
-func (w *Warder) RequestSigns(destTx interface{}, ormTx *orm.CrossTransaction) ([]string, error) {
+func (w *Warder) RequestSigns(destTx interface{}, ormTx *orm.CrossTransaction) ([][]byte, error) {
return nil, nil
}
import (
"database/sql"
"encoding/hex"
- "encoding/json"
+ // TODO:
+ // "encoding/json"
"time"
btmTypes "github.com/bytom/protocol/bc/types"
}
// TODO:
-func (w *warder) attachSignsForTx( /*destTx interface{}, */ ormTx *orm.CrossTransaction, signersSigns [][][]byte, position uint8, signs []string) error {
- var inputsLen int
- switch destTx := destTx.(type) {
- case *vaporTypes.Tx:
- inputsLen = len(destTx.Inputs)
- case *btmTypes.Tx:
- inputsLen = len(destTx.Inputs)
- default:
- return errUnknownTxType
- }
+func (w *warder) attachSignsForTx( /*destTx interface{}, */ ormTx *orm.CrossTransaction, signersSigns [][][]byte, position uint8, signerSigns [][]byte) error {
+ // TODO: rename
+ // signWitness := make([][]string, len(signersSigns))
- // finalize tx?
-
- signWitness := make([][]string, inputsLen)
-
- b, err := json.Marshal(signs)
- if err != nil {
- return errors.Wrap(err, "marshal signs")
- }
+ // TODO:
return w.db.Model(&orm.CrossTransactionSign{}).
Where(&orm.CrossTransactionSign{
WarderID: w.position,
}).
UpdateColumn(&orm.CrossTransactionSign{
- Signatures: string(b),
+ // TODO:
+ Signatures: "",
Status: common.CrossTxSignCompletedStatus,
}).Error
}