core: v2ray.com/core/app/commander Index | Files

package commander

import "v2ray.com/core/app/commander"

Index

Package Files

commander.go config.pb.go errors.generated.go outbound.go service.go

type Commander Uses

type Commander struct {
    sync.Mutex
    // contains filtered or unexported fields
}

Commander is a V2Ray feature that provides gRPC methods to external clients.

func NewCommander Uses

func NewCommander(ctx context.Context, config *Config) (*Commander, error)

NewCommander creates a new Commander based on the given config.

func (*Commander) Close Uses

func (c *Commander) Close() error

Close implements common.Closable.

func (*Commander) Start Uses

func (c *Commander) Start() error

Start implements common.Runnable.

func (*Commander) Type Uses

func (c *Commander) Type() interface{}

Type implements common.HasType.

type Config Uses

type Config struct {
    // Tag of the outbound handler that handles grpc connections.
    Tag string `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"`
    // Services that supported by this server. All services must implement Service interface.
    Service              []*serial.TypedMessage `protobuf:"bytes,2,rep,name=service,proto3" json:"service,omitempty"`
    XXX_NoUnkeyedLiteral struct{}               `json:"-"`
    XXX_unrecognized     []byte                 `json:"-"`
    XXX_sizecache        int32                  `json:"-"`
}

Config is the settings for Commander.

func (*Config) Descriptor Uses

func (*Config) Descriptor() ([]byte, []int)

func (*Config) GetService Uses

func (m *Config) GetService() []*serial.TypedMessage

func (*Config) GetTag Uses

func (m *Config) GetTag() string

func (*Config) ProtoMessage Uses

func (*Config) ProtoMessage()

func (*Config) Reset Uses

func (m *Config) Reset()

func (*Config) String Uses

func (m *Config) String() string

func (*Config) XXX_DiscardUnknown Uses

func (m *Config) XXX_DiscardUnknown()

func (*Config) XXX_Marshal Uses

func (m *Config) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Config) XXX_Merge Uses

func (m *Config) XXX_Merge(src proto.Message)

func (*Config) XXX_Size Uses

func (m *Config) XXX_Size() int

func (*Config) XXX_Unmarshal Uses

func (m *Config) XXX_Unmarshal(b []byte) error

type Outbound Uses

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

Outbound is a outbound.Handler that handles gRPC connections.

func (*Outbound) Close Uses

func (co *Outbound) Close() error

Close implements common.Closable.

func (*Outbound) Dispatch Uses

func (co *Outbound) Dispatch(ctx context.Context, link *transport.Link)

Dispatch implements outbound.Handler.

func (*Outbound) Start Uses

func (co *Outbound) Start() error

Start implements common.Runnable.

func (*Outbound) Tag Uses

func (co *Outbound) Tag() string

Tag implements outbound.Handler.

type OutboundListener Uses

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

OutboundListener is a net.Listener for listening gRPC connections.

func (*OutboundListener) Accept Uses

func (l *OutboundListener) Accept() (net.Conn, error)

Accept implements net.Listener.

func (*OutboundListener) Addr Uses

func (l *OutboundListener) Addr() net.Addr

Addr implements net.Listener.

func (*OutboundListener) Close Uses

func (l *OutboundListener) Close() error

Close implement net.Listener.

type Service Uses

type Service interface {
    // Register registers the service itself to a gRPC server.
    Register(*grpc.Server)
}

Service is a Commander service.

Package commander imports 15 packages (graph) and is imported by 4 packages. Updated 2019-04-20. Refresh now. Tools for package owners.