"context"
"github.com/vapor/account"
- "github.com/vapor/asset"
"github.com/vapor/blockchain/pseudohsm"
"github.com/vapor/crypto/ed25519/chainkd"
"github.com/vapor/errors"
// WalletImage hold the ziped wallet data
type WalletImage struct {
AccountImage *account.Image `json:"account_image"`
- AssetImage *asset.Image `json:"asset_image"`
KeyImages *pseudohsm.KeyImage `json:"key_images"`
}
if err := a.wallet.Hsm.Restore(image.KeyImages); err != nil {
return NewErrorResponse(errors.Wrap(err, "restore key images"))
}
- if err := a.wallet.AssetReg.Restore(image.AssetImage); err != nil {
- return NewErrorResponse(errors.Wrap(err, "restore asset image"))
- }
if err := a.wallet.AccountMgr.Restore(image.AccountImage); err != nil {
return NewErrorResponse(errors.Wrap(err, "restore account image"))
}
if err != nil {
return NewErrorResponse(errors.Wrap(err, "backup key images"))
}
- assetImage, err := a.wallet.AssetReg.Backup()
- if err != nil {
- return NewErrorResponse(errors.Wrap(err, "backup asset image"))
- }
accountImage, err := a.wallet.AccountMgr.Backup()
if err != nil {
return NewErrorResponse(errors.Wrap(err, "backup account image"))
image := &WalletImage{
KeyImages: keyImages,
- AssetImage: assetImage,
AccountImage: accountImage,
}
return NewSuccessResponse(image)