From b511dbcfa89872fc3b7f5e2c163d5a93af678c56 Mon Sep 17 00:00:00 2001 From: elinuxhenrik Date: Thu, 20 Sep 2018 13:05:18 +0200 Subject: [PATCH] Add documentation for Datafile Collector Change-Id: I247e1b2583e470e75156fc0449e85c0b86a1c8e8 Issue-ID: DCAEGEN2-642 Signed-off-by: elinuxhenrik --- docs/sections/apis/DFC.rst | 97 +++++++++++++++++++++++++++++++++++++++++++ docs/sections/images/DFC.png | Bin 0 -> 43468 bytes 2 files changed, 97 insertions(+) create mode 100644 docs/sections/apis/DFC.rst create mode 100644 docs/sections/images/DFC.png diff --git a/docs/sections/apis/DFC.rst b/docs/sections/apis/DFC.rst new file mode 100644 index 00000000..0605f3fa --- /dev/null +++ b/docs/sections/apis/DFC.rst @@ -0,0 +1,97 @@ +============================== +DFC (DataFile Collector) +============================== + +:Date: 2018-09-21 + +.. contents:: + :depth: 3 +.. + +Overview +======== + +DFC will orchestrate the collection of bulk PM data flow: + 1. Subscribes to fileReady DMaaP topic + 2. Collects the file from the xNF + 3. Sends new event to DataRouter with file. + +Introduction +============ + +DFC is delivered as one **Docker container** which hosts application server and can be started by `docker-compose`. + +Functionality +============= +../images/DFC.png + + +Paths +===== + +GET /events/unauthenticated.VES_NOTIFICATION_OUTPUT +----------------------------------------------- + +Description +~~~~~~~~~~~ + +Reads fileReady events from DMaaP (Data Movement as a Platform) + + +Responses +~~~~~~~~~ + ++-----------+-------------------------------------------+ +| HTTP Code | Description | ++===========+===========================================+ +| **200** | successful response | ++-----------+-------------------------------------------+ + + + +POST /publish +-------------------------------------- + +Description +~~~~~~~~~~~ + +Publish the collected file/s as a stream to DataRouter + - file as stream + - compression + - fileFormatType + - fileFormatVersion + + +Responses +~~~~~~~~~ + ++-----------+-------------------------------------------+ +| HTTP Code | Description | ++===========+===========================================+ +| **200** | successful response | ++-----------+-------------------------------------------+ + +Compiling DFC +============= + +Whole project (top level of DFC directory) and each module (sub module directory) can be compiled using +`mvn clean install` command. + +Maven GroupId: +============== + +org.onap.dcaegen2.collectors + +Maven Parent ArtifactId: +======================== + +dcae-collectors + +Maven Children Artifacts: +========================= + +1. datafile-app-server: DFC server +2. datafile-dmaap-client: Contains implementation of DmaaP client +3. datafile-commons: Common code for whole DFC modules + + diff --git a/docs/sections/images/DFC.png b/docs/sections/images/DFC.png new file mode 100644 index 0000000000000000000000000000000000000000..216f5947430782ff12ae429b21b1abbeca8e0655 GIT binary patch literal 43468 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 AnE(I) literal 0 HcmV?d00001 -- 2.16.6