Skip to content

Commit

Permalink
temp
Browse files Browse the repository at this point in the history
  • Loading branch information
cyberphone committed Oct 6, 2019
1 parent cc71e35 commit 2093dd9
Show file tree
Hide file tree
Showing 3 changed files with 38 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,10 @@ JSONObjectWriter createAccountConsent(String specificAccountId) throws IOExcepti
consentData.setObject("access")
.setDynamic((wr) -> specificAccountId == null ?
wr.setString("availableAccounts", "allAccounts") :
wr.setArray("balances", accountEntry));
wr.setArray("balances", accountEntry)
.setArray("accounts", accountEntry));
consentData.setBoolean("combinedServiceIndicator", false)
.setInt("frequencyPerDay", 1)
.setInt("frequencyPerDay", 0)
.setBoolean("recurringIndicator", false)
.setString("validUntil",
dateOnly.format(new Date(System.currentTimeMillis() + 1000 * 60 * 60 * 48)));
Expand Down
13 changes: 11 additions & 2 deletions src/org/webpki/webapps/swedbank_psd2_saturn/RESTBaseServlet.java
Original file line number Diff line number Diff line change
Expand Up @@ -65,10 +65,16 @@ abstract class RESTBaseServlet extends HttpServlet {

static String consentId;

static String scaStatusUrl;

static String consentStatusUrl;

static String targetAccountId;

static final String OPEN_BANKING_HOST = "https://psd2.api.swedbank.com";
static String targetAccountResourseId;

static final String OPEN_BANKING_HOST = "https://psd2.api.swedbank.com";

HTTPSWrapper getHTTPSWrapper() throws IOException {
HTTPSWrapper wrapper = new HTTPSWrapper();
wrapper.setHeader("Date", httpDateFormat.format(ZonedDateTime.now(ZoneOffset.UTC)));
Expand Down Expand Up @@ -215,7 +221,10 @@ String getConsent(JSONObjectWriter jsonRequestData,
if (mustBeValid) {
throw new IOException("Unexpeded \"consentStatus\": " + consentStatus);
}
return json.getObject("_links").getObject("scaRedirect").getString("href");
JSONObjectReader links = json.getObject("_links");
scaStatusUrl = OPEN_BANKING_HOST + links.getObject("scaStatus").getString("href");
consentStatusUrl = OPEN_BANKING_HOST + links.getObject("status").getString("href");
return links.getObject("scaRedirect").getString("href");
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
import org.webpki.net.HTTPSWrapper;

public class SCAAccountSuccessServlet extends RESTBaseServlet {

private static final long serialVersionUID = 1L;

@Override
Expand All @@ -40,15 +40,36 @@ public void doPost(HttpServletRequest request, HttpServletResponse response)
if (LocalIntegrationService.logging) {
logger.info("Successful return after SCA");
}
HTTPSWrapper scaStatus = getHTTPSWrapper();
scaStatus.setHeader(HTTP_HEADER_X_REQUEST_ID, String.valueOf(X_Request_ID++));
setConsentId(scaStatus);
setAuthorization(scaStatus);
RESTUrl restUrl = new RESTUrl(scaStatusUrl)
.setBic()
.setAppId();
scaStatus.makeGetRequest(restUrl.toString());
logger.info("SCA Status:\n" + getJsonData(scaStatus).toString());

RESTUrl restUrl = new RESTUrl(OPEN_BANKING_HOST + "/sandbox/v2/accounts/" +
targetAccountId + "/balances")
HTTPSWrapper consentStatus = getHTTPSWrapper();
consentStatus.setHeader(HTTP_HEADER_X_REQUEST_ID, String.valueOf(X_Request_ID++));
setConsentId(consentStatus);
setAuthorization(consentStatus);
restUrl = new RESTUrl(OPEN_BANKING_HOST + "/sandbox/v2/consents/" + consentId)
.setBic()
.setAppId();
consentStatus.makeGetRequest(restUrl.toString());
logger.info("SCA Status:\n" + getJsonData(consentStatus).toString());

restUrl = new RESTUrl(OPEN_BANKING_HOST + "/sandbox/v2/accounts/" +
// targetAccountId + "/balances")
"AsdF01234EfgH4567" + "/balances")
.setBic()
.setAppId();
HTTPSWrapper wrapper = getHTTPSWrapper();
wrapper.setHeader(HTTP_HEADER_X_REQUEST_ID, String.valueOf(X_Request_ID++));
setConsentId(wrapper);
setAuthorization(wrapper);
logger.info(restUrl.toString());
wrapper.makeGetRequest(restUrl.toString());
JSONObjectReader json = getJsonData(wrapper);

Expand Down

0 comments on commit 2093dd9

Please sign in to comment.