Professional Documents
Culture Documents
Component: Nisp-Utilityservice-V2
Component: Nisp-Utilityservice-V2
Component: Nisp-Utilityservice-V2
Overview
Endpoints
post notifications
Sequence Diagram
Unit Testing
Decisions:
Caching
Pagination
Error Handling
API Testing
Description
post send_email
Sequence Diagram
Unit Testing
Decisions:
Caching
Pagination
Error Handling
API Testing
Description
generate_send_email endpoint [ Depricated ]
Sequence Diagram
Unit Testing
Decisions:
Caching
Pagination
Error Handling
API Testing
Description
generate_send_sms endpoint [ Depricated ]
Sequence Diagram
Unit Testing
Decisions:
Caching
Pagination
Error Handling
API Testing
Description
poller-batch-email-generation-pc
Component Diagram
Sequence Diagram
Unit Testing
Decisions:
Caching
Pagination
Error Handling
API Testing
Description
poller-batch-email-generation-bcFlow
Sequence Diagram
Unit Testing
Decisions:
Caching
Pagination
Error Handling
API Testing
Description
poller-batch-sms-generation-bc
Sequence Diagram
Unit Testing
Decisions:
Caching
Pagination
Error Handling
API Testing
Description
poller-batch-sms-generation-pc
Sequence Diagram
Unit Testing
Decisions:
Caching
Pagination
Error Handling
API Testing
Description
Deploy: How do we build this?
Description
Cloudhub: How does this live in our iPaaS
Operate: How do we support this?
Description
Change Log
Description
Overview
This document provides detailed information of the nisp-utilityservices-v2 design.
High-Level Context <Link to all HLDs where the component is used >
https://bitbucket.org/icarensw/nisp-utilityservices-v1/src/master/
Mule 4
https://bitbucket.org/icarensw/nisp-utilityservices-v2/src/master/
API Policies:
Mule 4:
Mule 4:
Endpoints
post notifications
REST URI | SOAP Endpoint /notifications
SOAP OPERATION
Consumer nisp-policyservices-v1
Endpoint:
mad1-sf-quotes-pollerSub_Flow
adapter-portal-wi-policy-v1
Endpoint:
/me/quotes//save
nisp-ecmservices-async-v1
nisp-externaluser-v1
Endpoint:
/users
/users/password
Provider exstream-ot-proxy-v1
adapter-exstream-v1
Endpoint: /v1/exstreamproxy/cc-channels/SOAPGateway
Operations: getDocuments
AWS SES
TransactionId
subscriber-identifier
Payload
policyNumber
Sensitive Attributes
Policies ExStream-Custom-Routing-Policy
client Id and context Validation
Configuration same as nisp-utilityservices-v1
ot.endpoint OpenText Exstream Proxy HTTP Configuration dynamic Refer to global config
{
"GenericNotificationRequest": {
"DeliveryChannel": "email",
"ArchivalRequired": "no",
"EmailNotification": {
"EmailAddress": "john.doe@icare.nsw.gov.au",
"ContactName": "john doe",
"PolicyNumber": "140979201",
"SubjectLine": "Welcome to the icare workers insurance online portal",
"Url": "https://policyportal-sit3.icare.nsw.gov.au/set-password-and-security-question?token=LU3CpqlOqx8iehkSE3gR&uid=00ukbtvozszzzc4bP0h7",
"TemplateID": "PORTAL_NEW_POLICY_INVITATION_155a"
}
}
}
Failure:
{
"GenericNotificationRequest": {
"DeliveryChannel": "email",
"ArchivalRequired": "no",
"EmailNotification": {
"EmailAddress": "john.doe@icare.nsw.gov.au",
"ContactName": "john doe",
"SubjectLine": "Welcome to the icare workers insurance online portal",
"TemplateID": "PORTAL_NEW_POLICY_INVITATION_155a"
}
}
}
Success:
"GenericNotificationResponse": {
"GenericNotificationDetails": {
"NotificationStatus" : "Success"
}
Scenario 2
Failure:
{
"GenericNotificationResponse": {
"error": {
"application_code": "nisp-icare-notification",
"EIL": {
"system_name" : "ESB",
"error-code": "001",
"error-type": "Business Exception",
"error-description": "Object has missing or invalid header information subscriber-identifier"
}
}
}
}
Data Mapping Data Mapping -nisp-utilityservices-notfications-endpoint v2.0 - Portal.xlsx
Component Diagram
Sequence Diagram
Unit Testing
Test Case Title Expected Result Test Case Source File Test Case Source
<Test Case Scenario Title> <Insert Expected Result Description> <Munit Test Suite File> <Munit Test Case Name> | <Java Test Method> | <Groovy Test Method>
Decisions:
The list below outlines the technical considerations and principles considered in the design of this component
Caching
<Describe the need for cache and cache strategy used>
Pagination
<Describe the need for pagination and how it is implemented>
Error Handling
<Custom Exception Handling Implementation>
API Testing
Description
Below Test Suite is used to test COMPONENT REPO NAME : ENDPOINT LOGICAL NAME
API Tests to run Non Integrated Environment : <Component Test Suite Repo Link>
API Security Test ( Integrated environment) : <Component Test Suite Repo Link>
API Security Test ( Prod environment) : <Component Test Suite Repo Link>
Test Result <Date> : <Test Suite Name> <Insert Result Screenshot Link>
post send_email
SOAP OPERATION
Consumer NA
Provider NA
Security Policies
TransactionId
subscriber-identifier
Sensitive NA
Attributes
Policies ExStream-Custom-Routing-Policy
client Id and context Validation
ot.endpoint OpenText Exstream Proxy HTTP Configuration dynamic Refer to global configuration
{
}
Negative response:
{ "error": { "application_code": "nisp-icare-notification", "transaction_Id": "e2e601b0-b0e4-11ed-9e27-02830a416d42", "EIL": { "system_name": "ESB", "error-code": "004", "error-description": "Provider Service
currently unavailable. Please try sometime later.", "error-type": "Application Error" } } }
Component Diagram
Sequence Diagram
Unit Testing
Test Case Title Expected Result Test Case Source File Test Case Source
<Test Case Scenario Title> <Insert Expected Result Description> <Munit Test Suite File> <Munit Test Case Name> | <Java Test Method> | <Groovy Test Method>
Decisions:
The list below outlines the technical considerations and principles considered in the design of this component
Caching
<Describe the need for cache and cache strategy used>
Pagination
<Describe the need for pagination and how it is implemented>
Error Handling
<Custom Exception Handling Implementation>
API Testing
Description
Below Test Suite is used to test COMPONENT REPO NAME : ENDPOINT LOGICAL NAME
API Tests to run Non Integrated Environment : <Component Test Suite Repo Link>
API Security Test ( Integrated environment) : <Component Test Suite Repo Link>
API Security Test ( Prod environment) : <Component Test Suite Repo Link>
Test Result <Date> : <Test Suite Name> <Insert Result Screenshot Link>
SOAP
OPERATION
Consumer NA
Provider adapter-exstream-v1
Endpoint: /v1/exstreamproxy/cc-channels/SOAPGateway
Operations: getDocuments
AWS SES
Provider exstream-ot-proxy-v1: None (internal)
Security Policies
adapter-exstream-v1 : None (internal)
TransactionId
subscriber-identifier
Payload
policyNumber
Sensitive
Attributes
Policies Security:
Configuration
Property Name Description Property Type Value
ot.endpoint OpenText Exstream Proxy HTTP Configuration dynamic Refer to global config
Sample request {
"contactName":"FirstName LastName",
"policyNumber": "1234567",
"url": "http://mydomain.com/activationurl",
"templateId": "template1234",
"toAddress":"sundeep.enugula@abc.com",
"fromAddress":"No-Reply.Test@icare.nsw.gov.au",
"subjectLine":"Test"
}
Sample Success scenario ideally:
Response
{
}
"PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4KPEdlbmVyaWNOb3RpZmljYXRpb25SZXNwb25zZT4KICA8ZXJyb3I+CiAgICA8YXBwbGljYXRpb25fY29kZT5uaXNwLWljYXJlLW5vdGlmaWNhdGlvbjwvYXBwbGljYXRpb25fY
Reason: Fields in subflow are not accessible since those fields are not mapped in mainflow
Component Diagram:
Sequence Diagram
Unit Testing
Test Case Title Expected Result Test Case Source File Test Case Source
<Test Case Scenario Title> <Insert Expected Result Description> <Munit Test Suite File> <Munit Test Case Name> | <Java Test Method> | <Groovy Test Method>
Decisions:
The list below outlines the technical considerations and principles considered in the design of this component
Caching
<Describe the need for cache and cache strategy used>
Pagination
<Describe the need for pagination and how it is implemented>
Error Handling
<Custom Exception Handling Implementation>
API Testing
Description
Below Test Suite is used to test COMPONENT REPO NAME : ENDPOINT LOGICAL NAME
API Tests to run Non Integrated Environment : <Component Test Suite Repo Link>
API Security Test ( Integrated environment) : <Component Test Suite Repo Link>
API Security Test ( Prod environment) : <Component Test Suite Repo Link>
Test Result <Date> : <Test Suite Name> <Insert Result Screenshot Link>
SOAP OPERATION
Consumer NA
Provider NA
Security Policies
Key Identifiers Headers:
subscriber-identifier
Payload:
contactNumber
Sensitive Attributes
Policies ExStream-Custom-Routing-Policy
client Id and context Validation
Sample request {
"smsContactNumbers": {
"contactNumber": [
"+919618350361",
"+919502147654",
"+919441243265",
"+919652523451"
]
},
"message":"Hi Welcome to iCare!"
}
contactNumber,messageId,transactionId
919618350361,123123,123131
Negative scenario:
{ "error": { "application_code": "nisp-icare-notification", "transaction_Id": "bc51eda0-b0d2-11ed-9e27-02830a416d42", "EIL": { "system_name": "ESB", "error-code": "004", "error-description": "Provider Service
currently unavailable. Please try sometime later.", "error-type": "Application Error" } } }
Component Diagram
Sequence Diagram
Unit Testing
Test Case Title Expected Result Test Case Source File Test Case Source
<Test Case Scenario Title> <Insert Expected Result Description> <Munit Test Suite File> <Munit Test Case Name> | <Java Test Method> | <Groovy Test Method>
Decisions:
The list below outlines the technical considerations and principles considered in the design of this component
Caching
<Describe the need for cache and cache strategy used>
Pagination
<Describe the need for pagination and how it is implemented>
Error Handling
<Custom Exception Handling Implementation>
API Testing
Description
Below Test Suite is used to test COMPONENT REPO NAME : ENDPOINT LOGICAL NAME
API Tests to run Non Integrated Environment : <Component Test Suite Repo Link>
API Security Test ( Integrated environment) : <Component Test Suite Repo Link>
API Security Test ( Prod environment) : <Component Test Suite Repo Link>
Test Result <Date> : <Test Suite Name> <Insert Result Screenshot Link>
poller-batch-email-generation-pc
Below endpoint describes a poller running every 2 minutes to fetch file details from sftp location to generate emails.
Poller poller-batch-email-generation-pc
Frequency 2 minutes
Source exstream-ot-proxy-v1
adapter-onbase-v1
Configuration
Sample Response Since this is poller there's no sample payload response instead email will be sent to users
Component Diagram
Sequence Diagram
Unit Testing
Test Case Title Expected Result Test Case Source File Test Case Source
<Test Case Scenario Title> <Insert Expected Result Description> <Munit Test Suite File> <Munit Test Case Name> | <Java Test Method> | <Groovy Test Method>
Decisions:
The list below outlines the technical considerations and principles considered in the design of this component
Caching
<Describe the need for cache and cache strategy used>
Pagination
<Describe the need for pagination and how it is implemented>
Error Handling
<Custom Exception Handling Implementation>
API Testing
Description
Below Test Suite is used to test COMPONENT REPO NAME : ENDPOINT LOGICAL NAME
API Tests to run Non Integrated Environment : <Component Test Suite Repo Link>
API Security Test ( Integrated environment) : <Component Test Suite Repo Link>
API Security Test ( Prod environment) : <Component Test Suite Repo Link>
Test Result <Date> : <Test Suite Name> <Insert Result Screenshot Link>
poller-batch-email-generation-bcFlow
Poller poller-batch-email-generation-bcFlow
Frequency 2 minutes
Source exstream-ot-proxy-v1
adapter-onbase-v1
Provider NA
Security Policies
Configuration
Policies NA
Component Diagram
Sequence Diagram
Unit Testing
Test Case Title Expected Result Test Case Source File Test Case Source
<Test Case Scenario Title> <Insert Expected Result Description> <Munit Test Suite File> <Munit Test Case Name> | <Java Test Method> | <Groovy Test Method>
Decisions:
The list below outlines the technical considerations and principles considered in the design of this component
Caching
<Describe the need for cache and cache strategy used>
Pagination
<Describe the need for pagination and how it is implemented>
Error Handling
<Custom Exception Handling Implementation>
API Testing
Description
Below Test Suite is used to test COMPONENT REPO NAME : ENDPOINT LOGICAL NAME
API Tests to run Non Integrated Environment : <Component Test Suite Repo Link>
API Security Test ( Integrated environment) : <Component Test Suite Repo Link>
API Security Test ( Prod environment) : <Component Test Suite Repo Link>
Test Result <Date> : <Test Suite Name> <Insert Result Screenshot Link>
poller-batch-sms-generation-bc
Poller poller-batch-sms-generation-bc
Frequency 2 minutes
Source exstream-ot-proxy-v1
Configuration
contactNumber,messageId,transactionId
919618350361,12342324,1234241344
Data Mapping NA
Component Diagram
Process Flow Diagram
Sequence Diagram
Unit Testing
Test Case Title Expected Result Test Case Source File Test Case Source
<Test Case Scenario Title> <Insert Expected Result Description> <Munit Test Suite File> <Munit Test Case Name> | <Java Test Method> | <Groovy Test Method>
Decisions:
The list below outlines the technical considerations and principles considered in the design of this component
Caching
<Describe the need for cache and cache strategy used>
Pagination
<Describe the need for pagination and how it is implemented>
Error Handling
<Custom Exception Handling Implementation>
API Testing
Description
Below Test Suite is used to test COMPONENT REPO NAME : ENDPOINT LOGICAL NAME
API Tests to run Non Integrated Environment : <Component Test Suite Repo Link>
API Security Test ( Integrated environment) : <Component Test Suite Repo Link>
API Security Test ( Prod environment) : <Component Test Suite Repo Link>
Test Result <Date> : <Test Suite Name> <Insert Result Screenshot Link>
poller-batch-sms-generation-pc
Poller poller-batch-sms-generation
Frequency 2 minutes
Provider
AWS SNS
Sample request
Sample request not recieved yet
contactNumber,messageId,transactionId
919618350361,12342324,1234241344
Data Mapping NA
Test Case Title Expected Result Test Case Source File Test Case Source
<Test Case Scenario Title> <Insert Expected Result Description> <Munit Test Suite File> <Munit Test Case Name> | <Java Test Method> | <Groovy Test Method>
Decisions:
The list below outlines the technical considerations and principles considered in the design of this component
Caching
<Describe the need for cache and cache strategy used>
Pagination
<Describe the need for pagination and how it is implemented>
Error Handling
<Custom Exception Handling Implementation>
API Testing
Description
Below Test Suite is used to test COMPONENT REPO NAME : ENDPOINT LOGICAL NAME
API Tests to run Non Integrated Environment : <Component Test Suite Repo Link>
API Security Test ( Integrated environment) : <Component Test Suite Repo Link>
API Security Test ( Prod environment) : <Component Test Suite Repo Link>
Test Result <Date> : <Test Suite Name> <Insert Result Screenshot Link>
Splunk Dashboard <Splunk Dashboard Link to monitor metrics for the Component>
Change Log
Description
Summary of the change history to this component
Version Change Description Release Type Release Date User Stories | EREM
Incident Number