gateway

package
v0.36.2 Latest Latest
Warning

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

Go to latest
Published: Jun 16, 2022 License: Apache-2.0 Imports: 19 Imported by: 6

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func UnwrapStatusError added in v0.34.0

func UnwrapStatusError(err error) error

func WithContext added in v0.34.0

func WithContext(ctx context.Context) func(g *EmulatorGateway)

func WithLogger added in v0.34.0

func WithLogger(logger *logrus.Logger) func(g *EmulatorGateway)

Types

type EmulatorGateway

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

func NewEmulatorGateway

func NewEmulatorGateway(serviceAccount *flowkit.Account) *EmulatorGateway

func NewEmulatorGatewayWithOpts added in v0.34.0

func NewEmulatorGatewayWithOpts(serviceAccount *flowkit.Account, opts ...func(*EmulatorGateway)) *EmulatorGateway

func (*EmulatorGateway) ExecuteScript

func (g *EmulatorGateway) ExecuteScript(script []byte, arguments []cadence.Value) (cadence.Value, error)

func (*EmulatorGateway) GetAccount

func (g *EmulatorGateway) GetAccount(address flow.Address) (*flow.Account, error)

func (*EmulatorGateway) GetBlockByHeight

func (g *EmulatorGateway) GetBlockByHeight(height uint64) (*flow.Block, error)

func (*EmulatorGateway) GetBlockByID

func (g *EmulatorGateway) GetBlockByID(id flow.Identifier) (*flow.Block, error)

func (*EmulatorGateway) GetCollection

func (g *EmulatorGateway) GetCollection(id flow.Identifier) (*flow.Collection, error)

func (*EmulatorGateway) GetEvents

func (g *EmulatorGateway) GetEvents(
	eventType string,
	startHeight uint64,
	endHeight uint64,
) ([]flow.BlockEvents, error)

func (*EmulatorGateway) GetLatestBlock

func (g *EmulatorGateway) GetLatestBlock() (*flow.Block, error)

func (*EmulatorGateway) GetLatestProtocolStateSnapshot added in v0.30.3

func (g *EmulatorGateway) GetLatestProtocolStateSnapshot() ([]byte, error)

func (*EmulatorGateway) GetTransaction

func (g *EmulatorGateway) GetTransaction(id flow.Identifier) (*flow.Transaction, error)

func (*EmulatorGateway) GetTransactionResult

func (g *EmulatorGateway) GetTransactionResult(tx *flow.Transaction, waitSeal bool) (*flow.TransactionResult, error)

func (*EmulatorGateway) Ping

func (g *EmulatorGateway) Ping() error

func (*EmulatorGateway) SecureConnection added in v0.30.3

func (g *EmulatorGateway) SecureConnection() bool

SecureConnection placeholder func to complete gateway interface implementation

func (*EmulatorGateway) SendSignedTransaction

func (g *EmulatorGateway) SendSignedTransaction(tx *flowkit.Transaction) (*flow.Transaction, error)

func (*EmulatorGateway) SetContext added in v0.34.0

func (g *EmulatorGateway) SetContext(ctx context.Context)

type Gateway

type Gateway interface {
	GetAccount(flow.Address) (*flow.Account, error)
	SendSignedTransaction(*flowkit.Transaction) (*flow.Transaction, error)
	GetTransactionResult(*flow.Transaction, bool) (*flow.TransactionResult, error)
	GetTransaction(flow.Identifier) (*flow.Transaction, error)
	ExecuteScript([]byte, []cadence.Value) (cadence.Value, error)
	GetLatestBlock() (*flow.Block, error)
	GetBlockByHeight(uint64) (*flow.Block, error)
	GetBlockByID(flow.Identifier) (*flow.Block, error)
	GetEvents(string, uint64, uint64) ([]flow.BlockEvents, error)
	GetCollection(flow.Identifier) (*flow.Collection, error)
	GetLatestProtocolStateSnapshot() ([]byte, error)
	Ping() error
	SecureConnection() bool
}

Gateway describes blockchain access interface

type GrpcGateway

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

GrpcGateway is a gateway implementation that uses the Flow Access gRPC API.

func NewGrpcGateway

func NewGrpcGateway(host string) (*GrpcGateway, error)

NewGrpcGateway returns a new gRPC gateway.

func NewSecureGrpcGateway added in v0.30.3

func NewSecureGrpcGateway(host, hostNetworkKey string) (*GrpcGateway, error)

NewSecureGrpcGateway returns a new gRPC gateway with a secure client connection.

func (*GrpcGateway) ExecuteScript

func (g *GrpcGateway) ExecuteScript(script []byte, arguments []cadence.Value) (cadence.Value, error)

ExecuteScript execute a scripts on Flow through the Access API.

func (*GrpcGateway) GetAccount

func (g *GrpcGateway) GetAccount(address flow.Address) (*flow.Account, error)

GetAccount gets an account by address from the Flow Access API.

func (*GrpcGateway) GetBlockByHeight

func (g *GrpcGateway) GetBlockByHeight(height uint64) (*flow.Block, error)

GetBlockByHeight get block by height from the Flow Access API.

func (*GrpcGateway) GetBlockByID

func (g *GrpcGateway) GetBlockByID(id flow.Identifier) (*flow.Block, error)

GetBlockByID get block by ID from the Flow Access API.

func (*GrpcGateway) GetCollection

func (g *GrpcGateway) GetCollection(id flow.Identifier) (*flow.Collection, error)

GetCollection gets a collection by ID from the Flow Access API.

func (*GrpcGateway) GetEvents

func (g *GrpcGateway) GetEvents(
	eventType string,
	startHeight uint64,
	endHeight uint64,
) ([]flow.BlockEvents, error)

GetEvents gets events by name and block range from the Flow Access API.

func (*GrpcGateway) GetLatestBlock

func (g *GrpcGateway) GetLatestBlock() (*flow.Block, error)

GetLatestBlock gets the latest block on Flow through the Access API.

func (*GrpcGateway) GetLatestProtocolStateSnapshot added in v0.30.3

func (g *GrpcGateway) GetLatestProtocolStateSnapshot() ([]byte, error)

GetLatestProtocolStateSnapshot gets the latest finalized protocol state snapshot

func (*GrpcGateway) GetTransaction

func (g *GrpcGateway) GetTransaction(id flow.Identifier) (*flow.Transaction, error)

GetTransaction gets a transaction by ID from the Flow Access API.

func (*GrpcGateway) GetTransactionResult

func (g *GrpcGateway) GetTransactionResult(tx *flow.Transaction, waitSeal bool) (*flow.TransactionResult, error)

GetTransactionResult gets a transaction result by ID from the Flow Access API.

func (*GrpcGateway) Ping

func (g *GrpcGateway) Ping() error

Ping is used to check if the access node is alive and healthy.

func (*GrpcGateway) SecureConnection added in v0.30.3

func (g *GrpcGateway) SecureConnection() bool

SecureConnection is used to log warning if a service should be using a secure client but is not

func (*GrpcGateway) SendSignedTransaction

func (g *GrpcGateway) SendSignedTransaction(transaction *flowkit.Transaction) (*flow.Transaction, error)

SendSignedTransaction sends a transaction to flow that is already prepared and signed.

Jump to

Keyboard shortcuts

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