Eclipse Keyple® 0.8.0 (Java 20/01)

Release Date
Deliverables

keyple-java-core 0.8

  • Se Proxy API
    • Plugins need to be registered to the SeProxyService with an AbstractPluginFactory with a unique plugin name
  • Reader monitoring
    • Redesign of the abstract classes inherited by plugin objects
    • Fix for a clean stop of the observation when removing a reader
  • Secure Element monitoring
    • Add a new API to start/stop the SE Detection methods in the ObservableReader interface
    • Redesign of the abstract classes inherited by reader objects
    • Abstract Local Reader should now declare a behaviour for each of their state via with AbstractObservableState
    • Added 4 ObservableState : WaitForSeInsertion, WaitForSeProcessing, WaitForSeRemoval, WaitForStartDetect
    • Added MonitorigingJob objects to launch a background task in a AbstractObservableState
    • SE_REMOVAL event renamed SE_REMOVED
  • NoStackTraceThrowable exception removed
  • Secure Element logical and physical channels management
    • Deletion of the SeRequestSet class replaced by Set
    • Changes in the management of card channels: the closure of the channel is no longer attached to a SeRequest but operated independently
    • ChannelState renamed ChannelControl
    • Update of the ProxyReader interface: addition of variants of the "transmit" method with control of the multi-request mode and channel closing
    • Update of the DefaultSelectionRequest and DefaultSelectionsResponse classes
  • Addition of the MultiSeRequestProcessing enum used in the "transmit" method to indicate the procedure to be followed during the selection phase

 

keyple-java-calypso 0.8

  • Update of the selection and transaction classes to take the new channel management into account
  • Addition of SAM key management commands, & PO Write Record command.
  • Fixed a bug in the parser of the response to Select File

 

keyple-java-plugin-pcsc 0.8

  • Added PcscPluginFactory to register plugin to SeProxy
  • Added PcscPlugin interface, make PcscPluginImpl package protected
  • Added PcscReader interface, make PcscReaderImpl package protected
  • Added a work around the stop of the Smart Card service under Windows has been made specific to this platform by detecting the OS
  • Added a specific behaviour for card detection on MacOs

 

keyple-java-plugin-stub 0.8

  • Added StubPluginFactory and StubPoolPluginFactory to register plugin to SeProxy
  • StubPlugin and StubPoolPlugin should be instantiated via the factory with a unique plugin name
  • Added StubPlugin/StubPoolPlugin interface, make StubPluginImpl/StubPoolPluginImpl package protected
  • Added StubReader interface, make StubReaderImpl package protected

 

keyple-java-plugin-remotese 0.8

  • Added VirtualObservableReader interface for Remote Se Observable Reader
  • Added a DefaultTransportDto with basic behaviour
  • RemoteMethod renamed to RemoteMethodName
  • RemoteSePlugin should be instantiated via the factory with a unique plugin name
  • RemoteSePoolPlugin should be instantiated via the factory with a unique plugin name
  • Added AndroidNfcPluginFactory to register plugin to SeProxy
  • Added RemoteSePlugin interface, make RemoteSePluginImpl package protected
  • Added VirtualReader interface, make RemoteSeReaderImpl package protected
  • Added RemoteSePoolPlugin interface, make RemoteSePoolPluginImpl package protected

 

keyple-android-plugin-nfc 0.8

  • Added AndroidNfcPluginFactory to register plugin to SeProxy
  • Added AndroidNfcPlugin interface, make AndroidNfcPluginImpl package protected
  • Added AndroidNfcReader interface, make AndroidNfcReaderImpl package protected
  • Added a Se Removal detection mecanism via CardAbsentPingMonitoringJob in WaitForSeRemoval state

 

keyple-android-plugin-omapi 0.8

  • Added AndroidOmapiPluginFactory to register plugin to SeProxy
  • Added AndroidOmapiPlugin interface, make AndroidOmapiPluginImpl package protected
  • Added AndroidOmapiReader interface, make AndroidOmapiReaderImpl package protected

 

build tools :

  • Added Gradle wrapper in java root project and android root project
  • Added Gradle Keyple tasks in root project to install/remove all artefacts at once: installAll, removeAll
  • CI : move jenkins and docker files to a new repository : https://github.com/eclipse/keyple-ops

 

Compatibility

Two limited API breakage:

  • The registration of a plugin to the SE Proxy requires the setting of a plugin factory.
  • For an observable reader, new command allows to define the status of the SE processing.
Target Environments
  • Any PC systems (Windows/MacOS/Linux) supporting Java SE 1.6 compact2 & above
  • Or Android 4.4 KitKat API level 19 & above