Versions in this module Expand all Collapse all v0 v0.2.2 Nov 4, 2024 v0.2.1 Jul 17, 2024 v0.2.0 Jul 9, 2024 v0.1.1 Oct 27, 2023 Changes in this version + type Cable struct + AEnd CableEnd + BEnd CableEnd + func (c *Cable) ToProto() *octopuspb.Cable + func (c Cable) String() string + type CableEnd struct + DeviceName string + EndpointName string + EndpointType octopuspb.CableEndpointType + type Circuit struct + CID string + MetaData *MetaData + Provider string + Status string + Type string + func NewCircuit(CID string, provider string, cType string, status string) *Circuit + func (c *Circuit) ToProto() *octopuspb.Circuit + type Colo struct + Animal string + Id uint16 + IsFedramp bool + IsMCP bool + Name string + Pop *Pop + Region string + Sites []*Site + Status string + Tier uint8 + func NewColo(id uint16, name string, pop *Pop) *Colo + func (c *Colo) ToProto() *octopuspb.Colo + type Device struct + Colo *Colo + DeviceType string + FrontPorts map[string]*FrontPort + Interfaces map[string]*Interface + MetaData *MetaData + Name string + Platform string + RearPorts map[string]*RearPort + Role string + Site *Site + Status string + func NewDevice(name string) *Device + func (d *Device) AddInterfaceItNotExists(ifName string) *Interface + func (d *Device) GetInterface(ifName string) *Interface + func (d *Device) ToProto() *octopuspb.Device + type FrontPort struct + Name string + RearPort string + RearPortPosition uint32 + func (fp *FrontPort) ToProto() *octopuspb.FrontPort + type IP struct + Address bnet.Prefix + MetaData *MetaData + func NewIP(ip bnet.Prefix) IP + func (ip *IP) ToProto() *octopuspb.IPAddress + type Interface struct + LAGMemberOf string + MetaData *MetaData + Name string + Type string + Units map[VLANTag]*InterfaceUnit + func (iface *Interface) AddIPAddressIfNotExists(vlanTag VLANTag, newIP IP) + func (iface *Interface) AddUnitIfNotExists(vlanTag VLANTag) *InterfaceUnit + func (iface *Interface) ToProto() *octopuspb.Interface + type InterfaceUnit struct + ID uint32 + IPv4Addresses []IP + IPv6Addresses []IP + MetaData *MetaData + func (unit *InterfaceUnit) ToProto() *octopuspb.InterfaceUnit + type MetaData struct + CustomFieldData string + SemanticTags map[string]string + Tags []string + func NewMetaData() *MetaData + func (m *MetaData) ToProto() *octopuspb.MetaData + type Pop struct + Colos []*Colo + Name string + func NewPop(name string) *Pop + func (p *Pop) ToProto() *octopuspb.Pop + type Prefix struct + MetaData *MetaData + Prefix bnet.Prefix + Tags []string + func NewPrefix(pfx bnet.Prefix) *Prefix + func (p *Prefix) ToProto() *octopuspb.Prefix + type RearPort struct + Name string + Positions int16 + func (rp *RearPort) ToProto() *octopuspb.RearPort + type Site struct + Colos []*Colo + Name string + func NewSite(name string) *Site + func (s *Site) ToProto() *octopuspb.Site + type Topology struct + Cables map[string]*Cable + Circuits map[string]*Circuit + Colos map[uint16]*Colo + DevicesByInterfaceID map[int64]*Device + Interfaces map[int64]*Interface + Nodes map[string]*Device + Pops map[string]*Pop + Prefixes map[int64]*Prefix + Sites map[string]*Site + Timestamp time.Time + func NewTopology() *Topology + func (t *Topology) AddColoIfNotExists(id uint16, name string, popName string) *Colo + func (t *Topology) AddDeviceIfNotExists(name string) *Device + func (t *Topology) AddPopIfNotExists(name string) *Pop + func (t *Topology) AddSiteIfNotExists(name string) *Site + func (t *Topology) DeviceAndInterfaceExists(devName string, ifName string) error + func (t *Topology) FindInterfaceUnitByMetaDataAndRole(key string, value string, role string) []*InterfaceUnit + func (t *Topology) GetColo(id uint16) *Colo + func (t *Topology) GetDevice(name string) *Device + func (t *Topology) ToProto() *octopuspb.Topology + type VLANTag struct + InnerTag uint16 + OuterTag uint16 + func NewVLANTag(outerTag, innerTag uint16) VLANTag