Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Optional Controller configuration, e.g. an SDNC instance (with A1-Adapter)
  • One entry for each near-RT-RIC, which includes:
    • The base URL of the near-RT-RIC
    • A optional list of O1 identifiers that near-RT-RIC is controlling. An application can query this service which near-RT-RIC should be addressed for which component (e.g. cells, sectors, locations, etc.) .
    • An optional reference to the controller to use, or excluded if the near-RT-RIC can be accessed directly from this A1 Policy Management Service.
    • An optional java class name to be used for the southbound interface towards the NearRT RIC. If this is not given the PMS will automatically discover the A1-P API version supported by the NearRT-RIC.
      This parameter can be used for explicitly defining a class to be used. See the example below using the "customAdapterClass" property. The class used has to be in the class path of the built container.
      This means that the PMS can be extended to support any protocol towards the NearRT RIC without changing its implementation. On how to implement such an adapter class, see the source code and the actual class referred to in the configuration example below.
  • Optional configuration for using of DMAAP. There can be one stream for requests to the component and an other stream for responses.

...

A sample configuration is included below.

Code Block
languageyml
titleapplication_configuration.json
linenumberstrue
collapsetrue
{
  "description": "Application configuration",
  "config": {    
    "controller": [
      {
        "name": "controller1",
        "baseUrl": "http://sdnc_controller:8181",
        "userName": "admin",
        "password": "Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U"
      }
    ],
    "ric": [
      {
        "name": "ric1",
        "baseUrl": "http://ric1:8085/", 
        "managedElementIds": [
          "kista_1",
          "kista_2"         ]
      },
      {
        "name": "ric2",
        "baseUrl": "http://ric2:8085/",
        "customAdapterClass": "org.onap.ccsdk.oran.a1policymanagementservice.clients.StdA1ClientVersion2$Factory",    
        "managedElementIds": [
          "kista_3",
          "kista_4"
        ]
      },
       {
        "name": "ric3",
        "baseUrl": "http://ric3:8085/",
        "controller": "controller1", 
        "managedElementIds": [
          "kista_5",
          "kista_6"
        ]
      },
       {
        "name": "ric4",
        "baseUrl": "http://ric4:8085/",
        "controller": "controller1", 
        "managedElementIds": [
          "kista_7",
          "kista_8",
          "kista_9",
          "kista_10",
          "kista_11"
         ]
      }
    ]
  }
}

...

Code Block
languageyml
titleapplication_configuration_schema.json
linenumberstrue
collapsetrue
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "config": {
      "type": "object",
      "properties": {
        "//description": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "controller": {
          "type": "array",
          "items": [
            {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string"
                },
                "baseUrl": {
                  "type": "string"
                },customAdapterClass                          "userName": {
                  "type": "string"
                },
                "password": {
                  "type": "string"
                }
              },
              "required": [
                "name",
                "baseUrl",
                "userName",
                "password"
              ],
              "additionalProperties": false
            }
          ]
        },
        "ric": {
          "type": "array",
          "items": [
            {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string"
                },
                "baseUrl": {
                  "type": "string"
                },
                "controller": {
                  "type": "string"
                }, 
                "customAdapterClass" : {
                  "type": "string"
                },
                "managedElementIds": {
                  "type": "array",
                  "items": [
                    {
                      "type": "string"
                    },
                    {
                      "type": "string"
                    }
                  ]
                }
              },
              "required": [
                "name",
                "baseUrl",
                "managedElementIds"
              ],
              "additionalProperties": false
            }
          ]
        },
        "streams_publishes": {
          "type": "object",
          "properties": {
            "dmaap_publisher": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string"
                },
                "dmaap_info": {
                  "type": "object",
                  "properties": {
                    "topic_url": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "topic_url"
                  ],
                  "additionalProperties": false
                }
              },
              "required": [
                "type",
                "dmaap_info"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "dmaap_publisher"
          ],
           "additionalProperties": false
        },
        "streams_subscribes": {
          "type": "object",
          "properties": {
            "dmaap_subscriber": {
              "type": "object",
              "properties": {
                "type": {
                  "type": "string"
                },
                "dmaap_info": {
                  "type": "object",
                  "properties": {
                    "topic_url": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "topic_url"
                  ],
                  "additionalProperties": false
                }
              },
              "required": [
                "type",
                "dmaap_info"
              ],
               "additionalProperties": false
            }
          },
          "required": [
            "dmaap_subscriber"
          ],
           "additionalProperties": false
        }
      },
      "required": [
        "ric"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "config"
  ],
  "additionalProperties": false
}

...