Commit Graph

420 Commits

Author SHA1 Message Date
dankito 2fde62e2cd Set default request timeout and made it configurable 2024-08-14 13:25:55 +02:00
dankito 0ac6059306 Using now kmp-log 2023-07-06 18:41:32 +02:00
dankito 02bbdb0453 Removed unused IThreadPool 2023-07-06 17:31:13 +02:00
dankito c8a7731ccc Fixed test setup 2023-07-06 16:52:37 +02:00
dankito 5a49c6c465 Using now kmp-web-client instead of importing Ktor manually 2023-07-06 16:37:23 +02:00
dankito 1f9d35a5f6 Using new Kotlin multiplatform hierarchy structure 2023-07-06 15:43:23 +02:00
dankito da212106a8 Updated to new versions 2023-07-06 15:22:14 +02:00
dankito 5e1d045ab9 Fixed test dependencies 2022-02-26 20:23:21 +01:00
dankito ef1f987dd1 Added ErrorCode.NetworkError 2022-02-26 20:13:49 +01:00
dankito 53bfc2d978 Added TODOs that loginName and password get written to output in JSON serialization 2022-02-25 21:25:32 +01:00
dankito 8aaf1b0962 Fixed displaying from and to 2022-02-25 21:08:13 +01:00
dankito b8c11376ed Fixed serializing Money as a 'amount' and a 'currency' field 2022-02-25 21:02:38 +01:00
dankito 22976291fd Added convenience constructor Money(String, String) 2022-02-25 20:47:17 +01:00
dankito 61eb739613 Added convenience methods for getAccountData() and transferMony() 2022-02-25 20:45:33 +01:00
dankito 8d9855efe8 Added log output to inform for which time period accounts transactions are fetched 2022-02-24 21:01:13 +01:00
dankito bed96199c8 Implemented writing account transactions to CSV files (with a very primitive CSV file writer) 2022-02-24 02:42:23 +01:00
dankito ed66168c0b Implemented serializing transactions to JSON 2022-02-24 02:13:37 +01:00
dankito 85d6b079d6 If there is more than one bank account that supports money transfer, implemented callback to ask user which one to use 2022-02-24 00:22:05 +01:00
dankito d442c02964 Implemented transferring money via command line 2022-02-24 00:00:07 +01:00
dankito ad826941dd Created BicFinder with BankFinder so that we can determine a German BIC from bank code or a German IBAN 2022-02-23 02:59:10 +01:00
dankito 8671bf058d Implemented transferMoney() 2022-02-23 01:43:41 +01:00
dankito 6512f45955 Implemented command line option retrieveTransactionsForLastNDays 2022-02-22 23:00:14 +01:00
dankito f7cde961ae Added command line options to native app to set retrieveBalance, retrieveTransactions, retrieveTransactionsFrom, retrieveTransactionsTo, preferredTanMethod and abortIfRequiresTan 2022-02-22 02:17:29 +01:00
dankito 647f60a13d Added printing bank account balance 2022-02-21 23:44:31 +01:00
dankito 3368c70202 Renamed getAccountData() to getAccountDataAsync() and added extensions methods for blocking calls to it 2022-02-21 23:42:45 +01:00
dankito ee68dd09b2 Added convenience getAccountData() method 2022-02-21 23:22:49 +01:00
dankito 3ed9e10c22 Created FinTsServerAddressFinder with BankListCreator to easily retrieve a FinTS server address to a bank code 2022-02-21 01:07:00 +01:00
dankito 73a98eea67 Extracted Currency.DefaultCurrencyCode 2022-02-20 23:22:18 +01:00
dankito 52de5a2956 Implemented new simplified data model in FinTsClient.getAccountData() 2022-02-20 23:18:40 +01:00
dankito b74b165974 Implemented that entered tan now can directly be set on TanChallenge, therefore no need of callback anymore 2022-02-20 00:17:14 +01:00
dankito 54c430af2b Replaced callbacks with coroutines 2022-02-19 13:17:02 +01:00
dankito 51c09dab7b Extracted ZeroString 2022-02-17 01:21:22 +01:00
dankito 2788c0e686 Implemented retrieving and displaying account transactions in WebApp 2022-02-17 01:19:37 +01:00
dankito 9543a8081d Fixed that constructor overloads clash on some platforms 2022-02-16 18:54:23 +01:00
dankito c3609cd33a Implemented retrieving and displaying account transactions in iOS app 2022-02-16 02:33:19 +01:00
dankito a6fd9a4d42 Implemented retrieving and displaying account transactions 2022-02-16 00:16:44 +01:00
dankito 2a301c9975 Added JavaScript node and browser targets 2022-02-15 01:50:49 +01:00
dankito 9e161c3658 Using now stackTraceToString() instead of StackTraceHelper 2022-02-14 23:50:05 +01:00
dankito 4ec366f7cd Made clearer that sendMessageAndHandleResponse() starts a new dialog 2022-02-14 00:48:01 +01:00
dankito 0888166466 Renamed FinTsClient to FinTsClientDeprecated 2022-02-13 23:56:18 +01:00
dankito ec9bfa8168 Implemented little command line application to test Kotlin/Native implementation 2022-02-13 22:59:09 +01:00
dankito 7534c6eb54 Extracted postInCoroutine() and created a blocking WebClient for Kotlin/Native so that mutable objects don't get passed between threads in Kotlin/Native 2022-02-13 22:07:11 +01:00
dankito aa532b864c Made accessing JobCount thread safe 2022-02-13 22:01:13 +01:00
dankito 2563051082 Added Kotlin/Native target 2022-02-13 22:00:07 +01:00
dankito 56f951314a Replaced atrium asserts with Kotlin test asserts 2022-02-13 00:17:45 +01:00
dankito 55881b5e79 Fixed that encoder may throws an from Throwable and not from Exception derived throwable 2022-02-12 23:47:02 +01:00
dankito da9d5c018b Replaced own Date implementation with kotlinx-datetime 2022-02-12 16:31:46 +01:00
dankito fa378f6249 Removed UUID 2022-02-12 14:21:15 +01:00
dankito 9746e419d1 Moved all extensions to package 'extensions' and grouped them by class 2022-02-12 13:52:45 +01:00
dankito fe69174db9 Removed all classes and methods from multiplatform-utils that aren't called by fints4k 2022-02-12 13:50:31 +01:00
dankito d56833e1ef Renamed module common to multiplatform-utils 2022-02-12 00:26:12 +01:00
dankito f637897dc3 Removed ui, persistence and rest projects (will be moved to separate repositories) and deactivated tools projects.
Removed Android target and using now JVM instead of JVM6.
Updated to Kotlin 1.6.10 which works much better for KMPP. Could therefore remove packForXcode() tasks
2022-02-11 23:53:35 +01:00
dankito 3c096d655f Fixed that previous dialog's chunkedResponseHandler hasn't been set on next dialog (is important when retrieving transactions and user chose to change TAN method or -media) 2022-02-07 00:18:14 +01:00
dankito c9884a380e Fixed that initDialogWithStrongCustomerAuthentication() JobContext.startNewDialog() hasn't been called causing message number to be 2 instead of 1 (and institution therefore to abort this dialog) 2022-02-07 00:18:14 +01:00
dankito 796218c2d6 Added nonVisualOrImageBased() 2022-02-07 00:18:14 +01:00
dankito 6d48382a7e As messageLogWithoutSensitiveData gets called for sure removing sensitive data upfront now 2022-02-07 00:18:14 +01:00
dankito e87adc8499 Clarified that getTransactionsAsync() only retrieves the transactions of one account; also fixed data model in regard to this 2022-02-07 00:18:14 +01:00
dankito e90579a1b7 Added isPinLocked to FinTsClientResponse; also explicitly added it to successful, even though it's already contained in responseContainsErrors 2022-02-07 00:18:14 +01:00
dankito 462917467d Creating message for message log now directly in fints4k, no need to translate it 2022-02-07 00:18:14 +01:00
dankito 6aa03bcad2 Implemented setting current message type on DialogContext; logging job and message type 2022-02-07 00:18:14 +01:00
dankito fba6c2a0d5 Implemented also logging dialog number 2022-02-07 00:18:14 +01:00
dankito 4c70412058 Fixed that Mt940Parser's logAppender got overridden 2022-02-07 00:18:14 +01:00
dankito 7ad0656c9b Fixed that ResponseParser logs didn't get added to LogCollector; had therefore to add ResponseParser to JobContext 2022-02-07 00:18:14 +01:00
dankito eba94e2c1b Forgot one open 2022-02-07 00:18:14 +01:00
dankito ac71e09596 Added imageBased() and first() methods 2022-02-07 00:18:14 +01:00
dankito d6305b52be Implemented logging and adding to MessageLogEntry job number, dialog number and account 2022-02-07 00:18:14 +01:00
dankito c2b3a8fb5f Extracted setNextMessage() 2022-02-07 00:18:14 +01:00
dankito 471fd0caf4 Collecting now message on JobContext (makes FinTsClient, FinTsJobExecutor and RequestExecutor state free); moved therefore Mt940AccountTransactionsParser to JobContext 2022-02-07 00:18:14 +01:00
dankito b57847b4f2 Fixed that message is not a FinTS message 2022-02-07 00:18:14 +01:00
dankito 7d185a805c Using now JobContext as MessageBaseData 2022-02-07 00:18:14 +01:00
dankito f3552248dc Moved ProductData to JobContext and implemented that startNewDialog() create DialogContext 2022-02-07 00:18:14 +01:00
dankito 0a9b31b393 Created JobContext to have a cross dialog context per job and to be able to set FinTsClientCallback (and later on other objects) on a job basis 2022-02-07 00:18:14 +01:00
dankito d5573817ef Fixed that if a message is received that tells us a TAN is required than callback and there updateBankAndCustomerDataIfResponseSuccessful() doesn't get called for this received message - but which is absolutely required for Hypovereinsbank 2022-02-07 00:18:14 +01:00
dankito 3363e427be Calling updateBankAndCustomerDataIfResponseSuccessful() after each received message now 2022-02-07 00:18:14 +01:00
dankito 1b2b960c1b Extracted TanMethodSelector 2022-02-07 00:18:14 +01:00
dankito 3e8d1e6dc6 Implemented setting preferred TanMethod and TanMedium 2022-02-07 00:18:14 +01:00
dankito 4ec82a44d7 Added selectedTanMedium 2022-02-07 00:18:14 +01:00
dankito c82611ad6c Implemented getAllExceptionMessages() to list all messages in exception hierarchy 2022-02-07 00:18:14 +01:00
dankito 1e1e8e8f11 Renamed tanMethodSupportedByBank to tanMethodsSupportedByBank 2022-02-07 00:18:14 +01:00
dankito 27fc67940c Added warningSegmentFeedbacks and errorSegmentFeedbacks 2022-02-07 00:18:14 +01:00
dankito ed784f1827 Renamed errorMessage to internalError, errorsToShowToUser to errorMessagesFromBank, added didBankReturnError and created a method to determine which error message to show to user 2022-02-07 00:18:14 +01:00
dankito bb520de5d5 Renamed messageCreationError to messageThatCouldNotBeCreated 2022-02-07 00:18:14 +01:00
dankito b0af1cd1c9 Added an error message if FinTS message to be sent to bank could not be created 2022-02-07 00:18:14 +01:00
dankito dee1fd7211 Extracted createNoTanMethodSelectedResponse() 2022-02-07 00:18:14 +01:00
dankito fed10e21c0 Fixed return getBankInfoResponse including its error 2022-02-07 00:18:14 +01:00
dankito bd2c96bbcb Fixed returning original getTanMethodsResponse and therefore its errors etc. 2022-02-07 00:18:14 +01:00
dankito 1356249621 Added getTanMediaList() to retrieveBasicDataLikeUsersTanMethods() as may for other calls like getTransactions() this is a requirement to be able to establish strong authentication dialog (only known bank till now: Postbank) 2022-02-07 00:18:14 +01:00
dankito cb25a2294a Added getUsersTanMethod() to retrieveBasicDataLikeUsersTanMethods() so that it's callers don't have to do this 2022-02-07 00:18:14 +01:00
dankito 4d3c1aece3 Fixed that otherPartyName may is just an empty string (like at Targobank) 2022-02-07 00:18:14 +01:00
dankito fb33a7c58a Implemented using updated account information after retrieving new bank data 2022-02-07 00:18:14 +01:00
dankito e8e35a3fe2 Fixed that if balance should not get fetched that we did abort instead of continuing with retrieving transactions 2022-02-07 00:18:14 +01:00
dankito fad4c48b41 Implemented logging client close errors 2022-02-07 00:18:14 +01:00
dankito d35a420c29 Parsing date and time now manually as Java's DateFormat is not thread safe causing a lot of curious errors when executed in parallel 2022-02-07 00:18:14 +01:00
dankito 356b0f7823 Made callback settable (required for fints4kRest 2022-02-07 00:18:14 +01:00
dankito bc7733f618 Implemented toString() 2022-02-07 00:18:14 +01:00
dankito e30127415c Fixed that if TAN is required but we have been told to abort if requiring TAN, RetrievedAccountData is now set to successful 2022-02-07 00:18:14 +01:00
dankito e1e4cbe30a Added bank code and customer ID to log message to be able to track to which account a log message belongs 2022-02-07 00:18:14 +01:00
dankito cc99ebdbce Fixed substracting 90 days as previous implementation had an issue when crossing daylight saving changes (wenn die Zeitumstellung innerhalb der letzten 90 Tage lag) 2022-02-07 00:18:14 +01:00
dankito 9c9ebb9d57 Fixed that if fetchBalanceAndTransactions was set to false accounts haven't been returned 2022-02-07 00:18:14 +01:00
dankito ec85162e00 Couldn't reproduce it but on server parsing balance time sometimes failed 2022-02-07 00:18:14 +01:00