asset

package
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 3, 2018 License: AGPL-3.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrDuplicateAlias = errors.New("duplicate asset alias")
	ErrDuplicateAsset = errors.New("duplicate asset id")
	ErrSerializing    = errors.New("serializing asset definition")
	ErrMarshalAsset   = errors.New("failed marshal asset")
	ErrFindAsset      = errors.New("fail to find asset")
)

pre-define errors for supporting bytom errorFormatter

Functions

func Annotated

func Annotated(a *Asset) (*query.AnnotatedAsset, error)

Annotated annotate the asset

func Key added in v0.3.0

func Key(name string) []byte

Key asset store prefix

Types

type Asset

type Asset struct {
	AssetID          bc.AssetID
	Alias            *string
	VMVersion        uint64
	IssuanceProgram  []byte
	InitialBlockHash bc.Hash
	*signers.Signer
	Tags              map[string]interface{}
	RawDefinitionByte []byte
	DefinitionMap     map[string]interface{}
}

Asset describe asset on bytom chain

func (*Asset) RawDefinition

func (asset *Asset) RawDefinition() []byte

RawDefinition return asset in the raw format

type Registry

type Registry struct {
	// contains filtered or unexported fields
}

Registry tracks and stores all known assets on a blockchain.

func NewRegistry

func NewRegistry(db dbm.DB, chain *protocol.Chain) *Registry

NewRegistry create new registry

func (*Registry) DecodeIssueAction

func (reg *Registry) DecodeIssueAction(data []byte) (txbuilder.Action, error)

DecodeIssueAction unmarshal JSON-encoded data of asset issue action

func (*Registry) Define

func (reg *Registry) Define(ctx context.Context, xpubs []chainkd.XPub, quorum int, definition map[string]interface{}, alias string, tags map[string]interface{}, clientToken string) (*Asset, error)

Define defines a new Asset.

func (*Registry) FindByAlias

func (reg *Registry) FindByAlias(ctx context.Context, alias string) (*Asset, error)

FindByAlias retrieves an Asset record along with its signer, given an asset alias.

func (*Registry) GetAliasByID added in v0.3.0

func (reg *Registry) GetAliasByID(id string) string

func (*Registry) ListAssets added in v0.3.0

func (reg *Registry) ListAssets(id string) ([]annotatedAsset, error)

ListAssets returns the accounts in the db

func (*Registry) NewIssueAction

func (reg *Registry) NewIssueAction(assetAmount bc.AssetAmount, referenceData chainjson.Map) txbuilder.Action

NewIssueAction create a new asset issue action

func (*Registry) UpdateTags

func (reg *Registry) UpdateTags(ctx context.Context, assetInfo string, tags map[string]interface{}) error

UpdateTags modifies the tags of the specified asset. The asset may be identified either by id or alias, but not both.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL