engine

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Aug 30, 2023 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddressingMap

type AddressingMap interface {
	GetSUUIDsByPair(address common.Address, pUUID core.PUUID) ([]core.SUUID, error)
	Insert(addr common.Address, pUUID core.PUUID, sUUID core.SUUID) error
}

AddressingMap ... Interface for mapping addresses to session UUIDs

func NewAddressingMap

func NewAddressingMap() AddressingMap

NewAddressingMap ... Initializer

type Manager

type Manager interface {
	GetInputType(ht core.HeuristicType) (core.RegisterType, error)
	Transit() chan core.HeuristicInput

	DeleteHeuristicSession(core.SUUID) (core.SUUID, error)
	DeployHeuristicSession(cfg *heuristic.DeployConfig) (core.SUUID, error)

	core.Subsystem
}

Manager ... Engine manager interface

func NewManager

func NewManager(ctx context.Context, engine RiskEngine, addr AddressingMap,
	store SessionStore, it registry.HeuristicTable, alertOutgress chan core.Alert) Manager

NewManager ... Initializer

type RiskEngine

type RiskEngine interface {
	Type() Type
	Execute(context.Context, core.TransitData,
		heuristic.Heuristic) (*core.Activation, bool)
}

RiskEngine ... Execution engine interface

func NewHardCodedEngine

func NewHardCodedEngine() RiskEngine

NewHardCodedEngine ... Initializer

type SessionStore

type SessionStore interface {
	AddSession(sUUID core.SUUID, pID core.PUUID, h heuristic.Heuristic) error
	GetInstanceByUUID(sUUID core.SUUID) (heuristic.Heuristic, error)
	GetInstancesByUUIDs(sUUIDs []core.SUUID) ([]heuristic.Heuristic, error)
	GetSUUIDsByPUUID(pUUID core.PUUID) ([]core.SUUID, error)
}

SessionStore ...

func NewSessionStore

func NewSessionStore() SessionStore

NewSessionStore ... Initializer

type Type

type Type int

Type ... Risk engine execution type

const (
	HardCoded Type = iota + 1
	// NOTE: Dynamic heuristic support is not implemented
	Dynamic
)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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