Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Application ¶
type Application struct {
Name string
Monitors []Monitor
Pools []Pool
VirtualServers []VirtualServer
Template string `mapstructure:"template"`
}
AS3 Application. This is a container for virtual servers and related load balancing objects
func ParseApp ¶
func ParseApp(rawApp map[string]interface{}, name string) Application
Parse application-specific fields (no nested objects)
func (*Application) CountMons ¶
func (a *Application) CountMons() int
func (*Application) CountPools ¶
func (a *Application) CountPools() int
func (*Application) CountVS ¶
func (a *Application) CountVS() int
type Declaration ¶
type Declaration struct {
Tenants []Tenant
Label string `mapstructure:"label"`
Remark string `mapstructure:"remark"`
SchemaVersion string `mapstructure:"schemaVersion"`
Id string `mapstructure:"id"`
UpdateMode string `mapstructure:"updateMode"`
Controls map[string]string `mapstructure:"controls"`
}
AS3 Declaration, reformatted to use lists of object types instead of individual named objects
func ParseDec ¶
func ParseDec(rawDec map[string]interface{}) Declaration
Parse declaration-specific fields
func (*Declaration) PrintAll ¶
func (dec *Declaration) PrintAll()
Print entire parsed declaration to the console in json format
func (*Declaration) PrintVSNames ¶
func (dec *Declaration) PrintVSNames()
func (*Declaration) Summarize ¶
func (dec *Declaration) Summarize()
type Monitor ¶
type Monitor struct {
Name string `mapstructure:"name,omitempty"`
Ciphers string `mapstructure:"ciphers"`
Class string `mapstructure:"class"`
Interval int `mapstructure:"interval"`
MonitorType string `mapstructure:"monitorType"`
Receive string `mapstructure:"receive"`
ReceiveDown string `mapstructure:"receiveDown"`
Send string `mapstructure:"send"`
Timeout string `mapstructure:"timeout"`
}
type Pool ¶
type Tenant ¶
type Tenant struct {
Name string
Applications []Application
DefaultRouteDomain int `mapstructure:"defaultRouteDomain"`
Enable bool `mapstructure:"enable"`
OptimisticLockKey string `mapstructure:"optimisticLockKey"`
}
AS3 Tenant, reformatted to use lists of object types instead of individual named objects
func ParseTenant ¶
Parse tenant-specific fields (no nested objects)
type VirtualServer ¶
type VirtualServer struct {
Pool string
Name string
Layer4 string `mapstructure:"layer4,omitempty"`
AllowVlans []map[string]string `mapstructure:"allowVlans"`
Class string `mapstructure:"class"`
ClientTLS map[string]string `mapstructure:"clientTLS"`
ProfileTCP string `mapstructure:"profileTCP"`
ProfileHTTP map[string]string `mapstructure:"profileHTTP,omitempty"`
Redirect80 bool `mapstructure:"redirect80"`
ServerTLS map[string]string `mapstructure:"serverTLS"`
VirtualAddresses []string `mapstructure:"virtualAddresses"`
VirtualPort int `mapstructure:"virtualPort"`
PersistenceMethods []string `mapstructure:"persistenceMethods,omitempty"`
}
This struct is a superset representing the possible keys for a virtual VirtualServer including Service_HTTP, Service_HTTPS, Service_TCP, Service_L4
func ParseVS ¶
func ParseVS(rawVS map[string]interface{}, name string) VirtualServer
Click to show internal directories.
Click to hide internal directories.