func (b *BGPEntity) Neighbors() *BgpNeighborsEntity {
	if b.neighbors == nil {
		b.neighbors = BgpNeighbors(b.AbstractBaseEntity.node)
	}
	return b.neighbors
}
Neighbors returns the instance of the BgpNeighborsEntity
for this BGPEntity
package module
import (
	"net"
	"regexp"
	"strconv"
	"github.com/aristanetworks/goeapi"
)
type BgpNetworkEntry map[string]string
type BgpConfig struct {
	asNumber     string
	routerID     string
	shutdown     string
	maxPaths     string
	maxEcmpPaths string
	networks     []BgpNetworkEntry
}
func (b *BgpConfig) BgpAs() string {
	return b.asNumber
}
func (b *BgpConfig) RouterID() string {
	return b.routerID
}
func (b *BgpConfig) Shutdown() string {
	return b.shutdown
}
func (b *BgpConfig) MaximumPaths() string {
	return b.maxPaths
}
func (b *BgpConfig) MaximumEcmpPaths() string {
	return b.maxEcmpPaths
}
func (b *BgpConfig) Networks() []BgpNetworkEntry {
	return b.networks
}
func (b BgpNetworkEntry) Prefix() string {
	return b["prefix"]
}
func (b BgpNetworkEntry) MaskLen() string {
	return b["masklen"]
}
func (b BgpNetworkEntry) RouteMap() string {
	return b["route_map"]
}
type BGPEntity struct {
	neighbors *BgpNeighborsEntity
	*AbstractBaseEntity
}
func Bgp(node *goeapi.Node) *BGPEntity {
	return &BGPEntity{AbstractBaseEntity: &AbstractBaseEntity{node}}
}
func (b *BGPEntity) Get() *BgpConfig {
	config, err := b.GetBlock(`^router bgp .*`)
	if err != nil {
		return nil
	}
	var bgp = new(BgpConfig)
	bgp.asNumber = b.parseAS(config)
	bgp.routerID = b.parseRouterID(config)
	bgp.shutdown = strconv.FormatBool(b.parseShutdown(config))
	bgp.networks = b.parseNetworks(config)
	m := b.parseMaxPaths(config)
	bgp.maxPaths = m["maximum_paths"]
	bgp.maxEcmpPaths = m["maximum_ecmp_paths"]
	return bgp
}