You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

RanListManager


RanListManager
type RanListManager struct {
	rnibDataService services.RNibDataService
	mux sync.Mutex
	nbIdentityList []*NbIdentity
}

type IRanListManager interface {
	InitNbIdentityList() error
	AddNbIdentity(nodeType entities.Node_Type, nbIdentity *entities.NbIdentity) error
	UpdateNbIdentity(nodeType entities.Node_Type, nbIdentity *entities.NbIdentity) error
	RemoveNbIdentity(nodeType entities.Node_Type, nbIdentity *entities.NbIdentity) error
	GetNbIdentityList() []*entities.NbIdentity
}

InitNbIdentityList


  • Triggered on application init, fetches nb identity list from DB and set it on data member.
  • rnib error → os.Exit(1)


AddNbIdentity

SaveNodeb Calls will be followed by a ranListManager.AddNbIdentity(nodeType, nbIdentity) call.

AFFECTED FLOWS

  • Add Enb REST API
  • E2 Setup Request coming from NW


Add Enb REST API

E2 Setup Request coming from NW

UpdateNbIdentity


  • Affects the call to RanStateChangeManager.ChangeStatus in the following flows: Lost Connection | E2T Init | E2T Shutdown | E2 Setup | Red Button 
  • Does not affect Update Enb since it's always DISCONNECTED



RanStateChangeManager


RemoveNbIdentity


  • RemoveEnb call will be followed by ranListManager.RemoveNbIdentity(nodeType, nbIdentity) call
  • Currently, there's no RemoveGnb method (there's only RemoveServedNrCells)

AFFECTED FLOWS

  • Delete Enb REST API

Delete ENB REST API

GetNbIdentityList

  • Returns the in-memory nbIdentity list
  • Affected flows: Get Nodeb Ids REST API & Red Button

Get Nodeb States REST API

  • Change url from /v1/nodeb/ids to /v1/nodeb/states
  • Add ConnectionStatus property to NbIdentity proto (already pushed)
  • Get nbIdentity list from memory instead of DB



Red Button REST API

  • Similarly, get nbIdentity list from memory instead of DB

RnibWriter Changes

Modify

We shall modify the following methods:

  • SaveNodeb(nbIdentity *entities.NbIdentity, nodebInfo *entities.NodebInfo) error
    • Change signature to: SaveNodeb(nbIdentity *entities.NbIdentity, nodebInfo *entities.NodebInfo) error
    • Modify implementation:
      • Remove UNKNOWN nodeType handling (reason: setup is now deterministic)
      • Remove save nbIdentity code - it would be called sequentially externally

  • RemoveEnb(nodebInfo *entities.NodebInfo) error
    • Modify implementation:
      • Delete remove nbIdentity code - it would be called sequentially externally

Add

AddNbIdentity(nodeType entities.Node_Type, nbIdentity *entities.NbIdentity) error
UpdateNbIdentity(nodeType entities.Node_Type, oldNbIdentity *entities.NbIdentity, newNbIdentity *entities.NbIdentity) error
RemoveNbIdentity(nodeType entities.Node_Type, nbIdentity *entities.NbIdentity) error

RnibReader Changes

Modify

We shall modify the following methods:

  • GetListNodebIds() ([]*entities.NbIdentity, error)
    • Remove UNKNOWN nodeType handling (reason: setup is now deterministic)


  • No labels