package relay

import "github.com/uber/tchannel-go/relay"

Package relay contains relaying interfaces for external use.

These interfaces are currently unstable, and aren't covered by the API backwards-compatibility guarantee.

Index

Types

type CallFrame

type CallFrame interface {
	// Caller is the name of the originating service.
	Caller() []byte
	// Service is the name of the destination service.
	Service() []byte
	// Method is the name of the method being called.
	Method() []byte
	// RoutingDelegate is the name of the routing delegate, if any.
	RoutingDelegate() []byte
	// RoutingKey may refer to an alternate traffic group instead of the
	// traffic group identified by the service name.
	RoutingKey() []byte
}

CallFrame is an interface that abstracts access to the call req frame.

type Conn

type Conn struct {
	// RemoteAddr is the remote address of the underlying TCP connection.
	RemoteAddr string

	// RemoteProcessName is the process name sent in the TChannel handshake.
	RemoteProcessName string

	// IsOutbound returns whether this connection is an outbound connection
	// initiated via the relay.
	IsOutbound bool
}

Conn contains information about the underlying connection.

type RateLimitDropError

type RateLimitDropError struct{}

RateLimitDropError is the error that should be returned from RelayHosts.Get if the request should be dropped silently. This is bit of a hack, because rate limiting of this nature isn't part of the actual TChannel protocol. The relayer will record that it has dropped the packet, but *won't* notify the client.

func (RateLimitDropError) Error

func (e RateLimitDropError) Error() string

Source Files

relay.go

Directories

PathSynopsis
relay/relaytest
Version
v1.14.0
Published
May 20, 2019
Platform
js/wasm
Last checked
13 hours ago

Tools for package owners.