Version: v0.0.0-...-e28fab9 Latest Latest

This package is not in the latest version of its module.

Go to latest
Published: Oct 15, 2021 License: AGPL-3.0 Imports: 10 Imported by: 2




This section is empty.


This section is empty.


This section is empty.


type Client

type Client struct {
	// contains filtered or unexported fields

Client provides access to the remoterelations api facade.

func NewClient

func NewClient(caller base.APICaller) *Client

NewClient creates a new client-side RemoteRelations facade.

func (*Client) ConsumeRemoteRelationChange

func (c *Client) ConsumeRemoteRelationChange(change params.RemoteRelationChangeEvent) error

ConsumeRemoteRelationChange consumes a change to settings originating from the remote/offering side of a relation.

func (*Client) ControllerAPIInfoForModel

func (c *Client) ControllerAPIInfoForModel(modelUUID string) (*api.Info, error)

ControllerAPIInfoForModel retrieves the controller API info for the specified model.

func (*Client) ExportEntities

func (c *Client) ExportEntities(tags []names.Tag) ([]params.TokenResult, error)

ExportEntities allocates unique, remote entity IDs for the given entities in the local model.

func (*Client) GetToken

func (c *Client) GetToken(tag names.Tag) (string, error)

GetToken returns the token associated with the entity with the given tag for the specified model.

func (*Client) ImportRemoteEntity

func (c *Client) ImportRemoteEntity(entity names.Tag, token string) error

ImportRemoteEntity adds an entity to the remote entities collection with the specified opaque token.

func (*Client) Relations

func (c *Client) Relations(keys []string) ([]params.RemoteRelationResult, error)

Relations returns information about the cross-model relations with the specified keys in the local model.

func (*Client) RemoteApplications

func (c *Client) RemoteApplications(applications []string) ([]params.RemoteApplicationResult, error)

RemoteApplications returns the current state of the remote applications with the specified names in the local model.

func (*Client) SaveMacaroon

func (c *Client) SaveMacaroon(entity names.Tag, mac *macaroon.Macaroon) error

SaveMacaroon saves the macaroon for the entity.

func (*Client) SetRemoteApplicationStatus

func (c *Client) SetRemoteApplicationStatus(applicationName string, status status.Status, message string) error

SetRemoteApplicationStatus sets the status for the specified remote application.

func (*Client) UpdateControllerForModel

func (c *Client) UpdateControllerForModel(controller crossmodel.ControllerInfo, modelUUID string) error

UpdateControllerForModel ensures that there is an external controller record for the input info, associated with the input model ID.

func (*Client) WatchLocalRelationChanges

func (c *Client) WatchLocalRelationChanges(relationKey string) (apiwatcher.RemoteRelationWatcher, error)

WatchLocalRelationChanges returns a watcher that emits fully-expanded changes (suitable for shipping over to a different controller) to the local units in the relation with the given key.

func (*Client) WatchRemoteApplicationRelations

func (c *Client) WatchRemoteApplicationRelations(application string) (watcher.StringsWatcher, error)

WatchRemoteApplicationRelations returns remote relations watchers that delivers changes according to the addition, removal, and lifecycle changes of relations that the specified remote application is involved in; and also according to the entering, departing, and change of unit settings in those relations.

func (*Client) WatchRemoteApplications

func (c *Client) WatchRemoteApplications() (watcher.StringsWatcher, error)

WatchRemoteApplications returns a strings watcher that notifies of the addition, removal, and lifecycle changes of remote applications in the model.

func (*Client) WatchRemoteRelations

func (c *Client) WatchRemoteRelations() (watcher.StringsWatcher, error)

WatchRemoteRelations returns a strings watcher that notifies of the addition, removal, and lifecycle changes of remote relations in the model.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto
y or Y : Canonical URL