rpc

package
v1.0.5 Latest Latest
Warning

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

Go to latest
Published: Sep 26, 2017 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Overview

Package rpc defines flavor used for VPP agents managed using GPRC service.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ChangeVppSvc

type ChangeVppSvc struct {
	Log logging.Logger
}

ChangeVppSvc forward GRPC request to localclient

func (*ChangeVppSvc) DelACLs

func (svc *ChangeVppSvc) DelACLs(ctx context.Context, request *vppsvc.DelNamesRequest) (*vppsvc.DelResponse, error)

DelACLs one or multiple ACLs by their unique names (forwards the input to localclient)

func (*ChangeVppSvc) DelBDs

func (svc *ChangeVppSvc) DelBDs(ctx context.Context, request *vppsvc.DelNamesRequest) (*vppsvc.DelResponse, error)

DelBDs one or multiple BDs by their unique names (forwards the input to localclient) (forwards the input to localclient)

func (*ChangeVppSvc) DelInterfaces

func (svc *ChangeVppSvc) DelInterfaces(ctx context.Context, request *vppsvc.DelNamesRequest) (*vppsvc.DelResponse, error)

DelInterfaces one or multiple interfaces by their unique names (forwards the input to localclient)

func (*ChangeVppSvc) DelStaticRoutes

func (svc *ChangeVppSvc) DelStaticRoutes(ctx context.Context, request *vppsvc.DelStaticRoutesRequest) (*vppsvc.DelResponse, error)

DelStaticRoutes one or multiple ACLs by their unique names (forwards the input to localclient)

func (*ChangeVppSvc) DelXCons

func (svc *ChangeVppSvc) DelXCons(ctx context.Context, request *vppsvc.DelNamesRequest) (*vppsvc.DelResponse, error)

DelXCons one or multiple Cross Connects by their unique names (forwards the input to localclient)

func (*ChangeVppSvc) PutACLs

func (svc *ChangeVppSvc) PutACLs(ctx context.Context, request *acl.AccessLists) (
	*vppsvc.PutResponse, error)

PutACLs creates or updates one or multiple ACLs (forwards the input to localclient)

func (*ChangeVppSvc) PutBDs

func (svc *ChangeVppSvc) PutBDs(ctx context.Context, request *l2.BridgeDomains) (
	*vppsvc.PutResponse, error)

PutBDs creates or updates one or multiple BDs (forwards the input to localclient) (forwards the input to localclient)

func (*ChangeVppSvc) PutInterfaces

func (svc *ChangeVppSvc) PutInterfaces(ctx context.Context, request *interfaces.Interfaces) (
	*vppsvc.PutResponse, error)

PutInterfaces creates or updates one or multiple interfaces (forwards the input to localclient)

func (*ChangeVppSvc) PutStaticRoutes

func (svc *ChangeVppSvc) PutStaticRoutes(ctx context.Context, request *l3.StaticRoutes) (
	*vppsvc.PutResponse, error)

PutStaticRoutes creates or updates one or multiple ACLs (forwards the input to localclient)

func (*ChangeVppSvc) PutXCons

func (svc *ChangeVppSvc) PutXCons(ctx context.Context, request *l2.XConnectPairs) (
	*vppsvc.PutResponse, error)

PutXCons creates or updates one or multiple Cross Connects (forwards the input to localclient) (forwards the input to localclient)

type FlavorVppRPC

type FlavorVppRPC struct {
	*local.FlavorLocal
	*rpc.FlavorRPC
	LinuxLocalClient localclient.Plugin
	GoVPP            govppmux.GOVPPPlugin
	Linux            linuxplugin.Plugin
	VPP              defaultplugins.Plugin

	GRPCSvcPlugin GRPCSvcPlugin
	// contains filtered or unexported fields
}

FlavorVppRPC glues together multiple plugins to mange VPP and linux interfaces configuration using GRPC service

func (*FlavorVppRPC) Inject

func (f *FlavorVppRPC) Inject() bool

Inject sets object references

func (*FlavorVppRPC) Plugins

func (f *FlavorVppRPC) Plugins() []*core.NamedPlugin

Plugins combines Generic Plugins and Standard VPP Plugins

type GRPCSvcPlugin

type GRPCSvcPlugin struct {
	Deps GRPCSvcPluginDeps
	// contains filtered or unexported fields
}

GRPCSvcPlugin registers VPP GRPC services in *grpc.Server

func (*GRPCSvcPlugin) AfterInit

func (plugin *GRPCSvcPlugin) AfterInit() error

AfterInit registers all GRPC servics in vppscv package (be sure that defaultvppplugins are totally initialized)

func (*GRPCSvcPlugin) Close

func (plugin *GRPCSvcPlugin) Close() error

Close does nothing

func (*GRPCSvcPlugin) Init

func (plugin *GRPCSvcPlugin) Init() error

Init sets plugin child loggers for changeVppSvc & resyncVppSvc

type GRPCSvcPluginDeps

type GRPCSvcPluginDeps struct {
	local.PluginLogDeps
	GRPC grpc.Server
}

GRPCSvcPluginDeps - dependencies of GRPCSvcPlugin

type ResyncVppSvc

type ResyncVppSvc struct {
	Log logging.Logger
}

ResyncVppSvc forward GRPC request to localclient

func (*ResyncVppSvc) ResyncConfig

ResyncConfig full data resync request of defaultvppplugin configuration (forwards the input to localclient)

Directories

Path Synopsis
Package model is the parent for packages that define various GRPC services generated from protobuf data models.
Package model is the parent for packages that define various GRPC services generated from protobuf data models.
vppsvc
Package vppsvc is a generated protocol buffer package.
Package vppsvc is a generated protocol buffer package.

Jump to

Keyboard shortcuts

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