arango

package
v1.3.5 Latest Latest
Warning

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

Go to latest
Published: Feb 27, 2024 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Logger *logrus.Logger

Functions

func InitializeArangoDbAdapter

func InitializeArangoDbAdapter(logger *logrus.Logger, config ArangoDbConfig)

Types

type ArangoDbConfig

type ArangoDbConfig struct {
	Server   string
	User     string
	Password string
	DbName   string
}
var Config ArangoDbConfig
type LSLink struct {
	ID                    string                   `json:"_id,omitempty"`
	Key                   string                   `json:"_key,omitempty"`
	RouterHash            string                   `json:"router_hash,omitempty"`
	RouterIP              string                   `json:"router_ip,omitempty"`
	DomainID              int64                    `json:"domain_id,omitempty"`
	PeerHash              string                   `json:"peer_hash,omitempty"`
	PeerIP                string                   `json:"peer_ip,omitempty"`
	PeerASN               int32                    `json:"peer_asn,omitempty"`
	Timestamp             string                   `json:"timestamp,omitempty"`
	IGPRouterID           string                   `json:"igp_router_id,omitempty"`
	Protocol              string                   `json:"protocol,omitempty"`
	AreaID                string                   `json:"area_id,omitempty"`
	Nexthop               string                   `json:"nexthop,omitempty"`
	MTID                  *MultiTopologyIdentifier `json:"mt_id_tlv,omitempty"`
	LocalLinkIP           string                   `json:"local_link_ip,omitempty"`
	RemoteLinkIP          string                   `json:"remote_link_ip,omitempty"`
	IGPMetric             uint32                   `json:"igp_metric,omitempty"`
	RemoteNodeHash        string                   `json:"remote_node_hash,omitempty"`
	LocalNodeHash         string                   `json:"local_node_hash,omitempty"`
	RemoteIGPRouterID     string                   `json:"remote_igp_router_id,omitempty"`
	UnidirLinkDelay       uint32                   `json:"unidir_link_delay,omitempty"`
	UnidirLinkDelayMinMax []uint32                 `json:"unidir_link_delay_min_max,omitempty"`
	MaxLinkBWKbps         uint64                   `json:"max_link_bw_kbps,omitempty"`
	UnidirDelayVariation  uint32                   `json:"unidir_delay_variation,omitempty"`
	UnidirPacketLoss      float32                  `json:"unidir_packet_loss,omitempty"`
	UnidirResidualBW      uint32                   `json:"unidir_residual_bw,omitempty"`
	UnidirAvailableBW     uint32                   `json:"unidir_available_bw,omitempty"`
	UnidirBWUtilization   uint32                   `json:"unidir_bw_utilization,omitempty"`
}
func FetchAllLsLinks(ctx context.Context) []LSLink
func FetchLsLink(ctx context.Context, key string) LSLink

type LSNode

type LSNode struct {
	ID          string                     `json:"_id,omitempty"`
	Key         string                     `json:"_key,omitempty"`
	RouterHash  string                     `json:"router_hash,omitempty"`
	DomainID    int64                      `json:"domain_id,omitempty"`
	RouterIP    string                     `json:"router_ip,omitempty"`
	PeerHash    string                     `json:"peer_hash,omitempty"`
	PeerIP      string                     `json:"peer_ip,omitempty"`
	PeerASN     int32                      `json:"peer_asn,omitempty"`
	Timestamp   string                     `json:"timestamp,omitempty"`
	IGPRouterID string                     `json:"igp_router_id,omitempty"`
	ASN         uint32                     `json:"asn,omitempty"`
	MTID        []*MultiTopologyIdentifier `json:"mt_id_tlv,omitempty"`
	AreaID      string                     `json:"area_id,omitempty"`
	Protocol    string                     `json:"protocol,omitempty"`
	ProtocolID  uint8                      `json:"protocol_id,omitempty"`
	Name        string                     `json:"name,omitempty"`
	IsPrepolicy bool                       `json:"is_prepolicy,omitempty"`
	IsAdjRIBIn  bool                       `json:"is_adj_rib_in,omitempty"`
}

Information on Collections is taken from here: https://github.com/sbezverk/gobmp/blob/master/pkg/message/types.go

func FetchAllLsNodes

func FetchAllLsNodes(ctx context.Context) []LSNode

func FetchLsNode

func FetchLsNode(ctx context.Context, key string) LSNode

type LSNode_Coordinates

type LSNode_Coordinates struct {
	Key       string  `json:"_key,omitempty"`
	ID        string  `json:"_id,omitempty"`
	LsNodeKey string  `json:"ls_node_key,omitempty"`
	Latitude  float64 `json:"latitude,omitempty"`
	Longitude float64 `json:"longitude,omitempty"`
}

func FetchAllLsNodeCoordinates

func FetchAllLsNodeCoordinates(ctx context.Context) []LSNode_Coordinates

func FetchLsNodeCoordinates

func FetchLsNodeCoordinates(ctx context.Context, key string) LSNode_Coordinates

type LSNode_Edge

type LSNode_Edge struct {
	Key  string `json:"_key,omitempty"`
	ID   string `json:"_id,omitempty"`
	From string `json:"_from,omitempty"`
	To   string `json:"_to,omitempty"`
	Link string `json:"link,omitempty"`
}

func FetchAllLsNodeEdges

func FetchAllLsNodeEdges(ctx context.Context) []LSNode_Edge

func FetchLsNodeEdge

func FetchLsNodeEdge(ctx context.Context, key string) LSNode_Edge

type LSPrefix

type LSPrefix struct {
	Key           string                   `json:"_key,omitempty"`
	ID            string                   `json:"_id,omitempty"`
	RouterHash    string                   `json:"router_hash,omitempty"`
	RouterIP      string                   `json:"router_ip,omitempty"`
	DomainID      int64                    `json:"domain_id,omitempty"`
	PeerHash      string                   `json:"peer_hash,omitempty"`
	PeerIP        string                   `json:"peer_ip,omitempty"`
	PeerASN       int32                    `json:"peer_asn,omitempty"`
	Timestamp     string                   `json:"timestamp,omitempty"`
	IGPRouterID   string                   `json:"igp_router_id,omitempty"`
	Protocol      string                   `json:"protocol,omitempty"`
	AreaID        string                   `json:"area_id,omitempty"`
	Nexthop       string                   `json:"nexthop,omitempty"`
	LocalNodeHash string                   `json:"local_node_hash,omitempty"`
	MTID          *MultiTopologyIdentifier `json:"mt_id_tlv,omitempty"`
	Prefix        string                   `json:"prefix,omitempty"`
	PrefixLen     int32                    `json:"prefix_len,omitempty"`
	PrefixMetric  uint32                   `json:"prefix_metric,omitempty"`
	IsPrepolicy   bool                     `json:"is_prepolicy,omitempty"`
	IsAdjRIBIn    bool                     `json:"is_adj_rib_in,omitempty"`
}

func FetchAllLsPrefixes

func FetchAllLsPrefixes(ctx context.Context) []LSPrefix

func FetchLsPrefix

func FetchLsPrefix(ctx context.Context, key string) LSPrefix

type LSSRv6SID

type LSSRv6SID struct {
	Key           string                   `json:"_key,omitempty"`
	ID            string                   `json:"_id,omitempty"`
	RouterHash    string                   `json:"router_hash,omitempty"`
	RouterIP      string                   `json:"router_ip,omitempty"`
	DomainID      int64                    `json:"domain_id,omitempty"`
	PeerHash      string                   `json:"peer_hash,omitempty"`
	PeerIP        string                   `json:"peer_ip,omitempty"`
	PeerASN       int32                    `json:"peer_asn,omitempty"`
	Timestamp     string                   `json:"timestamp,omitempty"`
	IGPRouterID   string                   `json:"igp_router_id,omitempty"`
	LocalNodeASN  uint32                   `json:"local_node_asn,omitempty"`
	Protocol      string                   `json:"protocol,omitempty"`
	Nexthop       string                   `json:"nexthop,omitempty"`
	LocalNodeHash string                   `json:"local_node_hash,omitempty"`
	MTID          *MultiTopologyIdentifier `json:"mt_id_tlv,omitempty"`
	IGPFlags      uint8                    `json:"igp_flags,omitempty"`
	IsPrepolicy   bool                     `json:"is_prepolicy,omitempty"`
	IsAdjRIBIn    bool                     `json:"is_adj_rib_in,omitempty"`
	SRv6SID       string                   `json:"srv6_sid,omitempty"`
}

func FetchAllLsSrv6Sids

func FetchAllLsSrv6Sids(ctx context.Context) []LSSRv6SID

func FetchLsSrv6Sid

func FetchLsSrv6Sid(ctx context.Context, key string) LSSRv6SID

type MultiTopologyIdentifier

type MultiTopologyIdentifier struct {
	OFlag bool   `json:"o_flag"`
	AFlag bool   `json:"a_flag"`
	MTID  uint16 `json:"mt_id"`
}

Jump to

Keyboard shortcuts

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