Documentation ¶
Index ¶
- Constants
- type BlockNotifier
- type CertificateBuildParams
- func (c *CertificateBuildParams) EstimatedSize() uint
- func (c *CertificateBuildParams) IsEmpty() bool
- func (c *CertificateBuildParams) MaxDepositCount() uint32
- func (c *CertificateBuildParams) NumberOfBlocks() int
- func (c *CertificateBuildParams) NumberOfBridges() int
- func (c *CertificateBuildParams) NumberOfClaims() int
- func (c *CertificateBuildParams) Range(fromBlock, toBlock uint64) (*CertificateBuildParams, error)
- func (c *CertificateBuildParams) String() string
- type CertificateInfo
- type CertificateMetadata
- type EpochEvent
- type EpochNotifier
- type EthClient
- type EventNewBlock
- type GenericSubscriber
- type L1InfoTreeSyncer
- type L2BridgeSyncer
- type Logger
Constants ¶
const ( EstimatedSizeBridgeExit = 230 EstimatedSizeClaim = 8000 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BlockNotifier ¶
type BlockNotifier interface { // NotifyEpochStarted notifies the epoch has started. Subscribe(id string) <-chan EventNewBlock String() string }
BlockNotifier is the interface that wraps the basic methods to notify a new block.
type CertificateBuildParams ¶ added in v0.5.0
type CertificateBuildParams struct { FromBlock uint64 ToBlock uint64 Bridges []bridgesync.Bridge Claims []bridgesync.Claim CreatedAt uint32 }
CertificateBuildParams is a struct that holds the parameters to build a certificate
func (*CertificateBuildParams) EstimatedSize ¶ added in v0.5.0
func (c *CertificateBuildParams) EstimatedSize() uint
EstimatedSize returns the estimated size of the certificate
func (*CertificateBuildParams) IsEmpty ¶ added in v0.5.0
func (c *CertificateBuildParams) IsEmpty() bool
IsEmpty returns true if the certificate is empty
func (*CertificateBuildParams) MaxDepositCount ¶ added in v0.5.0
func (c *CertificateBuildParams) MaxDepositCount() uint32
MaxDepoitCount returns the maximum deposit count in the certificate
func (*CertificateBuildParams) NumberOfBlocks ¶ added in v0.5.0
func (c *CertificateBuildParams) NumberOfBlocks() int
NumberOfBlocks returns the number of blocks in the certificate
func (*CertificateBuildParams) NumberOfBridges ¶ added in v0.5.0
func (c *CertificateBuildParams) NumberOfBridges() int
NumberOfBridges returns the number of bridges in the certificate
func (*CertificateBuildParams) NumberOfClaims ¶ added in v0.5.0
func (c *CertificateBuildParams) NumberOfClaims() int
NumberOfClaims returns the number of claims in the certificate
func (*CertificateBuildParams) Range ¶ added in v0.5.0
func (c *CertificateBuildParams) Range(fromBlock, toBlock uint64) (*CertificateBuildParams, error)
Range create a new CertificateBuildParams with the given range
func (*CertificateBuildParams) String ¶ added in v0.5.0
func (c *CertificateBuildParams) String() string
type CertificateInfo ¶
type CertificateInfo struct { Height uint64 `meddler:"height"` RetryCount int `meddler:"retry_count"` CertificateID common.Hash `meddler:"certificate_id,hash"` // PreviousLocalExitRoot if it's nil means no reported PreviousLocalExitRoot *common.Hash `meddler:"previous_local_exit_root,hash"` NewLocalExitRoot common.Hash `meddler:"new_local_exit_root,hash"` FromBlock uint64 `meddler:"from_block"` ToBlock uint64 `meddler:"to_block"` Status agglayer.CertificateStatus `meddler:"status"` CreatedAt uint32 `meddler:"created_at"` UpdatedAt uint32 `meddler:"updated_at"` SignedCertificate string `meddler:"signed_certificate"` }
func (*CertificateInfo) ElapsedTimeSinceCreation ¶ added in v0.5.0
func (c *CertificateInfo) ElapsedTimeSinceCreation() time.Duration
ElapsedTimeSinceCreation returns the time elapsed since the certificate was created
func (*CertificateInfo) ID ¶ added in v0.5.0
func (c *CertificateInfo) ID() string
ID returns a string with the unique identifier of the cerificate (height+certificateID)
func (*CertificateInfo) IsClosed ¶ added in v0.5.0
func (c *CertificateInfo) IsClosed() bool
IsClosed returns true if the certificate is closed (settled or inError)
func (*CertificateInfo) String ¶
func (c *CertificateInfo) String() string
type CertificateMetadata ¶ added in v0.5.0
type CertificateMetadata struct { // ToBlock contains the pre v1 value stored in the metadata certificate field // is not stored in the hash post v1 ToBlock uint64 // FromBlock is the block number from which the certificate contains data FromBlock uint64 // Offset is the number of blocks from the FromBlock that the certificate contains Offset uint32 // CreatedAt is the timestamp when the certificate was created CreatedAt uint32 // Version is the version of the metadata Version uint8 }
func NewCertificateMetadata ¶ added in v0.5.0
func NewCertificateMetadata(fromBlock uint64, offset uint32, createdAt uint32) *CertificateMetadata
NewCertificateMetadataFromHash returns a new CertificateMetadata from the given hash
func NewCertificateMetadataFromHash ¶ added in v0.5.0
func NewCertificateMetadataFromHash(hash common.Hash) *CertificateMetadata
NewCertificateMetadataFromHash returns a new CertificateMetadata from the given hash
func (*CertificateMetadata) ToHash ¶ added in v0.5.0
func (c *CertificateMetadata) ToHash() common.Hash
ToHash returns the hash of the metadata
type EpochEvent ¶
type EpochEvent struct { Epoch uint64 // ExtraInfo if a detailed information about the epoch that depends on implementation ExtraInfo fmt.Stringer }
EpochEvent is the event that notifies the neear end epoch
func (EpochEvent) String ¶
func (e EpochEvent) String() string
type EpochNotifier ¶
type EpochNotifier interface { // NotifyEpochStarted notifies the epoch is close to end. Subscribe(id string) <-chan EpochEvent // Start starts the notifier synchronously Start(ctx context.Context) String() string }
type EthClient ¶
type EthClient interface { BlockNumber(ctx context.Context) (uint64, error) HeaderByNumber(ctx context.Context, number *big.Int) (*types.Header, error) }
EthClient is an interface defining functions that an EthClient should implement
type EventNewBlock ¶
type EventNewBlock struct { BlockNumber uint64 BlockFinalityType etherman.BlockNumberFinality BlockRate time.Duration }
type GenericSubscriber ¶
type L1InfoTreeSyncer ¶
type L1InfoTreeSyncer interface { GetInfoByGlobalExitRoot(globalExitRoot common.Hash) (*l1infotreesync.L1InfoTreeLeaf, error) GetL1InfoTreeMerkleProofFromIndexToRoot( ctx context.Context, index uint32, root common.Hash, ) (treeTypes.Proof, error) GetL1InfoTreeRootByIndex(ctx context.Context, index uint32) (treeTypes.Root, error) }
L1InfoTreeSyncer is an interface defining functions that an L1InfoTreeSyncer should implement
type L2BridgeSyncer ¶
type L2BridgeSyncer interface { GetBlockByLER(ctx context.Context, ler common.Hash) (uint64, error) GetExitRootByIndex(ctx context.Context, index uint32) (treeTypes.Root, error) GetBridgesPublished(ctx context.Context, fromBlock, toBlock uint64) ([]bridgesync.Bridge, error) GetClaims(ctx context.Context, fromBlock, toBlock uint64) ([]bridgesync.Claim, error) OriginNetwork() uint32 BlockFinality() etherman.BlockNumberFinality GetLastProcessedBlock(ctx context.Context) (uint64, error) }
L2BridgeSyncer is an interface defining functions that an L2BridgeSyncer should implement
type Logger ¶
type Logger interface { Fatalf(format string, args ...interface{}) Info(args ...interface{}) Infof(format string, args ...interface{}) Error(args ...interface{}) Errorf(format string, args ...interface{}) Warn(args ...interface{}) Warnf(format string, args ...interface{}) Debug(args ...interface{}) Debugf(format string, args ...interface{}) }
Logger is an interface that defines the methods to log messages