I'm breaking apart the badly written client.py into other classes, so we can move forward with the implementation of the BankAuthService. This is purely refactor, there is no functional changes in the application. This will enable us to more easily implement the different endpoints for the Bank Auth Service described here
Main changes:
There is a new interface called BankClient and an implementation for our gocardless/nordigen client called GocardlessClient
Coordination of Store and Token is now handled by BankClientStoreTokenHandler
Coordination of fetching URL/Requisitions is now done by GocardlessUrlClientStoreHandler. Requisition is very specific to gocardless I'm leaving some TODOs for a next PR to refactor it.
I'm still lacking tests, posting this PR as a draft to get early reviews.
I'm breaking apart the badly written
client.py
into other classes, so we can move forward with the implementation of the BankAuthService. This is purely refactor, there is no functional changes in the application. This will enable us to more easily implement the different endpoints for the Bank Auth Service described hereMain changes:
BankClient
and an implementation for our gocardless/nordigen client calledGocardlessClient
BankClientStoreTokenHandler
GocardlessUrlClientStoreHandler
. Requisition is very specific to gocardless I'm leaving some TODOs for a next PR to refactor it.I'm still lacking tests, posting this PR as a draft to get early reviews.