Monday, July 9, 2018

Decision Engine

Go to start of metadata

I have created a high-level design picture here for the starters.



Function Executors

<beans:entry key="FetchCount" value-ref="fetchCounter"/> is used as part of Enrichment of Event Attributes.
All the remaining executors are used as part of Rule Execution.
<util:map id="functionExecutors" map-class="java.util.HashMap" key-type="java.lang.String" value-type="wavecrest.decisionengine.executor.FunctionExecutor">
<beans:entry key="FetchCount" value-ref="fetchCounter"/>
<beans:entry key="RefreshCount" value-ref="refreshCounter"/>
<beans:entry key="IncrementCount" value-ref="incrementCounter"/>
<beans:entry key="RaiseAlert" value-ref="raiseAnAlert"/>
<beans:entry key="MaxMind" value-ref="maxmind"/>
<beans:entry key="SetErrorCode" value-ref="setErrorCode"/>
<beans:entry key="SuspendCard" value-ref="cardStatusChangeExecuter" />
<beans:entry key="AuthDeclinedNotification" value-ref="authDeclinedNotificationExecuter" />
<beans:entry key="AuthDeclinedSecurityAlertNotification" value-ref="authDeclinedSecurityAlertNotificationExecuter" />
<beans:entry key="AuthDeclinedCardSuspendedNotification" value-ref="authDeclinedCardSuspendedAlertNotificationExecuter" />
<beans:entry key="BlockCard" value-ref="cardStatusChangeExecuter" />
<beans:entry key="PFraudCard" value-ref="cardStatusChangeExecuter" />
<beans:entry key="RaiseKYCAlertOnStatusChange" value-ref="raiseCSRAlertExecutor" />
<beans:entry key="SameMerchantTransactionAlert" value-ref="raiseCSRAlertExecutor" />
<beans:entry key="DocUploadNotification" value-ref="docUploadNotificationExecutor" />
<beans:entry key="CreateCSRTicketOnCardPFraud" value-ref="createCSRTicketExecutor" />
<beans:entry key="ConcatenateAttrs" value-ref="concatenateAttrsExecutor"/>
<beans:entry key="CheckBlacklist" value-ref="checkBlacklistExecutor"/>
<beans:entry key="SendLoginBlockedUserNotification" value-ref="sendPostmanNotificationExecuter" />
<beans:entry key="logRuleExecutor" value-ref="logRuleExecutor" />
</util:map>

LogRuleExecutor is a special function executor which is used to print the rule conditions which failed a particular transaction.
<beans:entry key="logRuleExecutor" value-ref="logRuleExecutor" /> 
Below is the sample log trace for the LogRuleExecutor.
RuleConfiguration RuleTemplateName : KYB 1 - KYC 1 User Total Unloads, successunloadplatformamt_userId_platformCurrency > 25000, ActionsList : , ErrorCode : 910002

No comments:

Security Certificates

  1. Cryptography Basics Understand Key Concepts : Encryption, decryption, hashing, and digital signatures. Key terms: confidentiality, inte...