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

Compare with Current View Page History

« Previous Version 20 Next »

Requirements

  • Entity with unique name
  • contains properties
  • filterable (logical and between properties), pagable(size: 10, 20, 50, 100), sortable (multiple properties,ascending, descending, default)
  • properties have unique names per entity (not translated - will be translated through seperate service if neccessary)
  • CRUD (Create, Read, Update, Delete)-functionalities
  • auth required, token based (has to be optimized - maybe independent from odl)
  • export function
  • additional result information:
  • page number (1..n,  if requested page>n page=n)
  • page size (number of current filtered elements)
  • result size (number of all elements for filter)
  • payload: JSON (no '-' for properties, entities)
  • yang spec !
  • Language 
  •  Localization
  • change events via websocket (needs subscription for this entity)

Further points&questions:



Entities:

  • NetworkElementConnection (filter: isRequired:boolean, connectionState: enum<string>)
  • NetworkElementConnectionLog
  • NetworkElementConfiguration (only proxy for restconf) → implemented in APIGateway
  • FaultCurrent
  • FaultLog
  • (Log)
  • PMData
  • MediatorServer
  • Inventory
  • Maintenance
  • Status

Request-Url:

POST /restconf/operations/data-provider:{lowercase(REQ_METHOD)}-{entity}[-list]

e.g.:

POST /restconf/operations/data-provider:read-mediator-server-list
POST /restconf/operations/data-provider:create-mediator-server
POST /restconf/operations/data-provider:update-mediator-server
POST /restconf/operations/data-provider:delete-mediator-server


for default request-methods:

CREATE, READ, UPDATE, DELETE


Filter-Object:


{
  "filter":[{
     “property":"<property-name>",
     "filtervalue":"<filter-string>"
  }],
  "sortorder":[{
      "property":"<property-name",
      "sortorder":"ascending|descending"
    }
  ],
  "pagination":{
     "size":20,
     "page":1     
  }
}


Request Entity-Example:

POST /restconf/operations/data-provider:get-entity
{
  "input":{
    "filter":[],
    "sortorder":[],
    "pagination":{
      "size":20,
      "page":1
    }
  }
}

Response:

{
  "output": {
    "page": 1,
    "totalSize": 3,
    "data": [
        {
            "_id": "Sim2230/LP-MWPS-TTP-RADIO/rslIsExceeded",
            "nodeName": "Sim2230",
            "counter": "2",
            "timeStamp": "2017-01-01T01:00:00.0Z",
            "objectId": "LP-MWPS-TTP-RADIO",
            "problem": "rslIsExceeded",
            "severity": "Critical",
            "type": "ProblemNotificationXml"
        },
        {
            "_id": "Sim2231/LP-MWPS-TTP-RADIO/rslIsExceeded",
            "nodeName": "Sim2231",
            "counter": "3",
            "timeStamp": "2017-01-01T02:00:00.0Z",
            "objectId": "LP-MWPS-TTP-RADIO",
            "problem": "rslIsExceeded",
            "severity": "Critical",
            "type": "ProblemNotificationXml"
        },
        {
            "_id": "Sim2230/LP-MWPS-TTP-RADIO/signalLost",
            "nodeName": "Sim2230",
            "counter": "4",
            "timeStamp": "2017-01-01T03:00:00.0Z",
            "objectId": "LP-MWPS-TTP-RADIO",
            "problem": "signalLost",
            "severity": "Major",
            "type": "ProblemNotificationXml"
        }
    ]
  }
}


POST /restconf/operations/data-provider:get-entity
{
  "entity":"fault",
  "filter":[],
  "sortorder":[{
     "property":"timeStamp",
     "sortorder":"descending"
   },
   { 
     "property":"nodeName",
     "sortorder":"ascending"
  }],
  "pagination":{
    "size":20,
    "page":1
  }
}

Response:

{
    "page": 1,
    "totalSize": 3,
    "data": [
        {
            "_id": "Sim2230/LP-MWPS-TTP-RADIO/signalLost",
            "nodeName": "Sim2230",
            "counter": "4",
            "timeStamp": "2017-01-01T03:00:00.0Z",
            "objectId": "LP-MWPS-TTP-RADIO",
            "problem": "signalLost",
            "severity": "Major",
            "type": "ProblemNotificationXml"
        },
        {
            "_id": "Sim2231/LP-MWPS-TTP-RADIO/rslIsExceeded",
            "nodeName": "Sim2231",
            "counter": "3",
            "timeStamp": "2017-01-01T02:00:00.0Z",
            "objectId": "LP-MWPS-TTP-RADIO",
            "problem": "rslIsExceeded",
            "severity": "Critical",
            "type": "ProblemNotificationXml"
        },
        {
            "_id": "Sim2230/LP-MWPS-TTP-RADIO/rslIsExceeded",
            "nodeName": "Sim2230",
            "counter": "2",
            "timeStamp": "2017-01-01T01:00:00.0Z",
            "objectId": "LP-MWPS-TTP-RADIO",
            "problem": "rslIsExceeded",
            "severity": "Critical",
            "type": "ProblemNotificationXml"
        }
    ]
}


Table Screenshot Examples

Table footer

Fault


Log

  • No labels