juju: github.com/juju/juju/apiserver/facades/agent/proxyupdater Index | Files

package proxyupdater

import "github.com/juju/juju/apiserver/facades/agent/proxyupdater"

Index

Package Files

proxyupdater.go shims.go

type APIBase Uses

type APIBase struct {
    // contains filtered or unexported fields
}

func NewAPIBase Uses

func NewAPIBase(backend Backend, resources facade.Resources, authorizer facade.Authorizer) (*APIBase, error)

NewAPIBase creates a new server-side API facade with the given Backing.

func (*APIBase) ProxyConfig Uses

func (api *APIBase) ProxyConfig(args params.Entities) params.ProxyConfigResults

ProxyConfig returns the proxy settings for the current model.

func (*APIBase) WatchForProxyConfigAndAPIHostPortChanges Uses

func (api *APIBase) WatchForProxyConfigAndAPIHostPortChanges(args params.Entities) params.NotifyWatchResults

WatchForProxyConfigAndAPIHostPortChanges watches for cleanups to be perfomed in state

type APIv1 Uses

type APIv1 struct {
    *APIv2
}

APIv1 provides the ProxyUpdater version 1 facade.

func NewFacadeV1 Uses

func NewFacadeV1(ctx facade.Context) (*APIv1, error)

NewFacadeV1 provides the signature required for facade registration and creates a v1 facade.

func (*APIv1) ProxyConfig Uses

func (api *APIv1) ProxyConfig(args params.Entities) params.ProxyConfigResultsV1

ProxyConfig returns the proxy settings for the current model.

type APIv2 Uses

type APIv2 struct {
    *APIBase
}

APIv2 provides the ProxyUpdater version 2 facade.

func NewFacadeV2 Uses

func NewFacadeV2(ctx facade.Context) (*APIv2, error)

NewFacadeV2 provides the signature required for facade registration and creates a v2 facade.

type Backend Uses

type Backend interface {
    ModelConfig() (*config.Config, error)
    APIHostPortsForAgents() ([]network.SpaceHostPorts, error)
    WatchAPIHostPortsForAgents() state.NotifyWatcher
    WatchForModelConfigChanges() state.NotifyWatcher
}

Backend defines the state methods this facade needs, so they can be mocked for testing.

type ProxyUpdaterV1 Uses

type ProxyUpdaterV1 interface {
    ProxyConfig(args params.Entities) params.ProxyConfigResultsV1
    WatchForProxyConfigAndAPIHostPortChanges(args params.Entities) params.NotifyWatchResults
}

ProxyUpdaterV1 defines the pubic methods for the v1 facade.

type ProxyUpdaterV2 Uses

type ProxyUpdaterV2 interface {
    ProxyConfig(args params.Entities) params.ProxyConfigResults
    WatchForProxyConfigAndAPIHostPortChanges(args params.Entities) params.NotifyWatchResults
}

ProxyUpdaterV2 defines the pubic methods for the v2 facade.

Package proxyupdater imports 10 packages (graph) and is imported by 3 packages. Updated 2019-10-02. Refresh now. Tools for package owners.