User documentation added 45/66345/1
authorpwielebs <piotr.wielebski@nokia.com>
Thu, 13 Sep 2018 11:49:33 +0000 (13:49 +0200)
committerpwielebs <piotr.wielebski@nokia.com>
Thu, 13 Sep 2018 11:56:41 +0000 (13:56 +0200)
Change-Id: Ic5a14b247123a94fcfb1348b372d1603b6c26107
Issue-ID: DCAEGEN2-398
Signed-off-by: pwielebs <piotr.wielebski@nokia.com>
docs/sections/apis/PRH.rst [new file with mode: 0644]
docs/sections/apis/PRH.yaml [new file with mode: 0644]
docs/sections/images/prhAlgo.png [new file with mode: 0644]
docs/sections/offeredapis.rst

diff --git a/docs/sections/apis/PRH.rst b/docs/sections/apis/PRH.rst
new file mode 100644 (file)
index 0000000..f693ef7
--- /dev/null
@@ -0,0 +1,146 @@
+==============================
+PRH (PNF Registration Handler)
+==============================
+
+:Date: 2018-09-13
+
+.. contents::
+    :depth: 3
+..
+
+Overview
+========
+
+Physical Network Function Registration Handler is responsible for registration of PNF (Physical Network Function) to
+ONAP (Open Network Automation Platform) in plug and play manner. 
+
+Introduction
+============
+
+PRH is delivered as one **Docker container** which hosts application server and can be started by `docker-compose`.
+
+Functionality
+=============
+.. image:: ../images/prhAlgo.png
+
+
+Paths
+=====
+
+GET /events/unauthenticated.VES_PNFREG_OUTPUT
+-----------------------------------------------
+
+Description
+~~~~~~~~~~~
+
+Reads PNF registration fromD DMaaP (Data Movement as a Platform)
+
+
+Responses
+~~~~~~~~~
+
++-----------+-------------------------------------------+
+| HTTP Code | Description                               |
++===========+===========================================+
+| **200**   | successful response                       |
++-----------+-------------------------------------------+
+
+
+PATCH /aai/v12/network/pnfs/{pnf-name}
+--------------------------------------
+
+Description
+~~~~~~~~~~~
+
+Update AAI (Active and Available Inventory) PNF's specific entries:
+    - ipv4 to ipaddress-v4-oam
+    - ipv6 to ipaddress-v6-oam
+
+Parameters
+~~~~~~~~~~
+
++----------+---------------+---------------------------------+------------------+
+| Type     | Name          | Description                     | Schema           |
++==========+===============+=================================+==================+
+| **Path** | | **pnf-name**| Name of the PNF.                | string (text)    |
+|          | | *required*  |                                 |                  |
++----------+---------------+---------------------------------+------------------+
+| **Body** | **patchbody** | Required patch body.            |                  |
++----------+---------------+---------------------------------+------------------+
+
+
+Responses
+~~~~~~~~~
+
++-----------+-------------------------------------------+
+| HTTP Code | Description                               |
++===========+===========================================+
+| **200**   | successful response                       |
++-----------+-------------------------------------------+
+
+
+POST /events/unauthenticated.PNF_READY
+--------------------------------------
+
+Description
+~~~~~~~~~~~
+
+Publish PNF_READY to DMaaP and set:
+    - pnf-id to correlationID
+    - ipv4 to ipaddress-v4-oam
+    - ipv6 to ipaddress-v6-oam
+
+Parameters
+~~~~~~~~~~
+
++----------+----------------+---------------------------------+------------------+
+| Type     | Name           | Description                     | Schema           |
++==========+================+=================================+==================+
+| **Body** | | **postbody** | Required patch body.            | `hydratorappput  |
+|          | | *required*   |                                 | <#_hydratorapppu |
+|          |                |                                 | t>`__            |
++----------+----------------+---------------------------------+------------------+
+
+
+Responses
+~~~~~~~~~
+
++-----------+-------------------------------------------+
+| HTTP Code | Description                               |
++===========+===========================================+
+| **200**   | successful response                       |
++-----------+-------------------------------------------+
+
+Compiling PRH
+=============
+
+Whole project (top level of PRH directory) and each module (sub module directory) can be compiled using 
+`mvn clean install` command.   
+
+Main API Endpoints
+==================
+
+Running with dev-mode of PRH
+    - Heartbeat: **http://<container_address>:8100/heartbeat** or **https://<container_address>:8443/heartbeat**
+    - Start PRH: **http://<container_address>:8100/start** or **https://<container_address>:8433/start**
+    - Stop PRH: **http://<container_address>:8100/stopPrh** or **https://<container_address>:8433/stopPrh**
+
+Maven GroupId:
+==============
+
+org.onap.dcaegen2.services
+
+Maven Parent ArtifactId:
+========================
+
+dcae-services
+
+Maven Children Artifacts:
+=========================
+
+1. prh-app-server: Pnf Registration Handler (PRH) server
+2. prh-aai-client: Contains implementation of AAI client
+3. prh-dmaap-client: Contains implementation of DmaaP client
+4. prh-commons: Common code for whole prh modules
+
+
diff --git a/docs/sections/apis/PRH.yaml b/docs/sections/apis/PRH.yaml
new file mode 100644 (file)
index 0000000..37040bc
--- /dev/null
@@ -0,0 +1,76 @@
+---
+swagger: '2.0'
+info:
+  description: This page lists all the rest apis for PRH app server.
+  version: '1.0'
+  title: PRH app server
+host: localhost:8100
+basePath: "/"
+tags:
+- name: heartbeat-controller
+  description: Check liveness of PRH service
+- name: schedule-controller
+  description: Schedule Controller
+paths:
+  "/heartbeat":
+    get:
+      tags:
+      - heartbeat-controller
+      summary: Returns liveness of PRH service
+      operationId: heartbeatUsingGET
+      produces:
+      - "*/*"
+      responses:
+        '200':
+          description: PRH sevice is living
+          schema:
+            "$ref": "#/definitions/Mono«ResponseEntity«string»»"
+        '401':
+          description: You are not authorized to view the resource
+        '403':
+          description: Accessing the resource you were trying to reach is forbidden
+        '404':
+          description: The resource you were trying to reach is not found
+  "/start":
+    get:
+      tags:
+      - schedule-controller
+      summary: Start scheduling worker request
+      operationId: startTasksUsingGET
+      produces:
+      - "*/*"
+      responses:
+        '200':
+          description: OK
+          schema:
+            "$ref": "#/definitions/Mono«ResponseEntity«string»»"
+        '401':
+          description: Unauthorized
+        '403':
+          description: Forbidden
+        '404':
+          description: Not Found
+  "/stopPrh":
+    get:
+      tags:
+      - schedule-controller
+      summary: Stop scheduling worker request
+      operationId: stopTaskUsingGET
+      produces:
+      - "*/*"
+      responses:
+        '200':
+          description: OK
+          schema:
+            "$ref": "#/definitions/Mono«ResponseEntity«string»»"
+        '401':
+          description: Unauthorized
+        '403':
+          description: Forbidden
+        '404':
+          description: Not Found
+definitions:
+  Mono«ResponseEntity«string»»:
+    type: object
+    title: Mono«ResponseEntity«string»»
+
diff --git a/docs/sections/images/prhAlgo.png b/docs/sections/images/prhAlgo.png
new file mode 100644 (file)
index 0000000..3d3c809
Binary files /dev/null and b/docs/sections/images/prhAlgo.png differ
index ace3cda..d805c5e 100644 (file)
@@ -10,5 +10,6 @@ DCAEGEN2 Components Offered APIs
    apis/inventory.rst
    apis/ves.rst
    apis/dcaecdap.rst
+   apis/PRH.rst