Example #1
0
// NewClient returns a new HighAvailability client.
func NewClient(caller base.APICallCloser) *Client {
	modelTag, err := caller.ModelTag()
	if err != nil {
		logger.Errorf("ignoring invalid model tag: %v", err)
	}
	frontend, backend := base.NewClientFacade(caller, "HighAvailability")
	return &Client{ClientFacade: frontend, facade: backend, modelTag: modelTag}
}
Example #2
0
// NewAPIClient is mostly a copy of the newClient code in
// component/all/resources.go.  It lives here because it simplifies this code
// immensely.
func NewAPIClient(apiCaller base.APICallCloser) (*client.Client, error) {
	caller := base.NewFacadeCallerForVersion(apiCaller, resource.FacadeName, server.Version)

	httpClient, err := apiCaller.HTTPClient()
	if err != nil {
		return nil, errors.Trace(err)
	}
	// The apiCaller takes care of prepending /environment/<envUUID>.
	apiClient := client.NewClient(caller, httpClient, apiCaller)
	return apiClient, nil
}
Example #3
0
// NewClient returns a new backups API client.
func NewClient(st base.APICallCloser) (*Client, error) {
	frontend, backend := base.NewClientFacade(st, "Backups")
	client, err := st.HTTPClient()
	if err != nil {
		return nil, errors.Trace(err)
	}
	return &Client{
		ClientFacade: frontend,
		facade:       backend,
		client:       client,
	}, nil
}
Example #4
0
// NewClient returns a new HighAvailability client.
func NewClient(caller base.APICallCloser) *Client {
	modelTag, _ := caller.ModelTag()
	frontend, backend := base.NewClientFacade(caller, "HighAvailability")
	return &Client{ClientFacade: frontend, facade: backend, modelTag: modelTag}
}