From 23fda3d2190169a88d353023dbdced092a92f7a7 Mon Sep 17 00:00:00 2001 From: Jean-Pierre Fortune Date: Wed, 26 Nov 2025 17:56:16 +0100 Subject: [PATCH 1/3] feat: update Keyple BOM version to 2025.11.21 --- build.gradle.kts | 4 +++- .../app/RemotePluginServerObserver.java | 13 ++++++++----- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 63525b0..5f27e2a 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -16,7 +16,7 @@ plugins { dependencies { // Begin Keyple configuration (generated by // 'https://keyple.org/components/overview/configuration-wizard/') - testImplementation(platform("org.eclipse.keyple:keyple-java-bom:2025.10.24")) + testImplementation(platform("org.eclipse.keyple:keyple-java-bom:2025.11.21")) testImplementation("org.eclipse.keypop:keypop-reader-java-api") testImplementation("org.eclipse.keypop:keypop-calypso-card-java-api") testImplementation("org.eclipse.keypop:keypop-calypso-crypto-legacysam-java-api") @@ -76,6 +76,8 @@ fun copyLicenseFiles() { noticeFile.copyTo(File(metaInfDir, "NOTICE.md"), overwrite = true) } +tasks.withType { options.compilerArgs.add("-Xlint:deprecation") } + tasks { spotless { java { diff --git a/src/test/java/org/eclipse/keyple/distributed/integration/readerclientside/app/RemotePluginServerObserver.java b/src/test/java/org/eclipse/keyple/distributed/integration/readerclientside/app/RemotePluginServerObserver.java index cb796ca..9ece893 100644 --- a/src/test/java/org/eclipse/keyple/distributed/integration/readerclientside/app/RemotePluginServerObserver.java +++ b/src/test/java/org/eclipse/keyple/distributed/integration/readerclientside/app/RemotePluginServerObserver.java @@ -13,7 +13,7 @@ package org.eclipse.keyple.distributed.integration.readerclientside.app; import java.util.List; -import org.eclipse.keyple.card.generic.ChannelControl; +import org.eclipse.keyple.card.generic.CardTransactionManager; import org.eclipse.keyple.card.generic.GenericCardSelectionExtension; import org.eclipse.keyple.card.generic.GenericExtensionService; import org.eclipse.keyple.core.service.Plugin; @@ -27,6 +27,7 @@ import org.eclipse.keyple.distributed.integration.readerclientside.model.InputDataDto; import org.eclipse.keyple.distributed.integration.readerclientside.model.OutputDataDto; import org.eclipse.keypop.reader.CardReader; +import org.eclipse.keypop.reader.ChannelControl; import org.eclipse.keypop.reader.ReaderApiFactory; import org.eclipse.keypop.reader.selection.CardSelectionManager; import org.eclipse.keypop.reader.selection.CardSelectionResult; @@ -78,11 +79,12 @@ Object executeService(Plugin plugin, CardReader reader) { InputDataDto inputDataDto = readerExtension.getInputData(InputDataDto.class); try { // execute a transaction - List results = + CardTransactionManager transaction = GenericExtensionService.getInstance() .createCardTransaction(reader, card) .prepareApdu("0000000000") - .processApdusToHexStrings(ChannelControl.CLOSE_AFTER); + .processCommands(ChannelControl.CLOSE_AFTER); + List results = transaction.getResponsesAsHexStrings(); return new OutputDataDto().setUserId(inputDataDto.getUserId()).setSuccessful(true); } catch (RuntimeException e) { if (e instanceof StubNetworkConnectionException) { @@ -100,11 +102,12 @@ Object executeService(Plugin plugin, CardReader reader) { SmartCard card = explicitCardSelection(reader); try { // execute a transaction - List results = + CardTransactionManager transaction = GenericExtensionService.getInstance() .createCardTransaction(reader, card) .prepareApdu("0000000000") - .processApdusToHexStrings(ChannelControl.CLOSE_AFTER); + .processCommands(ChannelControl.CLOSE_AFTER); + List results = transaction.getResponsesAsHexStrings(); return new OutputDataDto().setUserId(inputDataDto.getUserId()).setSuccessful(true); } catch (RuntimeException e) { if (e instanceof StubNetworkConnectionException) { From 634a2de739ea51189badd6a98d73e3be5847f320 Mon Sep 17 00:00:00 2001 From: Jean-Pierre Fortune Date: Thu, 27 Nov 2025 09:51:36 +0100 Subject: [PATCH 2/3] Refactor transaction handling to simplify response retrieval Replaced `CardTransactionManager` usage with direct method chaining for response retrieval in multiple instances. This streamlines the code by eliminating intermediate variables and improves readability. Updated Keyple Java BOM dependency version to `2025.11.21` in changelogs. --- CHANGELOG.md | 3 +++ .../app/RemotePluginServerObserver.java | 13 ++++++------- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7f408a7..827899f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ## [Unreleased] +### Upgraded +- Upgrade [Keyple Java BOM](https://github.com/eclipse-keyple/keyple-java-bom) to `2025.11.21`. + ## [2025-10-29] ### Changed - Switched to [Keyple Java BOM](https://github.com/eclipse-keyple/keyple-java-bom) `2025.10.24` for dependency diff --git a/src/test/java/org/eclipse/keyple/distributed/integration/readerclientside/app/RemotePluginServerObserver.java b/src/test/java/org/eclipse/keyple/distributed/integration/readerclientside/app/RemotePluginServerObserver.java index 9ece893..ac74bc3 100644 --- a/src/test/java/org/eclipse/keyple/distributed/integration/readerclientside/app/RemotePluginServerObserver.java +++ b/src/test/java/org/eclipse/keyple/distributed/integration/readerclientside/app/RemotePluginServerObserver.java @@ -13,7 +13,6 @@ package org.eclipse.keyple.distributed.integration.readerclientside.app; import java.util.List; -import org.eclipse.keyple.card.generic.CardTransactionManager; import org.eclipse.keyple.card.generic.GenericCardSelectionExtension; import org.eclipse.keyple.card.generic.GenericExtensionService; import org.eclipse.keyple.core.service.Plugin; @@ -79,12 +78,12 @@ Object executeService(Plugin plugin, CardReader reader) { InputDataDto inputDataDto = readerExtension.getInputData(InputDataDto.class); try { // execute a transaction - CardTransactionManager transaction = + List results = GenericExtensionService.getInstance() .createCardTransaction(reader, card) .prepareApdu("0000000000") - .processCommands(ChannelControl.CLOSE_AFTER); - List results = transaction.getResponsesAsHexStrings(); + .processCommands(ChannelControl.CLOSE_AFTER) + .getResponsesAsHexStrings(); return new OutputDataDto().setUserId(inputDataDto.getUserId()).setSuccessful(true); } catch (RuntimeException e) { if (e instanceof StubNetworkConnectionException) { @@ -102,12 +101,12 @@ Object executeService(Plugin plugin, CardReader reader) { SmartCard card = explicitCardSelection(reader); try { // execute a transaction - CardTransactionManager transaction = + List results = GenericExtensionService.getInstance() .createCardTransaction(reader, card) .prepareApdu("0000000000") - .processCommands(ChannelControl.CLOSE_AFTER); - List results = transaction.getResponsesAsHexStrings(); + .processCommands(ChannelControl.CLOSE_AFTER) + .getResponsesAsHexStrings(); return new OutputDataDto().setUserId(inputDataDto.getUserId()).setSuccessful(true); } catch (RuntimeException e) { if (e instanceof StubNetworkConnectionException) { From ee15045eb4f99118365f8430d510b79502c06d7b Mon Sep 17 00:00:00 2001 From: Jean-Pierre Fortune Date: Thu, 27 Nov 2025 09:58:29 +0100 Subject: [PATCH 3/3] Fix changelog wording for Keyple Java BOM upgrade. Updated the changelogs in two modules to use "Upgraded" instead of "Upgrade" for consistency. This ensures alignment with the past tense used in other entries. --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 827899f..1499375 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,7 +6,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ## [Unreleased] ### Upgraded -- Upgrade [Keyple Java BOM](https://github.com/eclipse-keyple/keyple-java-bom) to `2025.11.21`. +- Upgraded [Keyple Java BOM](https://github.com/eclipse-keyple/keyple-java-bom) to `2025.11.21`. ## [2025-10-29] ### Changed