class RemoteAccountInformationService implements AccountInformationService {

    @Override
    public Response<String> getTransactionListAsString(
        String accountId, RequestHeaders requestHeaders, RequestParams requestParams
    ) {
        ResponseEntity<String> responseEntity = getTransactionListFromClient(
            accountId, requestParams, requestHeaders
        );

        String body = responseEntity.getBody();
        if (requestHeaders.isAcceptJson()) {
            TransactionsResponse200Json json = null;
            try {
                json = objectMapper.readValue(body, TransactionsResponse200Json.class);
                body = objectMapper.writeValueAsString(json);
            } catch (IOException e) {
                throw new Xs2aAdapterClientParseException(e);
            }
        }

        return new Response<>(
            responseEntity.getStatusCodeValue(),
            body,
            responseHeadersMapper.getHeaders(responseEntity.getHeaders())
        );
    }

    public  RemoteAccountInformationService(
        AccountInformationClient client, ObjectMapper objectMapper
    );
    public  RemoteAccountInformationService(AccountInformationClient client);

}