ComdirectTransactionsApp.java
package eu.wuttke.comdirect.cli;
import com.fasterxml.jackson.databind.ObjectMapper;
import eu.wuttke.comdirect.account.AccountService;
import eu.wuttke.comdirect.account.AccountsPage;
import eu.wuttke.comdirect.account.TransactionsPage;
import eu.wuttke.comdirect.login.*;
import eu.wuttke.comdirect.util.ComdirectException;
import eu.wuttke.comdirect.util.SimpleHttpClient;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
class ComdirectTransactionsApp {
public static void main(String[] args) throws IOException, ComdirectException {
SimpleHttpClient myClient = new SimpleHttpClient();
LoginCredentials credentials = new LoginCredentials(
System.getenv("clientId"),
System.getenv("clientSecret"),
System.getenv("userName"),
System.getenv("password")
);
InitiateLoginService service1 = new InitiateLoginService(myClient);
InitiateLoginResult result1 = service1.initiateLogin(credentials);
System.out.println("Press ENTER after accepting the Push TAN");
new BufferedReader(new InputStreamReader(System.in)).readLine();
FinalizeLoginService service2 = new FinalizeLoginService(myClient);
ComdirectSession session = service2.finalizeLogin(credentials, result1, "");
AccountService service3 = new AccountService(myClient);
AccountsPage accounts = service3.getAccounts(session);
TransactionsPage transactions = service3.getTransactions(session, accounts.getValues().get(0).getAccountId());
new ObjectMapper().writerFor(TransactionsPage.class).writeValue(System.out, transactions);
}
}