server

package
v1.36.178 Latest Latest
Warning

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

Go to latest
Published: Aug 30, 2026 License: BSD-3-Clause Imports: 32 Imported by: 0

Documentation

Overview

Package server is a generated GoMock package.

Index

Constants

View Source
const HTTPHeaderRoute = apitypes.HTTPHeaderRoute
View Source
const Refused = "this changes the node, and a node answers to its operator"

Refused is the stem of every refusal this rule speaks. Exported because a test has to tell it from the other 403s an operation can meet — a suite that only asked whether something refused would pass with this control deleted.

View Source
const Relay = "/tx"

Relay is the address at which a chain accepts a write from anyone: already signed transaction bytes, forwarded to consensus. The node checks no signature there because it holds no key that could have made one — the bytes carry their own authority.

One address, deliberately. An operation that takes signed bytes and is registered anywhere else meets Refused, which is a loud wrong answer rather than a quiet open door.

Variables

This section is empty.

Functions

func Authorize added in v1.36.178

func Authorize(ctx context.Context, op zip.Op, _ any) error

Authorize is the node's one authorization decision, run at the invoke seam of every typed op on every mounted app. Mount installs it; nothing else needs to, and nothing else should.

func Mount added in v1.36.178

func Mount(app *zip.App) (http.Handler, error)

Mount serves app and hands back its net/http face, ready for AddRoute.

It installs Authorize before it serves, and the ordering is the whole point. zip raises an MCP door on any app holding a typed op, and an app with no Authorizer answers whoever knocks — so a mount that had to REMEMBER to authorize would eventually be a mount that forgot. Here, forgetting means not mounting: this is the only verb that puts a zip app on the node's router, so every app on it is under the rule by construction rather than by review.

func Open added in v1.36.178

func Open(op zip.Op) bool

Open reports whether op answers to anyone.

func TraceHandler

func TraceHandler(h http.Handler, name string, tracer trace.Tracer) http.Handler

Types

type HTTPConfig

type HTTPConfig struct {
	ReadTimeout       time.Duration `json:"readTimeout"`
	ReadHeaderTimeout time.Duration `json:"readHeaderTimeout"`
	WriteTimeout      time.Duration `json:"writeHeaderTimeout"`
	IdleTimeout       time.Duration `json:"idleTimeout"`
}

type MockServer

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

MockServer is a mock of Server interface.

func NewMockServer

func NewMockServer(ctrl *gomock.Controller) *MockServer

NewMockServer creates a new mock instance.

func (*MockServer) AddAliases

func (m *MockServer) AddAliases(arg0 string, arg1 ...string) error

AddAliases mocks base method.

func (*MockServer) AddAliasesWithReadLock

func (m *MockServer) AddAliasesWithReadLock(arg0 string, arg1 ...string) error

AddAliasesWithReadLock mocks base method.

func (*MockServer) AddRoute

func (m *MockServer) AddRoute(arg0 http.Handler, arg1, arg2 string) error

AddRoute mocks base method.

func (*MockServer) AddRouteWithReadLock

func (m *MockServer) AddRouteWithReadLock(arg0 http.Handler, arg1, arg2 string) error

AddRouteWithReadLock mocks base method.

func (*MockServer) Dispatch

func (m *MockServer) Dispatch() error

Dispatch mocks base method.

func (*MockServer) EXPECT

func (m *MockServer) EXPECT() *MockServerMockRecorder

EXPECT returns an object that allows the caller to indicate expected use.

func (*MockServer) RegisterChain

func (m *MockServer) RegisterChain(arg0 string, arg1 *runtime.Runtime, arg2 vm.VM)

RegisterChain mocks base method.

func (*MockServer) Shutdown

func (m *MockServer) Shutdown() error

Shutdown mocks base method.

type MockServerMockRecorder

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

MockServerMockRecorder is the mock recorder for MockServer.

func (*MockServerMockRecorder) AddAliases

func (mr *MockServerMockRecorder) AddAliases(arg0 any, arg1 ...any) *gomock.Call

AddAliases indicates an expected call of AddAliases.

func (*MockServerMockRecorder) AddAliasesWithReadLock

func (mr *MockServerMockRecorder) AddAliasesWithReadLock(arg0 any, arg1 ...any) *gomock.Call

AddAliasesWithReadLock indicates an expected call of AddAliasesWithReadLock.

func (*MockServerMockRecorder) AddRoute

func (mr *MockServerMockRecorder) AddRoute(arg0, arg1, arg2 any) *gomock.Call

AddRoute indicates an expected call of AddRoute.

func (*MockServerMockRecorder) AddRouteWithReadLock

func (mr *MockServerMockRecorder) AddRouteWithReadLock(arg0, arg1, arg2 any) *gomock.Call

AddRouteWithReadLock indicates an expected call of AddRouteWithReadLock.

func (*MockServerMockRecorder) Dispatch

func (mr *MockServerMockRecorder) Dispatch() *gomock.Call

Dispatch indicates an expected call of Dispatch.

func (*MockServerMockRecorder) RegisterChain

func (mr *MockServerMockRecorder) RegisterChain(arg0, arg1, arg2 any) *gomock.Call

RegisterChain indicates an expected call of RegisterChain.

func (*MockServerMockRecorder) Shutdown

func (mr *MockServerMockRecorder) Shutdown() *gomock.Call

Shutdown indicates an expected call of Shutdown.

type PathAdder

type PathAdder interface {
	// AddRoute registers a route to a handler.
	AddRoute(handler http.Handler, base, endpoint string) error

	// AddAliases registers aliases to the server
	AddAliases(endpoint string, aliases ...string) error
}

func PathWriterFromWithReadLock

func PathWriterFromWithReadLock(pather PathAdderWithReadLock) PathAdder

type PathAdderWithReadLock

type PathAdderWithReadLock interface {
	// AddRouteWithReadLock registers a route to a handler assuming the http
	// read lock is currently held.
	AddRouteWithReadLock(handler http.Handler, base, endpoint string) error

	// AddAliasesWithReadLock registers aliases to the server assuming the http read
	// lock is currently held.
	AddAliasesWithReadLock(endpoint string, aliases ...string) error
}

type RootInfo added in v1.23.5

type RootInfo struct {
	NodeID    string `json:"nodeId,omitempty"`
	NetworkID uint32 `json:"networkId,omitempty"`
	Version   string `json:"version,omitempty"`
	Ready     bool   `json:"ready"`
	Chains    struct {
		C string `json:"c"`
		P string `json:"p"`
		X string `json:"x"`
	} `json:"chains"`
	Endpoints struct {
		RPC       string `json:"rpc"`
		Websocket string `json:"ws"`
		Info      string `json:"info"`
		Health    string `json:"health"`
	} `json:"endpoints"`
}

RootInfo contains information returned at the root endpoint

type RootInfoProvider added in v1.23.5

type RootInfoProvider interface {
	GetRootInfo() RootInfo
}

RootInfoProvider provides node information for the root endpoint

type Server

type Server interface {
	PathAdder
	PathAdderWithReadLock
	// Dispatch starts the API server
	Dispatch() error
	// RegisterChain registers the API endpoints associated with this chain.
	// That is, add <route, handler> pairs to server so that API calls can be
	// made to the VM.
	RegisterChain(chainName string, rt *runtime.Runtime, vm vm.VM)
	// Shutdown this server
	Shutdown() error
	// SetRootInfoProvider sets the provider for root endpoint information
	SetRootInfoProvider(provider RootInfoProvider)
}

Server maintains the HTTP router

func New

func New(
	log log.Logger,
	listener net.Listener,
	allowedOrigins []string,
	shutdownTimeout time.Duration,
	nodeID ids.NodeID,
	tracingEnabled bool,
	tracer trace.Tracer,
	registerer metric.Registerer,
	httpConfig HTTPConfig,
	allowedHosts []string,
) (Server, error)

New returns an instance of a Server.

type StateGetter

type StateGetter interface {
	Get() vm.State
}

StateGetter interface for getting chain state

type Wrapper

type Wrapper interface {
	// WrapHandler wraps an http.Handler.
	WrapHandler(h http.Handler) http.Handler
}

Directories

Path Synopsis
Package servermock is a generated GoMock package.
Package servermock is a generated GoMock package.

Jump to

Keyboard shortcuts

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