admin

package
v0.4.4 Latest Latest
Warning

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

Go to latest
Published: Oct 2, 2022 License: LGPL-3.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddPeerRequest

type AddPeerRequest struct {
	Uri   string `json:"uri"`
	Sintf string `json:"interface,omitempty"`
}

type AddPeerResponse

type AddPeerResponse struct{}

type AddPeersRequest

type AddPeersRequest struct {
	Uri  string `json:"uri"`
	Intf string `json:"intf"`
}

type AddPeersResponse

type AddPeersResponse struct {
	List []string `json:"list"`
}

type AdminSocket

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

func New

func New(c *core.Core, log core.Logger, opts ...SetupOption) (*AdminSocket, error)

Init runs the initial admin setup.

func (*AdminSocket) AddHandler

func (a *AdminSocket) AddHandler(name, desc string, args []string, handlerfunc core.AddHandlerFunc) error

AddHandler is called for each admin function to add the handler and help documentation to the API.

func (*AdminSocket) IsStarted

func (a *AdminSocket) IsStarted() bool

IsStarted returns true if the module has been started.

func (*AdminSocket) SetupAdminHandlers

func (a *AdminSocket) SetupAdminHandlers()

func (*AdminSocket) StartHttpServer

func (a *AdminSocket) StartHttpServer(nc *config.NodeConfig)

Start runs http server

func (*AdminSocket) Stop

func (a *AdminSocket) Stop() error

Stop will stop the admin API and close the socket.

type AdminSocketRequest

type AdminSocketRequest struct {
	Name      string          `json:"request"`
	Arguments json.RawMessage `json:"arguments,omitempty"`
	KeepAlive bool            `json:"keepalive,omitempty"`
}

type AdminSocketResponse

type AdminSocketResponse struct {
	Status   string          `json:"status"`
	Error    string          `json:"error,omitempty"`
	Request  json.RawMessage `json:"request"`
	Response json.RawMessage `json:"response"`
}

type DHTEntry

type DHTEntry struct {
	IPAddress string `json:"address"`
	PublicKey string `json:"key"`
	Port      uint64 `json:"port"`
	Rest      uint64 `json:"rest"`
}

type DataUnit

type DataUnit uint64

func (DataUnit) String

func (d DataUnit) String() string

type ErrorResponse

type ErrorResponse struct {
	Error string `json:"error"`
}

type GetDHTRequest

type GetDHTRequest struct{}

type GetDHTResponse

type GetDHTResponse struct {
	DHT []DHTEntry `json:"dht"`
}

type GetPathsRequest

type GetPathsRequest struct {
}

type GetPathsResponse

type GetPathsResponse struct {
	Paths []PathEntry `json:"paths"`
}

type GetPeersRequest

type GetPeersRequest struct {
}

type GetPeersResponse

type GetPeersResponse struct {
	Peers []PeerEntry `json:"peers"`
}

type GetSelfRequest

type GetSelfRequest struct{}

type GetSelfResponse

type GetSelfResponse struct {
	BuildName    string   `json:"build_name"`
	BuildVersion string   `json:"build_version"`
	PublicKey    string   `json:"key"`
	IPAddress    string   `json:"address"`
	Coords       []uint64 `json:"coords"`
	Subnet       string   `json:"subnet"`
}

type GetSessionsRequest

type GetSessionsRequest struct{}

type GetSessionsResponse

type GetSessionsResponse struct {
	Sessions []SessionEntry `json:"sessions"`
}

type ListEntry

type ListEntry struct {
	Command     string   `json:"command"`
	Description string   `json:"description"`
	Fields      []string `json:"fields,omitempty"`
}

type ListResponse

type ListResponse struct {
	List []ListEntry `json:"list"`
}

type ListenAddress

type ListenAddress string

type PathEntry

type PathEntry struct {
	IPAddress string   `json:"address"`
	PublicKey string   `json:"key"`
	Path      []uint64 `json:"path"`
}

type PeerEntry

type PeerEntry struct {
	IPAddress string   `json:"address"`
	PublicKey string   `json:"key"`
	Port      uint64   `json:"port"`
	Coords    []uint64 `json:"coords"`
	Remote    string   `json:"remote"`
	RXBytes   DataUnit `json:"bytes_recvd"`
	TXBytes   DataUnit `json:"bytes_sent"`
	Uptime    float64  `json:"uptime"`
}

type RemovePeerRequest

type RemovePeerRequest struct {
	Uri   string `json:"uri"`
	Sintf string `json:"interface,omitempty"`
}

type RemovePeerResponse

type RemovePeerResponse struct{}

type SessionEntry

type SessionEntry struct {
	IPAddress string   `json:"address"`
	PublicKey string   `json:"key"`
	RXBytes   DataUnit `json:"bytes_recvd"`
	TXBytes   DataUnit `json:"bytes_sent"`
	Uptime    float64  `json:"uptime"`
}

type SetupOption

type SetupOption interface {
	// contains filtered or unexported methods
}

Jump to

Keyboard shortcuts

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