@startuml
!define MS_SERVICE manage-account-and-subscriber-V5
!define MS_OPERATION validate-name
!define LAST_UPDATE %date[yyyy.MM.dd 'at' HH:mm]%
!define module(x) component x <<module>> 
!define send(a,b,c) a->b : c
!define response(a,b) a-->b : Response

title
 MS: MS_SERVICE/MS_OPERATION
 Last update: LAST_UPDATE
 
end title

/' 
 ' This is our suppression for the footbox (aka. our diagrams box a the bottom of each flow
' tower - comment out the next line and regenerate the diagram, to see what I mean)
'/
hide footbox


/'
' The spacing in the following text is important. 
 ' 
 ' Trust me.
'/ 

center footer

Copyright (c) 2019 Amdocs.

Information Security Level 1 - Confidential

CONTAINS RESTRICTED - PROPRIETARY INFORMATION

This document is strictly confidential and proprietary; to be used only by authorized persons
on a need to know basis, and must not be distributed without specific permission.

In the event of unauthorized use of this document or the confidential information it contains,
violators will be subject to sever disciplinary action, based on Amdocs regulations, as well as
any other sanctions applicable by law.

endfooter


participant Channel
participant "manage-account-\nand-subscriber-V5\nMS" as PN
database DB

skinparam sequenceArrowThickness 2
skinparam ArrowColor  #blue 

Channel -> PN: validate-name \n Token
Activate PN #lightgreen

send(PN,DB,getBlackListedInvalidNames \nfrom BLACKLISTED_NAMES)
Activate DB #lightgreen

response(DB,PN)
Deactivate DB


send(PN,DB,getBlackListedSpecialChars \nfrom GENERIC_CODES)
Activate DB #lightgreen

response(DB,PN)
Deactivate DB

response(PN,Channel)
Deactivate PN
@enduml