dbadapter

package
v1.0.7 Latest Latest
Warning

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

Go to latest
Published: Oct 31, 2017 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Overview

Package dbadapter implements Domain Specific Language (DSL) for resync and change of VPP and Linux configuration.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DataChangeDSL

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

DataChangeDSL is an implementation of Domain Specific Language (DSL) for changes of both Linux and VPP configuration.

func NewDataChangeDSL

func NewDataChangeDSL(txn keyval.ProtoTxn) *DataChangeDSL

NewDataChangeDSL returns a new instance of DataChangeDSL which implements the data change DSL for both Linux and VPP config (inherits dbadapter from defaultplugins) Transaction <txn> is used to propagate changes to plugins.

func (*DataChangeDSL) Delete

func (dsl *DataChangeDSL) Delete() linux.DeleteDSL

Delete initiates a chained sequence of data change DSL statements removing existing configurable objects.

func (*DataChangeDSL) Put

func (dsl *DataChangeDSL) Put() linux.PutDSL

Put initiates a chained sequence of data change DSL statements declaring new or changing existing configurable objects.

func (*DataChangeDSL) Send

func (dsl *DataChangeDSL) Send() vpp_clientv1.Reply

Send propagates requested changes to the plugins.

type DataResyncDSL

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

DataResyncDSL is an implementation of Domain Specific Language (DSL) for data RESYNC of both Linux and VPP configuration.

func NewDataResyncDSL

func NewDataResyncDSL(txn keyval.ProtoTxn, listKeys func(prefix string) (keyval.ProtoKeyIterator, error)) *DataResyncDSL

NewDataResyncDSL returns a new instance of DataResyncDSL which implements the data RESYNC DSL for both Linux and VPP config (inherits dbadapter from defaultplugins) Transaction <txn> is used to propagate changes to plugins. Function <listKeys> is used to list keys with already existing configuration.

func (*DataResyncDSL) ACL

ACL adds VPP Access Control List to the RESYNC request.

func (*DataResyncDSL) BD

BD adds VPP Bridge Domain to the RESYNC request.

func (*DataResyncDSL) BDFIB

BDFIB adds VPP L2 FIB to the RESYNC request.

func (*DataResyncDSL) BfdAuthKeys added in v1.0.5

func (dsl *DataResyncDSL) BfdAuthKeys(val *vpp_bfd.SingleHopBFD_Key) linux.DataResyncDSL

BfdAuthKeys adds VPP bidirectional forwarding detection key to the RESYNC request.

func (*DataResyncDSL) BfdEchoFunction added in v1.0.5

BfdEchoFunction adds VPP bidirectional forwarding detection echo function to the RESYNC request.

func (*DataResyncDSL) BfdSession added in v1.0.5

BfdSession adds VPP bidirectional forwarding detection session to the RESYNC request.

func (*DataResyncDSL) LinuxArpEntry added in v1.0.7

LinuxArpEntry adds Linux ARP entry to the RESYNC request.

func (*DataResyncDSL) LinuxInterface

LinuxInterface adds Linux interface to the RESYNC request.

func (*DataResyncDSL) LinuxRoute added in v1.0.7

LinuxRoute adds Linux route to the RESYNC request.

func (*DataResyncDSL) Send

func (dsl *DataResyncDSL) Send() vpp_clientv1.Reply

Send propagates the request to the plugins. It deletes obsolete keys if listKeys() (from constructor) function is not nil.

func (*DataResyncDSL) StaticRoute

func (dsl *DataResyncDSL) StaticRoute(staticRoute *vpp_l3.StaticRoutes_Route) linux.DataResyncDSL

StaticRoute adds VPP L3 Static Route to the RESYNC request.

func (*DataResyncDSL) VppInterface

VppInterface adds VPP interface to the RESYNC request.

func (*DataResyncDSL) XConnect

XConnect adds VPP Cross Connect to the RESYNC request.

type DeleteDSL

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

DeleteDSL implements delete operations of data change DSL.

func (*DeleteDSL) ACL

func (dsl *DeleteDSL) ACL(aclName string) linux.DeleteDSL

ACL adds a request to delete an existing VPP Access Control List.

func (*DeleteDSL) BD

func (dsl *DeleteDSL) BD(bdName string) linux.DeleteDSL

BD adds a request to delete an existing VPP Bridge Domain.

func (*DeleteDSL) BDFIB

func (dsl *DeleteDSL) BDFIB(bdName string, mac string) linux.DeleteDSL

BDFIB adds a request to delete an existing VPP L2 Forwarding Information Base.

func (*DeleteDSL) BfdAuthKeys added in v1.0.5

func (dsl *DeleteDSL) BfdAuthKeys(bfdKeyName string) linux.DeleteDSL

BfdAuthKeys adds a request to delete an existing VPP bidirectional forwarding detection key.

func (*DeleteDSL) BfdEchoFunction added in v1.0.5

func (dsl *DeleteDSL) BfdEchoFunction(bfdEchoName string) linux.DeleteDSL

BfdEchoFunction adds a request to delete an existing VPP bidirectional forwarding detection echo function.

func (*DeleteDSL) BfdSession added in v1.0.5

func (dsl *DeleteDSL) BfdSession(bfdSessionIfaceName string) linux.DeleteDSL

BfdSession adds a request to delete an existing VPP bidirectional forwarding detection session.

func (*DeleteDSL) LinuxArpEntry added in v1.0.7

func (dsl *DeleteDSL) LinuxArpEntry(val *l3.LinuxStaticArpEntries_ArpEntry) linux.DeleteDSL

LinuxArpEntry adds a request to delete Linux ARP entry.

func (*DeleteDSL) LinuxInterface

func (dsl *DeleteDSL) LinuxInterface(interfaceName string) linux.DeleteDSL

LinuxInterface adds a request to delete an existing Linux network interface.

func (*DeleteDSL) LinuxRoute added in v1.0.7

func (dsl *DeleteDSL) LinuxRoute(val *l3.LinuxStaticRoutes_Route) linux.DeleteDSL

LinuxRoute adds a request to delete Linux route.

func (*DeleteDSL) Put

func (dsl *DeleteDSL) Put() linux.PutDSL

Put changes the DSL mode to allow configuration editing.

func (*DeleteDSL) Send

func (dsl *DeleteDSL) Send() vpp_clientv1.Reply

Send propagates requested changes to the plugins.

func (*DeleteDSL) StaticRoute

func (dsl *DeleteDSL) StaticRoute(vrf uint32, dstAddrInput *net.IPNet, nextHopAddrInput net.IP) linux.DeleteDSL

StaticRoute adds a request to delete an existing VPP L3 Static Route.

func (*DeleteDSL) VppInterface

func (dsl *DeleteDSL) VppInterface(ifaceName string) linux.DeleteDSL

VppInterface adds a request to delete an existing VPP network interface.

func (*DeleteDSL) XConnect

func (dsl *DeleteDSL) XConnect(rxIfaceName string) linux.DeleteDSL

XConnect adds a request to delete an existing VPP Cross Connect.

type PutDSL

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

PutDSL implements put operations of data change DSL.

func (*PutDSL) ACL

func (dsl *PutDSL) ACL(acl *vpp_acl.AccessLists_Acl) linux.PutDSL

ACL adds a request to create or update VPP Access Control List.

func (*PutDSL) BD

BD adds a request to create or update VPP Bridge Domain.

func (*PutDSL) BDFIB

BDFIB adds a request to create or update VPP L2 Forwarding Information Base.

func (*PutDSL) BfdAuthKeys added in v1.0.5

func (dsl *PutDSL) BfdAuthKeys(val *vpp_bfd.SingleHopBFD_Key) linux.PutDSL

BfdAuthKeys adds a request to create or update VPP bidirectional forwarding detection key.

func (*PutDSL) BfdEchoFunction added in v1.0.5

func (dsl *PutDSL) BfdEchoFunction(val *vpp_bfd.SingleHopBFD_EchoFunction) linux.PutDSL

BfdEchoFunction adds a request to create or update VPP bidirectional forwarding detection echo function.

func (*PutDSL) BfdSession added in v1.0.5

func (dsl *PutDSL) BfdSession(val *vpp_bfd.SingleHopBFD_Session) linux.PutDSL

BfdSession adds a request to create or update VPP bidirectional forwarding detection session.

func (*PutDSL) Delete

func (dsl *PutDSL) Delete() linux.DeleteDSL

Delete changes the DSL mode to allow removal of an existing configuration.

func (*PutDSL) LinuxArpEntry added in v1.0.7

func (dsl *PutDSL) LinuxArpEntry(val *l3.LinuxStaticArpEntries_ArpEntry) linux.PutDSL

LinuxArpEntry adds a request to create or update Linux ARP entry.

func (*PutDSL) LinuxInterface

func (dsl *PutDSL) LinuxInterface(val *interfaces.LinuxInterfaces_Interface) linux.PutDSL

LinuxInterface adds a request to create or update Linux network interface.

func (*PutDSL) LinuxRoute added in v1.0.7

func (dsl *PutDSL) LinuxRoute(val *l3.LinuxStaticRoutes_Route) linux.PutDSL

LinuxRoute adds a request to create or update Linux route.

func (*PutDSL) Send

func (dsl *PutDSL) Send() vpp_clientv1.Reply

Send propagates requested changes to the plugins.

func (*PutDSL) StaticRoute

func (dsl *PutDSL) StaticRoute(val *vpp_l3.StaticRoutes_Route) linux.PutDSL

StaticRoute adds a request to create or update VPP L3 Static Route.

func (*PutDSL) VppInterface

func (dsl *PutDSL) VppInterface(val *vpp_intf.Interfaces_Interface) linux.PutDSL

VppInterface adds a request to create or update VPP network interface.

func (*PutDSL) XConnect

func (dsl *PutDSL) XConnect(val *vpp_l2.XConnectPairs_XConnectPair) linux.PutDSL

XConnect adds a request to create or update VPP Cross Connect.

Jump to

Keyboard shortcuts

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