rpc

package module
v2.15.0 Latest Latest
Warning

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

Go to latest
Published: Sep 12, 2022 License: MIT Imports: 12 Imported by: 1

README

rpc

RRv2 RPC plugin

Documentation

Index

Constants

View Source
const PluginName = "rpc"

PluginName contains default plugin name.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	// Listen address string
	Listen string `mapstructure:"listen"`
}

Config defines RPC service config.

func (*Config) Dialer

func (c *Config) Dialer() (net.Conn, error)

Dialer creates rpc socket Dialer.

func (*Config) InitDefaults

func (c *Config) InitDefaults()

InitDefaults allows to init blank config with pre-defined set of default values.

func (*Config) Listener

func (c *Config) Listener() (net.Listener, error)

Listener creates new rpc socket Listener.

func (*Config) Valid

func (c *Config) Valid() error

Valid returns nil if config is valid.

type Plugin

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

Plugin is RPC service.

func (*Plugin) Collects

func (s *Plugin) Collects() []any

Collects all plugins which implement Name + RPCer interfaces

func (*Plugin) Init

func (s *Plugin) Init(cfg config.Configurer, log *zap.Logger) error

Init rpc service. Must return true if service is enabled.

func (*Plugin) Name

func (s *Plugin) Name() string

Name contains service name.

func (*Plugin) Register

func (s *Plugin) Register(name string, svc any) error

Register publishes in the server the set of methods of the receiver value that satisfy the following conditions:

  • exported method of exported type
  • two arguments, both of exported type
  • the second argument is a pointer
  • one return value, of type error

It returns an error if the receiver is not an exported type or has no suitable methods. It also logs the error using package log.

func (*Plugin) RegisterPlugin

func (s *Plugin) RegisterPlugin(name endure.Named, p api.RPCer)

RegisterPlugin registers RPC service plugin.

func (*Plugin) Serve

func (s *Plugin) Serve() chan error

Serve serves the service.

func (*Plugin) Stop

func (s *Plugin) Stop() error

Stop stops the service.

Jump to

Keyboard shortcuts

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