forked from TrueCloudLab/neoneo-go
rpc: use default Uint160 marshaller for result.NEP5Balance.Asset
To match C# behaviour we should marshal asset hash with `0x` prefix.
This commit is contained in:
parent
0f827ee6ba
commit
31cf71fb62
1 changed files with 0 additions and 35 deletions
|
@ -1,8 +1,6 @@
|
||||||
package result
|
package result
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/json"
|
|
||||||
|
|
||||||
"github.com/nspcc-dev/neo-go/pkg/util"
|
"github.com/nspcc-dev/neo-go/pkg/util"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -19,13 +17,6 @@ type NEP5Balance struct {
|
||||||
LastUpdated uint32 `json:"lastupdatedblock"`
|
LastUpdated uint32 `json:"lastupdatedblock"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// nep5Balance is an auxiliary struct for proper Asset marshaling.
|
|
||||||
type nep5Balance struct {
|
|
||||||
Asset string `json:"assethash"`
|
|
||||||
Amount string `json:"amount"`
|
|
||||||
LastUpdated uint32 `json:"lastupdatedblock"`
|
|
||||||
}
|
|
||||||
|
|
||||||
// NEP5Transfers is a result for the getnep5transfers RPC.
|
// NEP5Transfers is a result for the getnep5transfers RPC.
|
||||||
type NEP5Transfers struct {
|
type NEP5Transfers struct {
|
||||||
Sent []NEP5Transfer `json:"sent"`
|
Sent []NEP5Transfer `json:"sent"`
|
||||||
|
@ -43,29 +34,3 @@ type NEP5Transfer struct {
|
||||||
NotifyIndex uint32 `json:"transfernotifyindex"`
|
NotifyIndex uint32 `json:"transfernotifyindex"`
|
||||||
TxHash util.Uint256 `json:"txhash"`
|
TxHash util.Uint256 `json:"txhash"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// MarshalJSON implements json.Marshaler interface.
|
|
||||||
func (b *NEP5Balance) MarshalJSON() ([]byte, error) {
|
|
||||||
s := &nep5Balance{
|
|
||||||
Asset: b.Asset.StringLE(),
|
|
||||||
Amount: b.Amount,
|
|
||||||
LastUpdated: b.LastUpdated,
|
|
||||||
}
|
|
||||||
return json.Marshal(s)
|
|
||||||
}
|
|
||||||
|
|
||||||
// UnmarshalJSON implements json.Unmarshaler interface.
|
|
||||||
func (b *NEP5Balance) UnmarshalJSON(data []byte) error {
|
|
||||||
s := new(nep5Balance)
|
|
||||||
if err := json.Unmarshal(data, s); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
asset, err := util.Uint160DecodeStringLE(s.Asset)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
b.Amount = s.Amount
|
|
||||||
b.Asset = asset
|
|
||||||
b.LastUpdated = s.LastUpdated
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
Loading…
Reference in a new issue