diff --git a/CHANGELOG.md b/CHANGELOG.md index 7558845..d0ceadc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,10 +5,20 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Added +- `TransactionManager` now extends `CardTransactionManager` from Keypop Reader API. ### Fixed - Fixed JUnit configuration. ### Changed - Migrated the CI pipeline from Jenkins to GitHub Actions. +### Deprecated +- `ChannelControl`, +- `TransactionManager.processCommands(ChannelControl channelControl)`, +- `CardIOException`, +- `ReaderIOException`, +- `UnexpectedCommandStatusException`. +### Upgraded +- Keypop Reader API `2.0.1` -> `2.1.0` ## [2.1.2] - 2025-03-20 ### Added diff --git a/build.gradle.kts b/build.gradle.kts index b95d649..48b796e 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -14,7 +14,7 @@ plugins { /////////////////////////////////////////////////////////////////////////////// dependencies { - implementation("org.eclipse.keypop:keypop-reader-java-api:2.0.1") + implementation("org.eclipse.keypop:keypop-reader-java-api:2.1.0") testImplementation(platform("org.junit:junit-bom:5.12.2")) testImplementation("org.junit.jupiter:junit-jupiter") testRuntimeOnly("org.junit.platform:junit-platform-launcher") diff --git a/gradle.properties b/gradle.properties index b9be1a6..f60c918 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group = org.eclipse.keypop title = Keypop Calypso Card API description = API defining the needed interfaces to manage Calypso cards -version = 2.1.3-SNAPSHOT +version = 2.2.0-SNAPSHOT # Java Configuration javaSourceLevel = 1.8 diff --git a/src/main/java/org/eclipse/keypop/calypso/card/CalypsoCardApiProperties.java b/src/main/java/org/eclipse/keypop/calypso/card/CalypsoCardApiProperties.java index c293ae3..cbdcafe 100644 --- a/src/main/java/org/eclipse/keypop/calypso/card/CalypsoCardApiProperties.java +++ b/src/main/java/org/eclipse/keypop/calypso/card/CalypsoCardApiProperties.java @@ -23,7 +23,7 @@ public final class CalypsoCardApiProperties { * * @since 1.0.0 */ - public static final String VERSION = "2.1"; + public static final String VERSION = "2.2"; /** Private constructor */ private CalypsoCardApiProperties() {} diff --git a/src/main/java/org/eclipse/keypop/calypso/card/transaction/CardIOException.java b/src/main/java/org/eclipse/keypop/calypso/card/transaction/CardIOException.java index 98e2da3..3118810 100644 --- a/src/main/java/org/eclipse/keypop/calypso/card/transaction/CardIOException.java +++ b/src/main/java/org/eclipse/keypop/calypso/card/transaction/CardIOException.java @@ -15,7 +15,9 @@ * Indicates a communication error with the card (e.g. card removal, etc.). * * @since 1.0.0 + * @deprecated This exception is deprecated and will be removed in a future version. */ +@Deprecated public final class CardIOException extends RuntimeException { /** diff --git a/src/main/java/org/eclipse/keypop/calypso/card/transaction/ChannelControl.java b/src/main/java/org/eclipse/keypop/calypso/card/transaction/ChannelControl.java index 27417a8..e5476ae 100644 --- a/src/main/java/org/eclipse/keypop/calypso/card/transaction/ChannelControl.java +++ b/src/main/java/org/eclipse/keypop/calypso/card/transaction/ChannelControl.java @@ -15,7 +15,9 @@ * Policy for managing the physical channel after a card request is executed. * * @since 2.0.0 + * @deprecated This enum is deprecated and will be removed in a future version. */ +@Deprecated public enum ChannelControl { /** diff --git a/src/main/java/org/eclipse/keypop/calypso/card/transaction/ReaderIOException.java b/src/main/java/org/eclipse/keypop/calypso/card/transaction/ReaderIOException.java index b742c9d..e5b3cd4 100644 --- a/src/main/java/org/eclipse/keypop/calypso/card/transaction/ReaderIOException.java +++ b/src/main/java/org/eclipse/keypop/calypso/card/transaction/ReaderIOException.java @@ -15,7 +15,9 @@ * Indicates a communication error with the reader of the card or crypto module. * * @since 1.2.0 + * @deprecated This exception is deprecated and will be removed in a future version. */ +@Deprecated public final class ReaderIOException extends RuntimeException { /** diff --git a/src/main/java/org/eclipse/keypop/calypso/card/transaction/TransactionManager.java b/src/main/java/org/eclipse/keypop/calypso/card/transaction/TransactionManager.java index 2ebf915..5c5d098 100644 --- a/src/main/java/org/eclipse/keypop/calypso/card/transaction/TransactionManager.java +++ b/src/main/java/org/eclipse/keypop/calypso/card/transaction/TransactionManager.java @@ -18,6 +18,7 @@ import org.eclipse.keypop.calypso.card.SelectFileControl; import org.eclipse.keypop.calypso.card.card.CalypsoCard; import org.eclipse.keypop.calypso.card.card.ElementaryFile; +import org.eclipse.keypop.reader.transaction.spi.CardTransactionManager; /** * Contains operations common to all card transactions. @@ -47,7 +48,8 @@ * @param The type of the lowest level child object. * @since 2.0.0 */ -public interface TransactionManager> { +public interface TransactionManager> + extends CardTransactionManager { /** * Schedules the execution of a "Select File" command to select an EF by its LID in the current @@ -643,7 +645,9 @@ T prepareReadRecordsPartially( * @throws SelectFileException If a "Select File" prepared card command indicated that the file * was not found. * @since 1.6.0 + * @deprecated Use {@link #processCommands(org.eclipse.keypop.reader.ChannelControl)} instead. */ + @Deprecated T processCommands(ChannelControl channelControl); /** diff --git a/src/main/java/org/eclipse/keypop/calypso/card/transaction/UnexpectedCommandStatusException.java b/src/main/java/org/eclipse/keypop/calypso/card/transaction/UnexpectedCommandStatusException.java index 9e7d202..ec07b1d 100644 --- a/src/main/java/org/eclipse/keypop/calypso/card/transaction/UnexpectedCommandStatusException.java +++ b/src/main/java/org/eclipse/keypop/calypso/card/transaction/UnexpectedCommandStatusException.java @@ -25,7 +25,9 @@ * PIN verification attempts. * * @since 1.2.0 + * @deprecated This exception is deprecated and will be removed in a future version. */ +@Deprecated public final class UnexpectedCommandStatusException extends RuntimeException { /**