50 lines
1.0 KiB
Go
50 lines
1.0 KiB
Go
|
package clc
|
||
|
|
||
|
import (
|
||
|
"github.com/CenturyLinkCloud/clc-sdk/aa"
|
||
|
"github.com/CenturyLinkCloud/clc-sdk/alert"
|
||
|
"github.com/CenturyLinkCloud/clc-sdk/api"
|
||
|
"github.com/CenturyLinkCloud/clc-sdk/dc"
|
||
|
"github.com/CenturyLinkCloud/clc-sdk/group"
|
||
|
"github.com/CenturyLinkCloud/clc-sdk/lb"
|
||
|
"github.com/CenturyLinkCloud/clc-sdk/server"
|
||
|
"github.com/CenturyLinkCloud/clc-sdk/status"
|
||
|
)
|
||
|
|
||
|
type Client struct {
|
||
|
client *api.Client
|
||
|
|
||
|
Server *server.Service
|
||
|
Status *status.Service
|
||
|
AA *aa.Service
|
||
|
Alert *alert.Service
|
||
|
LB *lb.Service
|
||
|
Group *group.Service
|
||
|
DC *dc.Service
|
||
|
}
|
||
|
|
||
|
func New(config api.Config) *Client {
|
||
|
c := &Client{
|
||
|
client: api.New(config),
|
||
|
}
|
||
|
|
||
|
c.Server = server.New(c.client)
|
||
|
c.Status = status.New(c.client)
|
||
|
c.AA = aa.New(c.client)
|
||
|
c.Alert = alert.New(c.client)
|
||
|
c.LB = lb.New(c.client)
|
||
|
c.Group = group.New(c.client)
|
||
|
c.DC = dc.New(c.client)
|
||
|
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
func (c *Client) Alias(alias string) *Client {
|
||
|
c.client.Config().Alias = alias
|
||
|
return c
|
||
|
}
|
||
|
|
||
|
func (c *Client) Authenticate() error {
|
||
|
return c.client.Auth()
|
||
|
}
|