dto

package
v0.7.0-alpha.4 Latest Latest
Warning

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

Go to latest
Published: Jul 4, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ChainInfo

type ChainInfo struct {
	IsActive     bool
	ChainID      isc.ChainID
	ChainOwnerID isc.AgentID
	GasFeePolicy *gas.FeePolicy
	GasLimits    *gas.Limits
	PublicURL    string

	Metadata PublicChainMetadata
}

func MapChainInfo

func MapChainInfo(info *isc.ChainInfo, isActive bool) *ChainInfo

type ChainMessageMetrics

type ChainMessageMetrics struct {
	InStateOutput      *MetricItem[*metrics.InStateOutput]
	InAliasOutput      *MetricItem[*iotago.AliasOutput]
	InOutput           *MetricItem[*metrics.InOutput]
	InOnLedgerRequest  *MetricItem[isc.OnLedgerRequest]
	InTxInclusionState *MetricItem[*metrics.TxInclusionStateMsg]

	OutPublishStateTransaction      *MetricItem[*metrics.StateTransaction]
	OutPublishGovernanceTransaction *MetricItem[*iotago.Transaction]
	OutPullLatestOutput             *MetricItem[interface{}]
	OutPullTxInclusionState         *MetricItem[iotago.TransactionID]
	OutPullOutputByID               *MetricItem[iotago.OutputID]
}

type ChainNodeInfo

type ChainNodeInfo struct {
	Address        iotago.Address
	AccessNodes    []*ChainNodeStatus
	CandidateNodes []*ChainNodeStatus
	CommitteeNodes []*ChainNodeStatus
}

type ChainNodeStatus

type ChainNodeStatus struct {
	AccessAPI    string
	ForAccess    bool
	ForCommittee bool
	Node         PeeringNodeStatus
}

type ContractsMap

type ContractsMap map[isc.Hname]*root.ContractRecord

type MetricItem

type MetricItem[T interface{}] struct {
	Messages    uint32
	Timestamp   time.Time
	LastMessage T
}

func MapMetricItem

func MapMetricItem[T interface{}](metrics metrics.IMessageMetric[T]) *MetricItem[T]

type NodeMessageMetrics

type NodeMessageMetrics struct {
	RegisteredChainIDs []isc.ChainID

	InMilestone        *MetricItem[*nodeclient.MilestoneInfo]
	InStateOutput      *MetricItem[*metrics.InStateOutput]
	InAliasOutput      *MetricItem[*iotago.AliasOutput]
	InOutput           *MetricItem[*metrics.InOutput]
	InOnLedgerRequest  *MetricItem[isc.OnLedgerRequest]
	InTxInclusionState *MetricItem[*metrics.TxInclusionStateMsg]

	OutPublishStateTransaction      *MetricItem[*metrics.StateTransaction]
	OutPublishGovernanceTransaction *MetricItem[*iotago.Transaction]
	OutPullLatestOutput             *MetricItem[interface{}]
	OutPullTxInclusionState         *MetricItem[iotago.TransactionID]
	OutPullOutputByID               *MetricItem[iotago.OutputID]
}

type PeeringNodeIdentity

type PeeringNodeIdentity struct {
	Name       string
	PublicKey  *cryptolib.PublicKey
	PeeringURL string
	IsTrusted  bool
}

type PeeringNodeStatus

type PeeringNodeStatus struct {
	Name       string
	IsAlive    bool
	PeeringURL string
	NumUsers   int
	PublicKey  *cryptolib.PublicKey
	IsTrusted  bool
}

type PublicChainMetadata

type PublicChainMetadata struct {
	EVMJsonRPCURL   string `json:"evmJsonRpcUrl" swagger:"desc(The EVM json rpc url),required"`
	EVMWebSocketURL string `json:"evmWebSocketUrl" swagger:"desc(The EVM websocket url)),required"`

	Name        string `json:"name" swagger:"desc(The name of the chain),required"`
	Description string `json:"description" swagger:"desc(The description of the chain.),required"`
	Website     string `json:"website" swagger:"desc(The official website of the chain.),required"`
}

Jump to

Keyboard shortcuts

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