forked from TrueCloudLab/neoneo-go
28908aa3cf
Signed-off-by: Elizaveta Chichindaeva <elizaveta@nspcc.ru>
26 lines
742 B
Go
26 lines
742 B
Go
package context
|
|
|
|
import (
|
|
"encoding/hex"
|
|
|
|
"github.com/nspcc-dev/neo-go/pkg/crypto/keys"
|
|
"github.com/nspcc-dev/neo-go/pkg/smartcontract"
|
|
)
|
|
|
|
// Item represents a transaction context item.
|
|
type Item struct {
|
|
Script []byte `json:"script"`
|
|
Parameters []smartcontract.Parameter `json:"parameters"`
|
|
Signatures map[string][]byte `json:"signatures"`
|
|
}
|
|
|
|
// GetSignature returns a signature for the pub if present.
|
|
func (it *Item) GetSignature(pub *keys.PublicKey) []byte {
|
|
return it.Signatures[hex.EncodeToString(pub.Bytes())]
|
|
}
|
|
|
|
// AddSignature adds a signature for the pub.
|
|
func (it *Item) AddSignature(pub *keys.PublicKey, sig []byte) {
|
|
pubHex := hex.EncodeToString(pub.Bytes())
|
|
it.Signatures[pubHex] = sig
|
|
}
|