app

package
v2.5.2+incompatible Latest Latest
Warning

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

Go to latest
Published: Nov 9, 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

type Application interface {
	common.Releasable
}

type ApplicationFactory

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

type ApplicationInitializer

type ApplicationInitializer func() error

type Caller

type Caller interface {
	Tag() string
}

type Context

type Context interface {
	CallerTag() string
}

Context of a function call from proxy to app.

type ID

type ID int

type Space

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

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