db

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Mar 14, 2025 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateHyperTable

func CreateHyperTable(db *gorm.DB, tableName string, timeColumn string) error

func InitHyperTables

func InitHyperTables(db *gorm.DB) error

func NewPostgresClient

func NewPostgresClient(config *config.Config) (*gorm.DB, error)

func RunMigrations

func RunMigrations(db *gorm.DB) error

func SetupDatabase

func SetupDatabase(dsn string) (*gorm.DB, error)

func UpdateLastEventCheckPoint

func UpdateLastEventCheckPoint(db *gorm.DB, value *scalarnet.EventCheckPoint) error

For transactional update

Types

type ContractCallExecuteResult

type ContractCallExecuteResult struct {
	EventId string
	Status  chains.ContractCallStatus
}

type DatabaseAdapter

type DatabaseAdapter struct {
	PostgresClient *gorm.DB
}

func NewDatabaseAdapter

func NewDatabaseAdapter(config *config.Config) (*DatabaseAdapter, error)

func (*DatabaseAdapter) CreateBatchValue

func (db *DatabaseAdapter) CreateBatchValue(values any, batchSize int) error

func (*DatabaseAdapter) CreateContractCall

func (db *DatabaseAdapter) CreateContractCall(contractCall chains.ContractCall, lastCheckpoint *scalarnet.EventCheckPoint) error

func (*DatabaseAdapter) CreateContractCallWithToken

func (db *DatabaseAdapter) CreateContractCallWithToken(contractCallWithToken chains.ContractCallWithToken, lastCheckpoint *scalarnet.EventCheckPoint) error

func (*DatabaseAdapter) CreateOrUpdateContractCallApprovedWithMints

func (db *DatabaseAdapter) CreateOrUpdateContractCallApprovedWithMints(approvals []scalarnet.ContractCallApprovedWithMint) error

------------------------------------------------------------------------------------------------- Add methods to DBAdapter for ContractCallApprovedWithMint operations -------------------------------------------------------------------------------------------------

func (*DatabaseAdapter) CreateOrUpdateContractCallApproveds

func (db *DatabaseAdapter) CreateOrUpdateContractCallApproveds(approvals []scalarnet.ContractCallApproved) error

------------------------------------------------------------------------------------------------- Add methods to DBAdapter for ContractCallApproved operations -------------------------------------------------------------------------------------------------

func (*DatabaseAdapter) CreateOrUpdateMintCommand

func (d *DatabaseAdapter) CreateOrUpdateMintCommand(cmd *chains.MintCommand) error

------------------------------------------------------------------------------------------------- Add methods to DBAdapter for MintCommand operations -------------------------------------------------------------------------------------------------

func (*DatabaseAdapter) CreateOrUpdateMintCommands

func (d *DatabaseAdapter) CreateOrUpdateMintCommands(cmdModels []chains.MintCommand) error
func (d *DatabaseAdapter) UpdateMintCommandStatus(id string, status string, txHash string) error {
	return d.PostgresClient.Model(&models.MintCommand{}).
		Where("id = ?", id).
		Updates(map[string]interface{}{
			"status":  status,
			"tx_hash": txHash,
		}).Error
}

func (*DatabaseAdapter) FindContractCallByCommnadId

func (db *DatabaseAdapter) FindContractCallByCommnadId(commandId string) (*chains.ContractCall, error)

func (*DatabaseAdapter) FindContractCallByParams

func (db *DatabaseAdapter) FindContractCallByParams(sourceAddress string, destContractAddress string, payloadHash string) ([]chains.ContractCall, error)

Find Realaydata by ContractAddress, SourceAddress, PayloadHash

func (*DatabaseAdapter) FindContractCallPayloadByHash

func (db *DatabaseAdapter) FindContractCallPayloadByHash(payloadHash string) ([]byte, error)

func (*DatabaseAdapter) FindContractCallWithTokenPayloadByEventId

func (db *DatabaseAdapter) FindContractCallWithTokenPayloadByEventId(eventId string) (*chains.ContractCallWithToken, error)

func (*DatabaseAdapter) FindPendingBtcTokenSent

func (db *DatabaseAdapter) FindPendingBtcTokenSent(sourceChain string, height int) ([]*chains.TokenSent, error)

find relay datas by token sent attributes

func (*DatabaseAdapter) GetLastCheckPoint

func (db *DatabaseAdapter) GetLastCheckPoint(chainName string, fromBlock uint64) (*scalarnet.EventCheckPoint, error)

Get earliest event check point for all eventNames

func (*DatabaseAdapter) GetLastEventCheckPoint

func (db *DatabaseAdapter) GetLastEventCheckPoint(chainName, eventName string, fromBlock uint64) (*scalarnet.EventCheckPoint, error)

func (*DatabaseAdapter) GetMintCommand

func (d *DatabaseAdapter) GetMintCommand(id string) (*chains.MintCommand, error)

func (*DatabaseAdapter) SaveCommandExecuted

func (db *DatabaseAdapter) SaveCommandExecuted(cmdExecuted *chains.CommandExecuted, command *chainstypes.CommandResponse, commandId string) error

func (*DatabaseAdapter) SaveCommands

func (db *DatabaseAdapter) SaveCommands(commands []*scalarnet.Command) error

func (*DatabaseAdapter) SaveSingleValue

func (db *DatabaseAdapter) SaveSingleValue(value any) error

func (*DatabaseAdapter) SaveTokenDeployed

func (db *DatabaseAdapter) SaveTokenDeployed(tokenDeployed *chains.TokenDeployed) error

func (*DatabaseAdapter) SaveTokenSent

func (db *DatabaseAdapter) SaveTokenSent(tokenSent chains.TokenSent, lastCheckpoint *scalarnet.EventCheckPoint) error

func (*DatabaseAdapter) SaveTokenSentApproveds

func (db *DatabaseAdapter) SaveTokenSentApproveds(approvals []scalarnet.TokenSentApproved) error

------------------------------------------------------------------------------------------------- Add methods to DBAdapter for TokenSentApproved operations -------------------------------------------------------------------------------------------------

func (*DatabaseAdapter) SaveTokenSents

func (db *DatabaseAdapter) SaveTokenSents(tokenSents []*chains.TokenSent) error

func (*DatabaseAdapter) SaveTokenSentsAndRemoveDupplicates

func (db *DatabaseAdapter) SaveTokenSentsAndRemoveDupplicates(tokenSents []*chains.TokenSent) error

func (*DatabaseAdapter) SaveValuesWithCheckpoint

func (db *DatabaseAdapter) SaveValuesWithCheckpoint(values any, lastCheckpoint *scalarnet.EventCheckPoint) error

func (*DatabaseAdapter) UpdateBatchContractCallStatus

func (db *DatabaseAdapter) UpdateBatchContractCallStatus(data []ContractCallExecuteResult, batchSize int) error

TODO: Find any better way to update batch relay data status

func (*DatabaseAdapter) UpdateBroadcastedCommands

func (db *DatabaseAdapter) UpdateBroadcastedCommands(chainId string, batchedCommandId string, commandIds []string, txHash string) error

func (*DatabaseAdapter) UpdateBtcExecutedCommands

func (db *DatabaseAdapter) UpdateBtcExecutedCommands(chainId string, txHashes []string) error

func (*DatabaseAdapter) UpdateCallContractWithTokenExecuteHash

func (db *DatabaseAdapter) UpdateCallContractWithTokenExecuteHash(eventId string, status chains.ContractCallStatus, executeHash string) error

func (*DatabaseAdapter) UpdateContractCallApproved

func (db *DatabaseAdapter) UpdateContractCallApproved(messageID string, executeHash string) error

func (*DatabaseAdapter) UpdateContractCallWithMintsStatus

func (db *DatabaseAdapter) UpdateContractCallWithMintsStatus(ctx context.Context, cmdIds []string, status chains.ContractCallStatus) error

func (*DatabaseAdapter) UpdateEventStatusWithPacketSequence

func (db *DatabaseAdapter) UpdateEventStatusWithPacketSequence(id string, status chains.ContractCallStatus, sequence *int) error

func (*DatabaseAdapter) UpdateLastEventCheckPoint

func (db *DatabaseAdapter) UpdateLastEventCheckPoint(value *scalarnet.EventCheckPoint) error

func (*DatabaseAdapter) UpdateLastEventCheckPoints

func (db *DatabaseAdapter) UpdateLastEventCheckPoints(checkpoints map[string]scalarnet.EventCheckPoint) error

func (*DatabaseAdapter) UpdateTokenSentsStatus

func (db *DatabaseAdapter) UpdateTokenSentsStatus(ctx context.Context, cmdIds []string, status chains.TokenSentStatus) error

type QueryOptions

type QueryOptions struct {
	IncludeCallContract          *bool
	IncludeCallContractWithToken *bool
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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