app

package
v2.4.1+incompatible Latest Latest
Warning

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

Go to latest
Published: Oct 24, 2016 License: MIT Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrMissingApplication = errors.New("App: Failed to found one or more applications.")
)

Functions

func RegisterApplicationFactory

func RegisterApplicationFactory(name string, factory ApplicationFactory) error

Types

type Application added in v1.13.1

type Application interface {
	common.Releasable
}

type ApplicationFactory

type ApplicationFactory interface {
	Create(space Space, config interface{}) (Application, error)
	AppId() ID
}

type ApplicationInitializer added in v1.13.1

type ApplicationInitializer func() error

type Caller added in v1.13.1

type Caller interface {
	Tag() string
}

type Context added in v1.13.1

type Context interface {
	CallerTag() string
}

Context of a function call from proxy to app.

type ID added in v1.13.1

type ID int

type Space added in v1.13.1

type Space interface {
	Initialize() error
	InitializeApplication(ApplicationInitializer)

	HasApp(ID) bool
	GetApp(ID) Application
	BindApp(ID, Application)
	BindFromConfig(name string, config interface{}) error
}

A Space contains all apps that may be available in a V2Ray runtime. Caller must check the availability of an app by calling HasXXX before getting its instance.

func NewSpace added in v1.13.1

func NewSpace() Space

Directories

Path Synopsis
Package dns is a generated protocol buffer package.
Package dns is a generated protocol buffer package.
Package router is a generated protocol buffer package.
Package router is a generated protocol buffer package.

Jump to

Keyboard shortcuts

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