Documentation ¶
Overview ¶
The implementation of the open flow agent (ofagent) uses a GRPC connection to VOLTHA accross several implementaton packages including the ofagent and openflow packages. This GRPC connection is shared through packages and type instances via injection.
As the ofagent executes within a micro-service environment it is possible that the GRPC connection is reset (re-established). When the connection is re-established, because injection is used, the new value needs to be re-injected across the implementation.
To help simply the re-injection or value change scenario a holder for the GRPC connection is established so that the reference to the holder can stay [sic] consistant over the lifetime of the ofagent while the underlying GRPC connection can change without walking the entire runtime structure.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type VolthaServiceClientHolder ¶
type VolthaServiceClientHolder struct {
// contains filtered or unexported fields
}
VolthaServiceClientHolder provides a consistent (voluntarily unmutable) reference point for a mutable value that represents a GRPC service interface to VOLTHA
func (*VolthaServiceClientHolder) Clear ¶
func (h *VolthaServiceClientHolder) Clear()
Clear sets the held value to nil (not set)
func (*VolthaServiceClientHolder) Get ¶
func (h *VolthaServiceClientHolder) Get() voltha.VolthaServiceClient
Get returns the currently held value
func (*VolthaServiceClientHolder) Set ¶
func (h *VolthaServiceClientHolder) Set(client voltha.VolthaServiceClient)
Set assigns the value being held to the specified value
type VolthaServiceClientReference ¶
type VolthaServiceClientReference struct { }