Commit b9b12a35 authored by Jgleeson's avatar Jgleeson
Browse files

Add legacy orphan slayer and pipeline overview diagrams

parent 7dd468f2
# fr-tech-diagrams
Repository for Fundraising Tech diagrams
\ No newline at end of file
Repository for Fundraising Tech diagrams.
#### UML Diagrams
This repo contains text definition files which can used to generate diagrams over at https://plantuml.com/
To use, head over to the Plant UML running server [here](https://www.plantuml.com/plantuml/uml/SyfFKj2rKt3CoKnELR1Io4ZDoSa70000) and paste the text definition into the text area
@startuml
title Ingenico Orphan Slayer
(*) --> "orphan_slayer_process_orphans()"
--> "$orphan = PendingDatabase::get_oldest()"
if "$orphan['contribution_tracking_id']?" then
-->[yes] "$slayer->rectify($orphan)"
--> "$adapter->rectifyOrphan($orphan)"
if "shouldRectifyOrphan()?" then
->[no] "Skip pending record."
else
-->[yes] if "$orphan['contribution_id']?" then
-->[no] "$adapter->processDonorReturn()"
--> "$adapter->do_transaction('Confirm_CreditCard')"
--> "$status = $this->getOrderStatusFromProcessor()"
--> "$adapter->post_process_getHostedPaymentStatus()"
--> "$adapter->post_process_get_orderstatus()"
--> "$adapter->runAntifraudFilters()"
--> "$fraudFilter->sendAntifraudMessage()"
--> "pushMessage('payments-antifraud')"
if "$status->forceCancel()?" then
->[Yes] "$adapter->cancelCreditCardPayment()"
--> "PendingDatabase::deleteMessage($orphan);"
else
->[No] if "$statusCode?" then
-->[PENDING] "Try again later. bug?"
--> "PendingDatabase::deleteMessage($orphan);"
else
-->[FAILED] "$adapter->cancelCreditCardPayment()"
--> "PendingDatabase::deleteMessage($orphan);"
else
-->[PENDING_POKE] "$adapter->finalizeCreditCardPayment()"
--> "$adapter->approvePayment()"
--> "$adapter->finalizeInternalStatus()"
--> "$adapter->sendFinalStatusMessage()"
--> "pushMessage('payments-init')"
--> "$adapter->postProcessDonation()"
--> "pushMessage('donations')"
--> "PendingDatabase::deleteMessage($orphan);"
endif
endif
else
-->[yes] "$adapter->cancel($orphan)"
--> "PendingDatabase::deleteMessage($orphan);"
endif
endif
else
-->[no] "$slayer->cancel($orphan)"
--> "$adapter->cancel($orphan)"
--> "PendingDatabase::deleteMessage($orphan);"
endif
@enduml
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment