android

package
v0.20.0 Latest Latest
Warning

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

Go to latest
Published: May 14, 2023 License: BSD-3-Clause Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Auth

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

Auth can register or login new client

func NewAuth

func NewAuth(cfgPath string, mgmURL string) (*Auth, error)

NewAuth instantiate Auth struct and validate the management URL

func NewAuthWithConfig

func NewAuthWithConfig(ctx context.Context, config *internal.Config) *Auth

NewAuthWithConfig instantiate Auth based on existing config

func (*Auth) Login

func (a *Auth) Login(resultListener ErrListener, urlOpener URLOpener)

Login try register the client on the server

func (*Auth) LoginWithSetupKeyAndSaveConfig

func (a *Auth) LoginWithSetupKeyAndSaveConfig(resultListener ErrListener, setupKey string, deviceName string)

LoginWithSetupKeyAndSaveConfig test the connectivity with the management server with the setup key.

func (*Auth) SaveConfigIfSSOSupported

func (a *Auth) SaveConfigIfSSOSupported(listener SSOListener)

SaveConfigIfSSOSupported test the connectivity with the management server by retrieving the server device flow info. If it returns a flow info than save the configuration and return true. If it gets a codes.NotFound, it means that SSO is not supported and returns false without saving the configuration. For other errors return false.

type Client

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

Client struct manage the life circle of background service

func NewClient

func NewClient(cfgFile, deviceName string, tunAdapter TunAdapter, iFaceDiscover IFaceDiscover) *Client

NewClient instantiate a new Client

func (*Client) PeersList

func (c *Client) PeersList() *PeerInfoArray

PeersList return with the list of the PeerInfos

func (*Client) RemoveConnectionListener

func (c *Client) RemoveConnectionListener()

RemoveConnectionListener remove connection listener

func (*Client) Run

func (c *Client) Run(urlOpener URLOpener) error

Run start the internal client. It is a blocker function

func (*Client) SetConnectionListener added in v0.15.0

func (c *Client) SetConnectionListener(listener ConnectionListener)

SetConnectionListener set the network connection listener

func (*Client) Stop

func (c *Client) Stop()

Stop the internal client and free the resources

type ConnectionListener

type ConnectionListener interface {
	peer.Listener
}

ConnectionListener export internal Listener for mobile

type ErrListener added in v0.14.6

type ErrListener interface {
	OnSuccess()
	OnError(error)
}

ErrListener is async listener for mobile framework

type IFaceDiscover added in v0.14.6

type IFaceDiscover interface {
	stdnet.ExternalIFaceDiscover
}

IFaceDiscover export internal IFaceDiscover for mobile

type PeerInfo

type PeerInfo struct {
	IP         string
	FQDN       string
	ConnStatus string // Todo replace to enum
	Direct     bool
}

PeerInfo describe information about the peers. It designed for the UI usage

type PeerInfoArray

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

PeerInfoArray is the implementation of the PeerInfoCollection

func (PeerInfoArray) Add

func (array PeerInfoArray) Add(s PeerInfo) PeerInfoArray

Add new PeerInfo to the collection

func (PeerInfoArray) Get

func (array PeerInfoArray) Get(i int) *PeerInfo

Get return an element of the collection

func (PeerInfoArray) Size

func (array PeerInfoArray) Size() int

Size return with the size of the collection

type PeerInfoCollection

type PeerInfoCollection interface {
	Add(s string) PeerInfoCollection
	Get(i int) string
	Size() int
}

PeerInfoCollection made for Java layer to get non default types as collection

type Preferences

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

Preferences export a subset of the internal config for gomobile

func NewPreferences

func NewPreferences(configPath string) *Preferences

NewPreferences create new Preferences instance

func (*Preferences) Commit

func (p *Preferences) Commit() error

Commit write out the changes into config file

func (*Preferences) GetAdminURL

func (p *Preferences) GetAdminURL() (string, error)

GetAdminURL read url from config file

func (*Preferences) GetManagementURL

func (p *Preferences) GetManagementURL() (string, error)

GetManagementURL read url from config file

func (*Preferences) GetPreSharedKey

func (p *Preferences) GetPreSharedKey() (string, error)

GetPreSharedKey read preshared key from config file

func (*Preferences) SetAdminURL

func (p *Preferences) SetAdminURL(url string)

SetAdminURL store the given url and wait for commit

func (*Preferences) SetManagementURL

func (p *Preferences) SetManagementURL(url string)

SetManagementURL store the given url and wait for commit

func (*Preferences) SetPreSharedKey

func (p *Preferences) SetPreSharedKey(key string)

SetPreSharedKey store the given key and wait for commit

type SSOListener added in v0.14.6

type SSOListener interface {
	OnSuccess(bool)
	OnError(error)
}

SSOListener is async listener for mobile framework

type TunAdapter

type TunAdapter interface {
	iface.TunAdapter
}

TunAdapter export internal TunAdapter for mobile

type URLOpener

type URLOpener interface {
	Open(string)
}

URLOpener it is a callback interface. The Open function will be triggered if the backend want to show an url for the user

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL