chainclient

package
v0.4.0-alpha.7 Latest Latest
Warning

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

Go to latest
Published: Feb 2, 2023 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	Layer1Client l1connection.Client
	WaspClient   *client.WaspClient
	ChainID      isc.ChainID
	KeyPair      *cryptolib.KeyPair
	// contains filtered or unexported fields
}

Client allows to interact with a specific chain in the node, for example to send on-ledger or off-ledger requests

func New

func New(
	layer1Client l1connection.Client,
	waspClient *client.WaspClient,
	chainID isc.ChainID,
	keyPair *cryptolib.KeyPair,
) *Client

New creates a new chainclient.Client

func (*Client) CallView

func (c *Client) CallView(hContract isc.Hname, functionName string, args dict.Dict) (dict.Dict, error)

CallView sends a request to call a view function of a given contract, and returns the result of the call

func (*Client) CheckRequestResult added in v0.2.0

func (c *Client) CheckRequestResult(reqID isc.RequestID) error

CheckRequestResult fetches the receipt for the given request ID, and returns an error indicating whether the request was processed successfully.

func (*Client) DepositFunds added in v0.2.0

func (c *Client) DepositFunds(n uint64) (*iotago.Transaction, error)

func (*Client) GetChainRecord

func (c *Client) GetChainRecord() (*registry.ChainRecord, error)

GetChainRecord fetches the chain's Record

func (*Client) Post1Request added in v0.2.0

func (c *Client) Post1Request(
	contractHname isc.Hname,
	entryPoint isc.Hname,
	params ...PostRequestParams,
) (*iotago.Transaction, error)

Post1Request sends an on-ledger transaction with one request on it to the chain

func (*Client) PostNRequests added in v0.3.0

func (c *Client) PostNRequests(
	contractHname isc.Hname,
	entryPoint isc.Hname,
	requestsCount int,
	params ...PostRequestParams,
) ([]*iotago.Transaction, error)

PostNRequest sends n consecutive on-ledger transactions with one request on each, to the chain

func (*Client) PostOffLedgerRequest added in v0.2.0

func (c *Client) PostOffLedgerRequest(
	contractHname isc.Hname,
	entrypoint isc.Hname,
	params ...PostRequestParams,
) (isc.OffLedgerRequest, error)

PostOffLedgerRequest sends an off-ledger tx via the wasp node web api

func (*Client) RequestIDByEVMTransactionHash added in v0.3.0

func (c *Client) RequestIDByEVMTransactionHash(txHash common.Hash) (isc.RequestID, error)

func (*Client) StateGet added in v0.2.0

func (c *Client) StateGet(key string) ([]byte, error)

StateGet fetches the raw value associated with the given key in the chain state

func (*Client) UploadBlob

func (c *Client) UploadBlob(fields dict.Dict) (hashing.HashValue, isc.OffLedgerRequest, *isc.Receipt, error)

UploadBlob sends an off-ledger request to call 'store' in the blob contract.

type PostRequestParams

type PostRequestParams struct {
	Transfer                 *isc.Assets
	Args                     dict.Dict
	Nonce                    uint64
	NFT                      *isc.NFT
	Allowance                *isc.Assets
	GasBudget                *uint64
	AutoAdjustStorageDeposit bool
}

func NewPostRequestParams added in v0.2.0

func NewPostRequestParams(p ...interface{}) *PostRequestParams

NewPostRequestParams simplifies encoding of request parameters

func (*PostRequestParams) WithBaseTokens added in v0.3.0

func (par *PostRequestParams) WithBaseTokens(i uint64) *PostRequestParams

func (*PostRequestParams) WithGasBudget added in v0.3.0

func (par *PostRequestParams) WithGasBudget(budget uint64) *PostRequestParams

func (*PostRequestParams) WithTransfer added in v0.2.0

func (par *PostRequestParams) WithTransfer(transfer *isc.Assets) *PostRequestParams

Jump to

Keyboard shortcuts

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