indexer

package
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Oct 11, 2023 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CursorLength = 76
)

Variables

View Source
var (
	ErrNotFound = errors.New("output not found for given filter")
)
View Source
var (
	NullOutputID = iotago.OutputID{}
)

Functions

func AliasCreatedAfter

func AliasCreatedAfter(time time.Time) options.Option[AliasFilterOptions]

func AliasCreatedBefore

func AliasCreatedBefore(time time.Time) options.Option[AliasFilterOptions]

func AliasCursor

func AliasCursor(cursor string) options.Option[AliasFilterOptions]

func AliasGovernor

func AliasGovernor(address iotago.Address) options.Option[AliasFilterOptions]

func AliasHasNativeTokens

func AliasHasNativeTokens(value bool) options.Option[AliasFilterOptions]

func AliasIssuer

func AliasIssuer(address iotago.Address) options.Option[AliasFilterOptions]

func AliasMaxNativeTokenCount

func AliasMaxNativeTokenCount(value uint32) options.Option[AliasFilterOptions]

func AliasMinNativeTokenCount

func AliasMinNativeTokenCount(value uint32) options.Option[AliasFilterOptions]

func AliasPageSize

func AliasPageSize(pageSize uint32) options.Option[AliasFilterOptions]

func AliasSender

func AliasSender(address iotago.Address) options.Option[AliasFilterOptions]

func AliasStateController

func AliasStateController(address iotago.Address) options.Option[AliasFilterOptions]

func AliasUnlockableByAddress added in v1.0.0

func AliasUnlockableByAddress(address iotago.Address) options.Option[AliasFilterOptions]

func BasicOutputCreatedAfter

func BasicOutputCreatedAfter(time time.Time) options.Option[BasicOutputFilterOptions]

func BasicOutputCreatedBefore

func BasicOutputCreatedBefore(time time.Time) options.Option[BasicOutputFilterOptions]

func BasicOutputCursor

func BasicOutputCursor(cursor string) options.Option[BasicOutputFilterOptions]

func BasicOutputExpirationReturnAddress

func BasicOutputExpirationReturnAddress(address iotago.Address) options.Option[BasicOutputFilterOptions]

func BasicOutputExpiresAfter

func BasicOutputExpiresAfter(time time.Time) options.Option[BasicOutputFilterOptions]

func BasicOutputExpiresBefore

func BasicOutputExpiresBefore(time time.Time) options.Option[BasicOutputFilterOptions]

func BasicOutputHasExpirationCondition

func BasicOutputHasExpirationCondition(value bool) options.Option[BasicOutputFilterOptions]

func BasicOutputHasNativeTokens

func BasicOutputHasNativeTokens(value bool) options.Option[BasicOutputFilterOptions]

func BasicOutputHasStorageDepositReturnCondition

func BasicOutputHasStorageDepositReturnCondition(value bool) options.Option[BasicOutputFilterOptions]

func BasicOutputHasTimelockCondition

func BasicOutputHasTimelockCondition(value bool) options.Option[BasicOutputFilterOptions]

func BasicOutputMaxNativeTokenCount

func BasicOutputMaxNativeTokenCount(value uint32) options.Option[BasicOutputFilterOptions]

func BasicOutputMinNativeTokenCount

func BasicOutputMinNativeTokenCount(value uint32) options.Option[BasicOutputFilterOptions]

func BasicOutputPageSize

func BasicOutputPageSize(pageSize uint32) options.Option[BasicOutputFilterOptions]

func BasicOutputSender

func BasicOutputSender(address iotago.Address) options.Option[BasicOutputFilterOptions]

func BasicOutputStorageDepositReturnAddress

func BasicOutputStorageDepositReturnAddress(address iotago.Address) options.Option[BasicOutputFilterOptions]

func BasicOutputTag

func BasicOutputTag(tag []byte) options.Option[BasicOutputFilterOptions]

func BasicOutputTimelockedAfter

func BasicOutputTimelockedAfter(time time.Time) options.Option[BasicOutputFilterOptions]

func BasicOutputTimelockedBefore

func BasicOutputTimelockedBefore(time time.Time) options.Option[BasicOutputFilterOptions]

func BasicOutputUnlockAddress added in v1.0.0

func BasicOutputUnlockAddress(address iotago.Address) options.Option[BasicOutputFilterOptions]

func BasicOutputUnlockableByAddress

func BasicOutputUnlockableByAddress(address iotago.Address) options.Option[BasicOutputFilterOptions]

func CombinedCreatedAfter added in v1.0.0

func CombinedCreatedAfter(time time.Time) options.Option[CombinedFilterOptions]

func CombinedCreatedBefore added in v1.0.0

func CombinedCreatedBefore(time time.Time) options.Option[CombinedFilterOptions]

func CombinedCursor added in v1.0.0

func CombinedCursor(cursor string) options.Option[CombinedFilterOptions]

func CombinedHasNativeTokens added in v1.0.0

func CombinedHasNativeTokens(value bool) options.Option[CombinedFilterOptions]

func CombinedMaxNativeTokenCount added in v1.0.0

func CombinedMaxNativeTokenCount(value uint32) options.Option[CombinedFilterOptions]

func CombinedMinNativeTokenCount added in v1.0.0

func CombinedMinNativeTokenCount(value uint32) options.Option[CombinedFilterOptions]

func CombinedPageSize added in v1.0.0

func CombinedPageSize(pageSize uint32) options.Option[CombinedFilterOptions]

func CombinedUnlockableByAddress added in v1.0.0

func CombinedUnlockableByAddress(address iotago.Address) options.Option[CombinedFilterOptions]

func FoundryCreatedAfter

func FoundryCreatedAfter(time time.Time) options.Option[FoundryFilterOptions]

func FoundryCreatedBefore

func FoundryCreatedBefore(time time.Time) options.Option[FoundryFilterOptions]

func FoundryCursor

func FoundryCursor(cursor string) options.Option[FoundryFilterOptions]

func FoundryHasNativeTokens

func FoundryHasNativeTokens(value bool) options.Option[FoundryFilterOptions]

func FoundryMaxNativeTokenCount

func FoundryMaxNativeTokenCount(value uint32) options.Option[FoundryFilterOptions]

func FoundryMinNativeTokenCount

func FoundryMinNativeTokenCount(value uint32) options.Option[FoundryFilterOptions]

func FoundryPageSize

func FoundryPageSize(pageSize uint32) options.Option[FoundryFilterOptions]

func FoundryWithAliasAddress

func FoundryWithAliasAddress(address *iotago.AliasAddress) options.Option[FoundryFilterOptions]

func NFTCreatedAfter

func NFTCreatedAfter(time time.Time) options.Option[NFTFilterOptions]

func NFTCreatedBefore

func NFTCreatedBefore(time time.Time) options.Option[NFTFilterOptions]

func NFTCursor

func NFTCursor(cursor string) options.Option[NFTFilterOptions]

func NFTExpirationReturnAddress

func NFTExpirationReturnAddress(address iotago.Address) options.Option[NFTFilterOptions]

func NFTExpiresAfter

func NFTExpiresAfter(time time.Time) options.Option[NFTFilterOptions]

func NFTExpiresBefore

func NFTExpiresBefore(time time.Time) options.Option[NFTFilterOptions]

func NFTHasExpirationCondition

func NFTHasExpirationCondition(value bool) options.Option[NFTFilterOptions]

func NFTHasNativeTokens

func NFTHasNativeTokens(value bool) options.Option[NFTFilterOptions]

func NFTHasStorageDepositReturnCondition

func NFTHasStorageDepositReturnCondition(value bool) options.Option[NFTFilterOptions]

func NFTHasTimelockCondition

func NFTHasTimelockCondition(value bool) options.Option[NFTFilterOptions]

func NFTIssuer

func NFTIssuer(address iotago.Address) options.Option[NFTFilterOptions]

func NFTMaxNativeTokenCount

func NFTMaxNativeTokenCount(value uint32) options.Option[NFTFilterOptions]

func NFTMinNativeTokenCount

func NFTMinNativeTokenCount(value uint32) options.Option[NFTFilterOptions]

func NFTPageSize

func NFTPageSize(pageSize uint32) options.Option[NFTFilterOptions]

func NFTSender

func NFTSender(address iotago.Address) options.Option[NFTFilterOptions]

func NFTStorageDepositReturnAddress

func NFTStorageDepositReturnAddress(address iotago.Address) options.Option[NFTFilterOptions]

func NFTTag

func NFTTag(tag []byte) options.Option[NFTFilterOptions]

func NFTTimelockedAfter

func NFTTimelockedAfter(time time.Time) options.Option[NFTFilterOptions]

func NFTTimelockedBefore

func NFTTimelockedBefore(time time.Time) options.Option[NFTFilterOptions]

func NFTUnlockAddress added in v1.0.0

func NFTUnlockAddress(address iotago.Address) options.Option[NFTFilterOptions]

func NFTUnlockableByAddress

func NFTUnlockableByAddress(address iotago.Address) options.Option[NFTFilterOptions]

Types

type AliasFilterOptions

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

type BasicOutputFilterOptions

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

type CombinedFilterOptions added in v1.0.0

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

func (*CombinedFilterOptions) AliasFilterOptions added in v1.0.0

func (o *CombinedFilterOptions) AliasFilterOptions() *AliasFilterOptions

func (*CombinedFilterOptions) BasicFilterOptions added in v1.0.0

func (o *CombinedFilterOptions) BasicFilterOptions() *BasicOutputFilterOptions

func (*CombinedFilterOptions) FoundryFilterOptions added in v1.0.0

func (o *CombinedFilterOptions) FoundryFilterOptions() *FoundryFilterOptions

func (*CombinedFilterOptions) NFTFilterOptions added in v1.0.0

func (o *CombinedFilterOptions) NFTFilterOptions() *NFTFilterOptions

type FoundryFilterOptions

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

type ImportTransaction

type ImportTransaction struct {
	*logger.WrappedLogger
	// contains filtered or unexported fields
}

func (*ImportTransaction) AddOutput

func (i *ImportTransaction) AddOutput(outputID iotago.OutputID, output iotago.Output, timestampBooked uint32) error

func (*ImportTransaction) Finalize

func (i *ImportTransaction) Finalize(ledgerIndex uint32, protoParams *iotago.ProtocolParameters, databaseVersion uint32) error

type Indexer

type Indexer struct {
	*logger.WrappedLogger
	// contains filtered or unexported fields
}

func NewIndexer

func NewIndexer(dbParams database.Params, log *logger.Logger) (*Indexer, error)

func (*Indexer) AliasOutput

func (i *Indexer) AliasOutput(aliasID *iotago.AliasID) *IndexerResult

func (*Indexer) AliasOutputsWithFilters

func (i *Indexer) AliasOutputsWithFilters(filters ...options.Option[AliasFilterOptions]) *IndexerResult

func (*Indexer) AutoMigrate added in v1.0.0

func (i *Indexer) AutoMigrate() error

func (*Indexer) BasicOutputsWithFilters

func (i *Indexer) BasicOutputsWithFilters(filters ...options.Option[BasicOutputFilterOptions]) *IndexerResult

func (*Indexer) Clear

func (i *Indexer) Clear() error

func (*Indexer) CloseDatabase

func (i *Indexer) CloseDatabase() error

func (*Indexer) CombinedOutputsWithFilters added in v1.0.0

func (i *Indexer) CombinedOutputsWithFilters(filters ...options.Option[CombinedFilterOptions]) *IndexerResult

func (*Indexer) CreateTables added in v1.0.0

func (i *Indexer) CreateTables() error

func (*Indexer) DropIndexes added in v1.0.0

func (i *Indexer) DropIndexes() error

func (*Indexer) FoundryOutput

func (i *Indexer) FoundryOutput(foundryID *iotago.FoundryID) *IndexerResult

func (*Indexer) FoundryOutputsWithFilters

func (i *Indexer) FoundryOutputsWithFilters(filters ...options.Option[FoundryFilterOptions]) *IndexerResult

func (*Indexer) ImportTransaction

func (i *Indexer) ImportTransaction(ctx context.Context) *ImportTransaction

func (*Indexer) IsInitialized added in v1.0.0

func (i *Indexer) IsInitialized() bool

func (*Indexer) NFTOutput

func (i *Indexer) NFTOutput(nftID *iotago.NFTID) *IndexerResult

func (*Indexer) NFTOutputsWithFilters

func (i *Indexer) NFTOutputsWithFilters(filters ...options.Option[NFTFilterOptions]) *IndexerResult

func (*Indexer) Status added in v0.9.1

func (i *Indexer) Status() (*Status, error)

func (*Indexer) UpdatedLedger

func (i *Indexer) UpdatedLedger(update *nodebridge.LedgerUpdate) error

type IndexerResult

type IndexerResult struct {
	OutputIDs   iotago.OutputIDs
	LedgerIndex uint32
	PageSize    uint32
	Cursor      *string
	Error       error
}

type NFTFilterOptions

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

type Status added in v0.9.1

type Status struct {
	ID              uint `gorm:"primaryKey;notnull"`
	LedgerIndex     uint32
	ProtocolVersion byte
	NetworkName     string
	DatabaseVersion uint32
}

Jump to

Keyboard shortcuts

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