Extend inventory handling

CCSDK-3223 - Getting issue details... STATUS

Inventory of a device should not langer be handled as an independent list of equipment entries.

Problem to be solved:
* Inventory "treeview" requires consistent relations between different inventory modules data fields.
* Actually there is no verification of this structure and ODLUX Invetory treeview has "strange" output elements.

Solution implemented in data-provider:
* Interface changed to write all inventory items by one call
* Add new interface type DeviceInventory to data-provider yang
* If write is called the existing" List will be removed for device.
* data-provider is implementing a consistency check between single inventory elements.

data-provider model for inventory is "grouping inventory-entity".

The following elements contain information for building the ODLUX treeview and managing the data:

leaf (Tree view key is bold)

Table column

Description

uuidName

Unique inventory id of this equipment, provided by network element

parent-uuidParentUnique (network element) inventory id of holder. 
Not existing or null parent-uuid are root elements.
tree-levelContainment LevelStarting with 0 .. ( 0 :root level)

During write into database the elements "uuid", "parent-uuid" and "tree-level" are verified for consistency.  Inconsist elements are collected under the new created node "unbound".

Inconsistent:

  • parent-uuid: If uuid is not existing → to unbound node with tree-level1
  • parent-uuid: Null or empty for tree-level=0, else → to unbound
  • uuid: not unique → Remove element with related LOG entry
  • tree-level: Wrong tree-level (child level = parent level +1)→ to unbound
  • uuid not unique:  Remove second element with related LOG entry

The elements "list contained-holder", "id" and "node-id" are not used for tree-view.

leaf

Table column

Description

list contained-holder<none>List of uuid of contained equipment.
iddatabaseIdnot used in read direction. Needs to be null.
node-idNodeId of deviceunique nodeId to identify owner of inventory.
Shouldn't be empty or null.
  • No labels