diff options
Diffstat (limited to 'docs')
-rw-r--r-- | docs/Filter/Filter.rst | 44 | ||||
-rw-r--r-- | docs/Installation/Installation.rst | 6 | ||||
-rw-r--r-- | docs/message-router/message-router.rst | 335 | ||||
-rw-r--r-- | docs/release-notes.rst | 54 |
4 files changed, 263 insertions, 176 deletions
diff --git a/docs/Filter/Filter.rst b/docs/Filter/Filter.rst index 7b93694..b792a43 100644 --- a/docs/Filter/Filter.rst +++ b/docs/Filter/Filter.rst @@ -63,7 +63,7 @@ Types of Filters - **Assigned:**
- Choose a field from the event to check for assignment. This filter
- matches when the field is assigned.
+ matches when the field is assigned.
+-------------------+--------------------------------------------------------+------------+-----------------+
| **Field** | **Description** | **Type** | **Notes** |
@@ -98,6 +98,7 @@ Types of Filters +-------------+---------------------------------------------------+------------+--------------+
- **Equals:**
+
- Choose a field from the event and a value to check for equality.
+-------------+----------------------------------------------+------------+--------------+
@@ -109,6 +110,7 @@ Types of Filters +-------------+----------------------------------------------+------------+--------------+
- **FlatironObjectExists**
+
- Matches when the given object exists in the given Flatiron instance.
+-------------+---------------------------------------------+------------+--------------+
@@ -121,7 +123,7 @@ Types of Filters - **IsAging**
- Choose a field to test. This filter matches if the expression is
- numeric.
+ numeric.
+-------------+---------------------------------------------+------------+--------------+
| **Field** | **Description** | **Type** | **Notes** |
@@ -139,7 +141,7 @@ Types of Filters | field | The field to test. Supports ${} notation. | STRING | Any string |
+-------------+---------------------------------------------+------------+--------------+
-- **MathCondition**
+- **MathCondition**
- Choose a field from the event and a value for logical math conditions.
+-------------+-------------------------------------------------+------------+-----------------------------------+
@@ -165,7 +167,7 @@ Types of Filters | filter | The filter to negate. | FILTER | A filter |
+-------------+-------------------------+------------+-------------+
-- **NotEqual**
+- **NotEqual**
- Choose a field from the event and a value to check for inequality.
+-------------+----------------------------------------------+------------+--------------+
@@ -176,7 +178,7 @@ Types of Filters | value | The value to match. Supports ${} notation. | STRING | Any string |
+-------------+----------------------------------------------+------------+--------------+
-- **NotOneOf**
+- **NotOneOf**
- Match when the specified field does not have a value from the given
list.
@@ -188,7 +190,7 @@ Types of Filters | values | The matching values. | LIST | A list of strings |
+-------------+---------------------------------------------+------------+---------------------+
-- **OneOf**
+- **OneOf**
- Match when the specified field has a value from the given list.
+-------------+---------------------------------------------+------------+---------------------+
@@ -246,9 +248,9 @@ Types of Filters - **WithinSecondsFrom**
- This filter matches when the specified epoch time value is within the
- given number of seconds from the baseline time value. Both time values
- are assumed to be in seconds. If a value is in milliseconds, set
- baselineTimeInMillis and/or eventTimeInMillis to true.
+ given number of seconds from the baseline time value. Both time values
+ are assumed to be in seconds. If a value is in milliseconds, set
+ baselineTimeInMillis and/or eventTimeInMillis to true.
+------------------------+------------------------------------------------------------+------------+-----------------+
| **Field** | **Description** | **Type** | **Notes** |
@@ -266,9 +268,9 @@ Types of Filters - **WithinTimeFromNow**
- This filter matches when the named field has an epoch time value
- within the given number of seconds from the current time. The event's
- time value is assumed to be in seconds. If it's in milliseconds, set
- eventTimeInMillis to true.
+ within the given number of seconds from the current time. The event's
+ time value is assumed to be in seconds. If it's in milliseconds, set
+ eventTimeInMillis to true.
+---------------------+---------------------------------------------------------+------------+-----------------+
| **Field** | **Description** | **Type** | **Notes** |
@@ -286,6 +288,7 @@ Types of Filters only that set of message which are specified in limit.
.. code:: bash
+
Suppose if we set limit=2, then only 2 sets of data will be consumed.
*Get \ **<<topicName>>/group/2?limit=4***
Let us suppose if
@@ -385,12 +388,12 @@ Types of Filters +-----------------------------------------+
- This filter matches events in which the field "foo" has value "abc"
- and the field "bar" is assigned to some value (as opposed to not being
- present on the event).
+ and the field "bar" is assigned to some value (as opposed to not being
+ present on the event).
- Filters are used by the consumers to filter out data and consume only
- specific set of data which matches the conditions mentioned in filter.
+ specific set of data which matches the conditions mentioned in filter.
- Filters can be passed as a query parameter by the consumer in consume
- request as mentioned below:
+ request as mentioned below:
- **http://localhost:8080/DMaaP/dmaaprest/events/DMaaP/consumergroup/mHOeNFY4XiWx4CBa?filter=\\{"class":"Equals",
"field":"email", "value":"`test@abc.com <mailto:test@att.com>`__" }**
- Filters can be applied only on data in JSON format i.e. if applied,
@@ -401,7 +404,7 @@ Types of Filters the GET request. This will filter the stream of messages sent back to
the subscriber, but for this to work, there are some requirements:
- - The message payload must be JSON
+ - The message payload must be JSON
- Only a filter built from Highland Park's Standard Library may be
used. (The Cambria API server doesn't have access to plugged in
@@ -426,6 +429,7 @@ Remember, only Highland Park standard library filter components can be used -- no plug-ins are available in the Cambria server context.
.. code:: bash
+
package org.onap.sa.highlandPark.integration;
import java.io.IOException;
@@ -586,9 +590,9 @@ used -- no plug-ins are available in the Cambria server context. **Filter Builder**
MR server-side filtering allows a consumer to filter the stream of
-messages returned from the GET call. The following link provide details
-of building some of the filter to illustrate Filter Builder. It is not
-meant to cover and provide examples of every filter
+ messages returned from the GET call. The following link provide details
+ of building some of the filter to illustrate Filter Builder. It is not
+ meant to cover and provide examples of every filter
diff --git a/docs/Installation/Installation.rst b/docs/Installation/Installation.rst index 3723a19..5232bd4 100644 --- a/docs/Installation/Installation.rst +++ b/docs/Installation/Installation.rst @@ -24,8 +24,10 @@ kafka runs on 172.18.0.2 and dmaap on 172.18.0.4. 4) Install docker and docker-compose
5) Go to messageservice/src/main/resources/docker-compose and run:
-
- docker-compose up –d
+
+ .. code:: bash
+
+ docker-compose up # add -d argument to start process as a daemon (background process)
This should start 3 containers.
diff --git a/docs/message-router/message-router.rst b/docs/message-router/message-router.rst index 8bc94b2..43799a7 100644 --- a/docs/message-router/message-router.rst +++ b/docs/message-router/message-router.rst @@ -54,21 +54,20 @@ it must be noted, that, except in very specific circumstances, messages are not inspected for content.
-+-------------------------+----------------------------------------------------------------------------------------------------------------+
-| Content-Type | Description |
-+=========================+================================================================================================================+
-| text/plain | Each line in the POST body is treated as a separate message. No partition key is specified, and therefore no |
-| | order is guaranteed. This format is mainly for test, as messages are highly likely to be re-ordered when |
-| | delivered through the Kafka cluster. |
-+-------------------------+----------------------------------------------------------------------------------------------------------------+
-| application/json | The payload maybe a single JSON object or a JSON array of JSON objects. Each object is handled as an individual|
-| | message..Note that use of this format may result in equivalent but altered JSON objects sent to consumers. |
-| | That's because MR uses a standard JSON parser to read each object into memory before pushing the object to the |
-| | Kafka system. At that point, the JSON object is re-written from the in-memory object. This can result in |
-| | re-ordered fields or changes in whitespace. If you want to preseve JSON objects exactly, |
-| | use application/cambria. Recommended to follow the JSON format after validating the |
-| | message in https://jsonformatter.curiousconcept.com/ |
-+-------------------------+----------------------------------------------------------------------------------------------------------------+
++-------------------------+-----------------------------------------------------------------------------------------------------------------+
+| Content-Type | Description |
++=========================+=================================================================================================================+
+| text/plain | Each line in the POST body is treated as a separate message. No partition key is specified, and therefore no |
+| | order is guaranteed. This format is mainly for test, as messages are highly likely to be re-ordered when |
+| | delivered through the Kafka cluster. |
++-------------------------+-----------------------------------------------------------------------------------------------------------------+
+| application/json | The payload maybe a single JSON object or a JSON array of JSON objects. Each object is handled as an individual |
+| | message..Note that use of this format may result in equivalent but altered JSON objects sent to consumers. |
+| | That's because MR uses a standard JSON parser to read each object into memory before pushing the object to the |
+| | Kafka system. At that point, the JSON object is re-written from the in-memory object. This can result in |
+| | re-ordered fields or changes in whitespace. If you want to preseve JSON objects exactly, |
+| | use application/cambria. Recommended to follow the JSON format. |
++-------------------------+-----------------------------------------------------------------------------------------------------------------+
Publishers
-----------
@@ -92,20 +91,21 @@ POST http(s)://{HOST:PORT}/events/{topicname} Request Parameters
==================
-+--------------------------+---------------------------------+------------------+------------+-----------+-------------+--------------------------------+-----------------------------+
-| Name | Description | Param Type | Data type | Max Len | Required | Format | Valid/EXample values |
-+==========================+=================================+==================+============+===========+=============+================================+=============================+
-| Topicname | topic name to be posted | Path | String | 40 | Y | <app namespace>.<topicname> | org.onap.crm.empdetails |
-+--------------------------+---------------------------------+------------------+------------+-----------+-------------+--------------------------------+-----------------------------+
-| content-type | To specify type of message | Header | String | 20 | N | | application/json |
-+--------------------------+---------------------------------+------------------+------------+-----------+-------------+--------------------------------+-----------------------------+| Username | userid | Header | String | | N | Basic Authentication Header | |
-+--------------------------+---------------------------------+------------------+------------+-----------+-------------+--------------------------------+-----------------------------+
-| Password | userid | Header | String | | N | Basic Authentication Header | |
-+--------------------------+---------------------------------+------------------+------------+-----------+-------------+--------------------------------+-----------------------------+
-| partitionKey | | QueryParam | String | | N | String value |?Partitionkey=123 |
-+--------------------------+---------------------------------+------------------+------------+-----------+-------------+--------------------------------+-----------------------------+
-
-**NOTE **: Publishers/user should have access on the topics. The user (id) and
++--------------------+------------------------------+------------------+------------+-----------+-------------+--------------------------------+-----------------------------+
+| Name | Description | Param Type | Data type | Max Len | Required | Format | Valid/EXample values |
++====================+==============================+==================+============+===========+=============+================================+=============================+
+| Topicname | topic name to be posted | Path | String | 40 | Y | <app namespace>.<topicname> | org.onap.crm.empdetails |
++--------------------+------------------------------+------------------+------------+-----------+-------------+--------------------------------+-----------------------------+
+| content-type | To specify type of message | Header | String | 20 | N | | application/json |
++--------------------+------------------------------+------------------+------------+-----------+-------------+--------------------------------+-----------------------------+
+| Username | userid | Header | String | | N | Basic Authentication Header | |
++--------------------+------------------------------+------------------+------------+-----------+-------------+--------------------------------+-----------------------------+
+| Password | | Header | String | | N | Basic Authentication Header | |
++--------------------+------------------------------+------------------+------------+-----------+-------------+--------------------------------+-----------------------------+
+| partitionKey | | QueryParam | String | | N | String value | ?Partitionkey=123 |
++--------------------+------------------------------+------------------+------------+-----------+-------------+--------------------------------+-----------------------------+
+
+**NOTE**: Publishers/user should have access on the topics. The user (id) and
permissions details needs to be in AAF.
Response Parameters
@@ -159,7 +159,7 @@ Response /Error Codes +------------------------+---------------+---------------------------------+---------------------------------------------------------------------------------------------------------+
Sample Request:
-==============
+===============
+-----------------------------------------------------------------------------------+
| POST |
@@ -178,7 +178,7 @@ Sample Request: +-----------------------------------------------------------------------------------+
Sample Response:
-===============
+================
+---------------------------------------------------------------------+
| HTTP/1.1 200 OK |
@@ -208,31 +208,31 @@ GET http(s)://{HOST:PORT}}/events/{topicname}/{consumegroup}/{consumerid}/{timeo Request Parameters:
===================
-+-------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-------------------------------------------------+
-| Name | Description | Param Type | data type | MaxLen | Required | Format | Valid/Example Values |
-+=============+=================================+==================+============+==============+=============+=============+=================================================+
-| Topicname | topic name to be posted | Path | String | 40 | Y | namespace. | |
-| | | | | | | String | |
-+-------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-------------------------------------------------+
-|Consumergroup| A name that uniquely identifies | Path | String | | | | |
-| | your subscribers | | | | Y | | CG1 |
-+-------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-------------------------------------------------+
-| consumerId | Within your subscribers group, | | | | | | |
-| | a name that uniquely identifies | Path | String | | y | | C1 |
-| | your subscribers process | | | | | | | +-------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-------------------------------------------------+
-| content-type| To specify type of message | | | | | |aplication/json |
-| | content(json,text or cambria) | Header | String | 20 | N | | |
-+-------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-------------------------------------------------+
-|Username | userid | Header | String | 1 | N | | |
-+-------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-------------------------------------------------+
-| Password | | Header | String | 1 | N | | |
-+-------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-------------------------------------------------+
++--------------+---------------------------------+------------------+------------+--------------+-------------+---------------------+------------------------+
+| Name | Description | Param Type | data type | MaxLen | Required | Format | Valid/Example Values |
++==============+=================================+==================+============+==============+=============+=====================+========================+
+| Topicname | topic name to be posted | Path | String | 40 | Y | namespace.String | |
++--------------+---------------------------------+------------------+------------+--------------+-------------+---------------------+------------------------+
+| Consumer | A name that uniquely identifies | Path | String | | Y | | CG1 |
+| group | your subscribers | | | | | | |
++--------------+---------------------------------+------------------+------------+--------------+-------------+---------------------+------------------------+
+| consumerId | Within your subscribers group, | Path | String | | Y | | C1 |
+| | a name that uniquely identifies | | | | | | |
+| | your subscribers process | | | | | | |
++--------------+---------------------------------+------------------+------------+--------------+-------------+---------------------+------------------------+
+| content-type | To specify type of message | Header | String | 20 | N | | aplication/json |
+| | content(json,text or cambria) | | | | | | |
++--------------+---------------------------------+------------------+------------+--------------+-------------+---------------------+------------------------+
+| Username | userid | Header | String | 1 | N | | |
++--------------+---------------------------------+------------------+------------+--------------+-------------+---------------------+------------------------+
+| Password | | Header | String | 1 | N | | |
++--------------+---------------------------------+------------------+------------+--------------+-------------+---------------------+------------------------+
**NOTE1**:Subscribers /user should have access on the topics. The user () and
permissions details needs to be in AAF.
Response Parameters:
-===================
+====================
+------------------+--------------------------------+------------+--------------+-----------------------------------------------------------+
| Name | Description | Type | Format | Valid/Example Values |
@@ -250,6 +250,11 @@ Response Parameters: | ResponseBody | Messages consumed from topic | Json | Json | |
+------------------+--------------------------------+------------+--------------+-----------------------------------------------------------+
+
+Response /Error Codes
+=====================
+
+
+---------------------------+------------------------------------+
| Response statusCode | Response statusMessage |
+===========================+====================================+
@@ -260,24 +265,37 @@ Response Parameters: | 500-599 | the DMaaP service has a problem |
+---------------------------+------------------------------------+
-+-------------------------+-----------------+----------------------------+----------------------------------------------------------------------------------------------------+
-| Error code | HTTP Code | Description |Issue reason |
-+=========================+=================+============================+====================================================================================================+
-| DMaaP\_MR\_ERR\_3008 | 413 | Request Entity too large | Message size exceeds the batch limit <limit>.Reduce the batch size and try again | +-------------------------+-----------------+----------------------------+----------------------------------------------------------------------------------------------------+
-| DMaaP\_MR\_ERR\_3009 | 500 | Internal Server Error | Unable to publish messages. Please contact administartor | +-------------------------+-----------------+----------------------------+----------------------------------------------------------------------------------------------------+
-| DMaaP\_MR\_ERR\_3010 | 400 | Bad Request | Incorrect Batching format. Please correct the batching format and try again | +-------------------------+-----------------+----------------------------+----------------------------------------------------------------------------------------------------+
-| DMaaP\_MR\_ERR\_3011 | 413 | Request Entity too large | Message size exceeds the message size limit <limit>.Reduce the message size and try again | +-------------------------+-----------------+----------------------------+----------------------------------------------------------------------------------------------------+
-
++-------------------------+-----------------+----------------------------+---------------------------------------------------------------------------------------------+
+| Error code | HTTPCode | Description | Issue Reason |
++=========================+=================+============================+=============================================================================================+
+| DMaaP\_MR\_ERR\_3008 | 413 | Request Entity too large | Message size exceeds the batch limit <limit>.Reduce the batch size and try again |
++-------------------------+-----------------+----------------------------+---------------------------------------------------------------------------------------------+
+| DMaaP\_MR\_ERR\_3009 | 500 | Internal Server Error | Unable to publish messages. Please contact administartor |
++-------------------------+-----------------+----------------------------+---------------------------------------------------------------------------------------------+
+| DMaaP\_MR\_ERR\_3010 | 400 | Bad Request | Incorrect Batching format. Please correct the batching format and try again |
++-------------------------+-----------------+----------------------------+---------------------------------------------------------------------------------------------+
+| DMaaP\_MR\_ERR\_3011 | 413 | Request Entity too large | Message size exceeds the message size limit <limit>.Reduce the message size and try again |
++-------------------------+-----------------+----------------------------+---------------------------------------------------------------------------------------------+
+| DMaaP\_MR\_ERR\_5012 | 429 | Too many requests | This client is making too many requests. Please use a long poll setting to decrease the |
+| | | | number of requests that result in empty responses. |
++-------------------------+-----------------+----------------------------+---------------------------------------------------------------------------------------------+
+| | 503 | Service Unavailable | Service Unavailable. |
++-------------------------+-----------------+----------------------------+---------------------------------------------------------------------------------------------+
Sample Request:
-==============
+===============
+----------------------------------------------------------------------------------------------------+
| GET http://<hostname>:3904/events/com.att.dmaap.mr.sprint/mygroup/mycus |
-| Content-Type: application/json |
+| |
+| Content-Type: application/json |
+| |
| Example: |
-|curl -u XXX@csp.abc.com:MRDmap2016$ -X GET -d 'MyfirstMessage' |
+| |
+|curl -u XXX@csp.abc.com:MRDmap2016$ -X GET -d 'MyfirstMessage' |
+| |
|http://mrlocal00.dcae.proto.research.att.com:3904/events/com.att.ecomp_test.crm.preDeo/myG/C1 |
+| |
|[I am r sending first msg,I am R sending first msg] |
+----------------------------------------------------------------------------------------------------+
@@ -293,25 +311,24 @@ Request URL: POST http(s)://{HOST:PORT}/topics/create
Request Parameters:
-==================
+===================
-+----------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-----------------------------------+
-| Name | Description | Param Type | data type | MaxLen | Req’d | Format | Valid/Example Values |
-+================+=================================+==================+============+==============+=============+=============+===================================+
-| Topicname | topicname to be created in MR | Body | String | 20 | Y | Json | com.att.dmaap.mr.metrics |
-+----------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-----------------------------------+
-|topicDescription| description for topic | Body | String | 15 | Y | | |
-+----------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-----------------------------------+
-|partitionCount | Kafka topic partition | Body | String | 1 | Y | | |
-+----------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-----------------------------------+
-|replicationCount| Kafka topic replication | Body | String | 1 | Y | | 3 (Default -for 3 node Kafka ) |
-+----------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-----------------------------------+
-|transaction |to create transaction id for | Body | Boolean | | | | |
-| | each message transaction | | | 1 | N | | true |
-| Enabled | | | | | | | |
-+----------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-----------------------------------+
-|Content-Type | application/json | Header | String | | | | application/json |
-+----------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-----------------------------------+
++-------------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-----------------------------------+
+| Name | Description | Param Type | datatype | MaxLen | Required | Format | Valid/Example Values |
++===================+=================================+==================+============+==============+=============+=============+===================================+
+| Topicname | topicname to be created in MR | Body | String | 20 | Y | Json | com.att.dmaap.mr.metrics |
++-------------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-----------------------------------+
+| topicDescription | description for topic | Body | String | 15 | Y | | |
++-------------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-----------------------------------+
+| partitionCount | Kafka topic partition | Body | String | 1 | Y | | |
++-------------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-----------------------------------+
+| replicationCount | Kafka topic replication | Body | String | 1 | Y | | 3 (Default -for 3 node Kafka ) |
++-------------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-----------------------------------+
+| transaction | to create transaction id for | Body | Boolean | 1 | N | | true |
+| Enabled | each message transaction | | | | | | |
++-------------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-----------------------------------+
+| Content-Type | application/json | Header | String | | | | application/json |
++-------------------+---------------------------------+------------------+------------+--------------+-------------+-------------+-----------------------------------+
+---------------------------+------------------------------------+
| Response statusCode | Response statusMessage |
@@ -323,13 +340,19 @@ Request Parameters: | 500-599 | the DMaaP service has a problem |
+---------------------------+------------------------------------+
+
+-------------------------+-----------------+--------------------------------------------------+
| Error code | HTTP Code | Description |
+=========================+=================+==================================================+
-| DMaaP\_MR\_ERR\_5001 | 500 | Failed to retrieve list of all topics | +-------------------------+-----------------+--------------------------------------------------+
-| DMaaP\_MR\_ERR\_5002 | 500 | Failed to retrieve details of topic:<topicName> | +-------------------------+-----------------+--------------------------------------------------+
-| DMaaP\_MR\_ERR\_5003 | 500 |Failed to create topic:<topicName> | +-------------------------+-----------------+--------------------------------------------------+
-| DMaaP\_MR\_ERR\_5004 | 500 | Failed to delete topic:<topicName> | +-------------------------+-----------------+--------------------------------------------------+
+| DMaaP\_MR\_ERR\_5001 | 500 | Failed to retrieve list of all topics |
++-------------------------+-----------------+--------------------------------------------------+
+| DMaaP\_MR\_ERR\_5002 | 500 | Failed to retrieve details of topic:<topicName> |
++-------------------------+-----------------+--------------------------------------------------+
+| DMaaP\_MR\_ERR\_5003 | 500 | Failed to create topic:<topicName> |
++-------------------------+-----------------+--------------------------------------------------+
+| DMaaP\_MR\_ERR\_5004 | 500 | Failed to delete topic:<topicName> |
++-------------------------+-----------------+--------------------------------------------------+
+
Response Parameters
====================
@@ -339,40 +362,41 @@ Response Parameters +==================+================================+============+==============+===========================================================+
| httpStatusCode | | | | 200, 201 etc. |
+------------------+--------------------------------+------------+--------------+-----------------------------------------------------------+
-| mrErrorCode | Numeric error code | | | 5005 |
+| mrErrorCode | Numeric error code | | | 5005 |
+------------------+--------------------------------+------------+--------------+-----------------------------------------------------------+
| errorMessage | | | | SUCCESS, or error message. |
+------------------+--------------------------------+------------+--------------+-----------------------------------------------------------+
| helpURL | helpurl | | | |
+------------------+--------------------------------+------------+--------------+-----------------------------------------------------------+
-| ResponseBody | Topic details (owner, | | | |
-| | trxEnabled=true) | Json | Json | |
+| ResponseBody | Topic details (owner, | Json | Json | |
+| | trxEnabled=true) | | | |
+------------------+--------------------------------+------------+--------------+-----------------------------------------------------------+
Sample Request:
-==============
+===============
+
+ .. code:: bash
+
+ POST http://<hostname>:3904/topic/create
+ Request Body
+ {"topicName":"com.abc.dmaap.mr.topicname","description":"This is a SAPTopic ",
+ "partitionCount":"1","replicationCount":"3","transactionEnabled":"true"}
+ Content-Type: application/json
+ Example:
+ curl -u XXXc@csp.abc.com:xxxxx$ -H 'Content-Type:application/json' -X POST -d
+ @topicname.txt http://mrlocal00.dcae.proto.research.abc.com:3904/topics/create
+ {
+ "writerAcl": {
+ "enabled": false,
+ "users": []
+ },
+ "description": "This is a TestTopic",
+ "name": "com.abc.ecomp_test.crm.Load9",
+ "readerAcl": {
+ "enabled": false,
+ "users": []
-+-----------------------------------------------------------------------------------+
-| POST http://<hostname>:3904/topic/create |
-|Request Body |
-|{"topicName":"com.abc.dmaap.mr.topicname","description":"This is a SAPTopic ", |
-| "partitionCount":"1","replicationCount":"3","transactionEnabled":"true"} |
-| Content-Type: application/json |
-|Example: |
-|curl -u XXXc@csp.abc.com:xxxxx$ -H 'Content-Type:application/json' -X POST -d |
-|@topicname.txt http://mrlocal00.dcae.proto.research.abc.com:3904/topics/create |
-|{ |
-| "writerAcl": { |
-| "enabled": false, |
-| "users": [] |
-| }, |
-| "description": "This is a TestTopic", |
-| "name": "com.abc.ecomp_test.crm.Load9", |
-| "readerAcl": { |
-| "enabled": false, |
-| "users": [] |
-+-----------------------------------------------------------------------------------+
GetTopic Details
----------------
@@ -387,11 +411,11 @@ GET http(s)://{HOST:PORT}/topics/{topicname} : To list the details of specified Request Parameters
==================
-+--------------------------+---------------------------------+------------------+------------+-----------+-------------+-----------------+-----------------------------+
-| Name | Description | Param Type | Data type | Max Len | Req’d | Format | Valid/EXample values |
-+==========================+=================================+==================+============+===========+=============+=================+=============================+
-| Topicname | topic name details | Body | String | 20 | Y | Json | com.abc.dmaap.mr.metrics |
-+--------------------------+---------------------------------+------------------+------------+-----------+-------------+-----------------+-----------------------------+
++--------------------------+-------------------------+------------------+------------+-----------+-------------+-----------------+-----------------------------+
+| Name | Description | Param Type | Data type | Max Len | Required | Format | Valid/EXample values |
++==========================+=========================+==================+============+===========+=============+=================+=============================+
+| Topicname | topic name details | Body | String | 20 | Y | Json | com.abc.dmaap.mr.metrics |
++--------------------------+-------------------------+------------------+------------+-----------+-------------+-----------------+-----------------------------+
Response Parameters
@@ -404,10 +428,10 @@ Response Parameters +------------------+------------------------+------------+----------+---------+--------------------------+
| description | | | String | | |
+------------------+------------------------+------------+----------+---------+--------------------------+
-|owner |user id who created the | | | | |
+| owner |user id who created the | | | | |
| | topic | | | | |
+------------------+------------------------+------------+----------+---------+--------------------------+
-| txenabled | true or false | | boolean| | |
+| txenabled | true or false | | boolean | | |
+------------------+------------------------+------------+----------+---------+--------------------------+
+---------------------------+------------------------------------+
@@ -422,7 +446,7 @@ Response Parameters Sample Request:
-==============
+===============
+-----------------------------------------------------------------------------------+
| GET http://<hostname>:3904/topic/com.att.dmaap.mr.testtopic |
@@ -432,7 +456,7 @@ Sample Request: | { |
| "txenabled": true, |
| "description": "This is a TestTopic", |
-| "owner": "XXXX@csp.abc.com", |
+| "owner": "XXXX@csp.abc.com", |
| "topicName": "com.abc.ecomp_test.crm.Load9" |
| }, |
| { |
@@ -448,12 +472,12 @@ Delete Topics -------------
Request URL:
-===========
+============
DELETE http(s)://{HOST:PORT}/topic/{topicname}
Sample Request:
-==============
+===============
ex: http://<hostname>:3904/dmaap/v1/topics/com.att.dmaap.mr.testopic
+---------------------------+------------------------------------+
@@ -475,38 +499,41 @@ ex: http://<hostname>:3904/dmaap/v1/topics/com.att.dmaap.mr.testopic API Inventory
-------------
-+-----------+-------------------+-----------------------------------------+---------------------------------------+----------------+----------------------------------+
-| | API Name | API Method | REST API Path | | Comments |
-+===========+===================+=========================================+=======================================+================+==================================+
-| Topics | GetAll Topics List| getTopics() | /topics | GET | |
-| +-------------------+-----------------------------------------+---------------------------------------+----------------+----------------------------------+
-| | Get All Topics | | | | |
-| |List with details | getAllTopics() | /topics/listAll | GET | |
-| +-------------------+-----------------------------------------+---------------------------------------+----------------+----------------------------------+
-| | Get individual | | | | |
-| | Topic Details | getTopic(String topicName) | /topics/{topicName} | GET | |
-| +-------------------+-----------------------------------------+---------------------------------------+----------------+----------------------------------+
-| | Create Topic | createTopic(TopicBean topicBean) | /topics/create | POST | |
-| +-------------------+-----------------------------------------+---------------------------------------+----------------+----------------------------------+
-| | Delete Topic | deleteTopicString topicName) | /topics/{topicName} | DELETE | Not used in current MR version |
-| +-------------------+-----------------------------------------+---------------------------------------+----------------+----------------------------------+
-| | Get Publishers for| getPublishersByTopicName | | | |
-| | a Topic | (String topicName) | /topics/{topicName}/producers | GET | UEB Backward Compatibility |
-| +-------------------+-----------------------------------------+---------------------------------------+----------------+ |
-| | Add a Publisher to|permitPublisherForTopic(String topicName,| /topics/{topicName}/producers/ | | |
-| |write ACLon a Topic| String producerId) | {producerId} | PUT | |
-| +-------------------+-----------------------------------------+---------------------------------------+----------------+ |
-| | Remove a Publisher|denyPublisherForTopic(String topicName,|/topics/{topicName}/producers/ | | |
-| |from write ACL on|String producerId) |{producerId} | DELETE | |
-| | a Topic | | | | |
-| +-------------------+-----------------------------------------+---------------------------------------+----------------+ |
-| |Get Consumers for a| getConsumersByTopicName | /topics/{topicName}/consumers | GET | |
-| | Topic | (String topicName) | | | |
-| +-------------------+-----------------------------------------+---------------------------------------+----------------+ |
-| | Add a Consumer to | permitConsumerForTopic(String topicName,| /topics/{topicName}/consumers/ | PUT | |
-| |read ACL on a Topic| String consumerId) | {consumerId} | | |
-| +-------------------+-----------------------------------------+---------------------------------------+----------------+ |
-| | Remove a consumer |denyPublisherForTopic(String topicName,|/topics/{topicName}/consumers/ | | |
-| |from write ACL on|String consumerId) |{consumerId} | | |
-| | a Topic | | | DELETE | |
-+-----------+-------------------+-----------------------------------------+---------------------------------------+----------------+----------------------------------+
++-----------+--------------------+-----------------------------------------+---------------------------------------+----------------+----------------------------------+
+| | API Name | API Method | REST API Path | | Comments |
++===========+====================+=========================================+=======================================+================+==================================+
+| Topics | GetAll Topics | getTopics() | /topics | GET | |
+| | List | | | | |
+| +--------------------+-----------------------------------------+---------------------------------------+----------------+----------------------------------+
+| | Get All Topics | | | | |
+| | List with details | getAllTopics() | /topics/listAll | GET | |
+| +--------------------+-----------------------------------------+---------------------------------------+----------------+----------------------------------+
+| | Get individual | | | | |
+| | Topic Details | getTopic(String topicName) | /topics/{topicName} | GET | |
+| +--------------------+-----------------------------------------+---------------------------------------+----------------+----------------------------------+
+| | Create Topic | createTopic(TopicBean topicBean) | /topics/create | POST | |
+| +--------------------+-----------------------------------------+---------------------------------------+----------------+----------------------------------+
+| | Delete Topic | deleteTopicString topicName) | /topics/{topicName} | DELETE | Not used in current MR version |
+| +--------------------+-----------------------------------------+---------------------------------------+----------------+----------------------------------+
+| | Get Publishers | getPublishersByTopicName | | | |
+| | for a Topic | String topicName) | /topics/{topicName}/producers | GET | UEB Backward Compatibility |
+| +--------------------+-----------------------------------------+---------------------------------------+----------------+ |
+| | Add a Publisher | permitPublisherForTopic | /topics/{topicName}/producers/ | PUT | |
+| | to write ACLon | (String topicName, String producerId) | {producerId} | | |
+| | a Topic | | | | |
+| +--------------------+-----------------------------------------+---------------------------------------+----------------+ |
+| | Remove a Publisher | denyPublisherForTopic(String topicName, | /topics/{topicName}/producers/ | DELETE | |
+| | from write ACL on | String producerId) | {producerId} | | |
+| | a Topic | | | | |
+| +--------------------+-----------------------------------------+---------------------------------------+----------------+ |
+| | Get Consumers for | getConsumersByTopicName | /topics/{topicName}/consumers | GET | |
+| | a Topic | (String topicName) | | | |
+| +--------------------+-----------------------------------------+---------------------------------------+----------------+ |
+| | Add a Consumer | permitConsumerForTopic(String | /topics/{topicName}/consumers/ | PUT | |
+| | to read ACL | topicName,String consumerId) | {consumerId} | | |
+| | on a Topic | | | | |
+| +--------------------+-----------------------------------------+---------------------------------------+----------------+ |
+| | Remove a consumer | denyPublisherForTopic(String topicName, | /topics/{topicName}/consumers/ | DELETE | |
+| | from write | String consumerId) | {consumerId} | | |
+| | ACL on a Topic | | | | |
++-----------+--------------------+-----------------------------------------+---------------------------------------+----------------+----------------------------------+
diff --git a/docs/release-notes.rst b/docs/release-notes.rst new file mode 100644 index 0000000..6c168cf --- /dev/null +++ b/docs/release-notes.rst @@ -0,0 +1,54 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. + +Release Notes +============= + +.. note:: + * This Release Notes must be updated each time the team decides to Release new artifacts. + * The scope of this Release Notes is for this particular component. In other words, each ONAP component has its Release Notes. + * This Release Notes is cumulative, the most recently Released artifact is made visible in the top of this Release Notes. + * Except the date and the version number, all the other sections are optional but there must be at least one section describing the purpose of this new release. + * This note must be removed after content has been added. + + +Version: x.y.z +-------------- + + +:Release Date: 2017-11-16 + + + +**New Features** + + - Pub/sub messaging metaphor to broaden data processing opportunities. + - A single solution for most event distribution needs to support a range of environments. + - Standardized topic names + - Implements a RESTful HTTP API for provisioning + - Implements a RESTful HTTP API for message transactions (i.e. pub, sub) + - Implements a RESTful HTTP API for transaction metrics + - Topic registry and discovery + + + +**Bug Fixes** + - `CIMAN-65 <https://jira.onap.org/browse/CIMAN-65>`_ and a sentence explaining what this defect is addressing. +**Known Issues** + - `CIMAN-65 <https://jira.onap.org/browse/CIMAN-65>`_ and two, three sentences. + One sentences explaining what is the issue. + + Another sentence explaining the impact of the issue. + + And an optional sentence providing a workaround. + +**Security Issues** + You may want to include a reference to CVE (Common Vulnerabilities and Exposures) `CVE <https://cve.mitre.org>`_ + + +**Upgrade Notes** + +**Deprecation Notes** + +**Other** + +=========== |