Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrAppGateNoRelayEndpoints = sdkerrors.Register(codespace, 1, "no relay endpoints found") ErrAppGateMissingAppAddress = sdkerrors.Register(codespace, 2, "missing application address") ErrAppGateMissingSigningInformation = sdkerrors.Register(codespace, 3, "missing app client signing information") ErrAppGateMissingListeningEndpoint = sdkerrors.Register(codespace, 4, "missing app client listening endpoint") ErrAppGateHandleRelay = sdkerrors.Register(codespace, 5, "internal error handling relay request") ErrAppGateUpstreamError = sdkerrors.Register(codespace, 6, "upstream error") )
Functions ¶
func NewAppGateServer ¶
func NewAppGateServer( deps depinject.Config, opts ...appGateServerOption, ) (*appGateServer, error)
NewAppGateServer creates a new appGateServer instance with the given dependencies.
Required dependencies: - polylog.Logger - sdkclient.Context - client.BlockClient - client.AccountQueryClient - crypto.RingCache
func WithListeningUrl ¶
WithListeningUrl sets the listening URL for the appgate server.
func WithSigningInformation ¶
func WithSigningInformation(signingInfo *SigningInformation) appGateServerOption
WithSigningInformation sets the signing information for the appgate server.
Types ¶
type SigningInformation ¶
type SigningInformation struct { // SelfSigning indicates whether the server is running in self-signing mode SelfSigning bool // SigningKeyName is the name of the key in the keyring that corresponds to the // private key used to sign relay requests. SigningKeyName string // AppAddress is the address of the application that the server is serving if // If it is nil, then the application address must be included in each request via a query parameter. AppAddress string }
SigningInformation is a struct that holds information related to the signing of relay requests, used by the appGateServer to determine how they will sign relay requests (with either their own ring or the rign of the application).
Source Files ¶
Click to show internal directories.
Click to hide internal directories.