package org.openbankdata.bank.sveadirekt.client;
import org.openbankdata.core.client.AbstractBankClient;
import org.openbankdata.core.client.BankRequest;
import org.openbankdata.core.client.BankResponse;
/**
* Client class to interact with SveaDirekt's web.
*/
public class SveaDirektBankClient extends AbstractBankClient {
@Override
protected boolean activateSession() {
if (!get(new BankRequest("https://services.sveadirekt.se/mypages/sv/").skipAuthentication(true))
.ok()) {
return false;
}
BankRequest request =
new BankRequest("https://services.sveadirekt.se/mypages/sv/j_security_check")
.addParam("j_username", getUsername())
.addParam("j_password", getPassword())
.skipAuthentication(true);
return isLoginSuccessful(post(request));
}
private boolean isLoginSuccessful(BankResponse pResponse) {
boolean ok = pResponse.ok();
String body = pResponse.body();
int index = body.indexOf("SveaDirekt - Mina Sidor");
return ok && index != -1;
}
}