@startuml
title
    Keyple - keyple-card-calypso-java-lib - 2.1.+ (2022-02-01)
end title

' == THEME ==

'Couleurs issues de : https://htmlcolorcodes.com/fr/tableau-de-couleur/tableau-de-couleur-design-plat/
!define C_GREY1 F8F9F9
!define C_GREY2 F2F3F4
!define C_GREY3 E5E7E9
!define C_GREY4 D7DBDD
!define C_GREY5 CACFD2
!define C_GREY6 BDC3C7
!define C_LINK 3498DB
!define C_USE 27AE60

skinparam Shadowing false
skinparam ClassFontStyle italic
skinparam ClassBorderColor #D4AC0D
skinparam stereotypeABorderColor #A9DCDF
skinparam stereotypeIBorderColor #B4A7E5
skinparam stereotypeCBorderColor #ADD1B2
skinparam stereotypeEBorderColor #EB93DF
' Red
skinparam ClassBackgroundColor<<red>> #FDEDEC
skinparam ClassBorderColor<<red>> #E74C3C
hide <<red>> stereotype
' Purple
skinparam ClassBackgroundColor<<purple>> #F4ECF7
skinparam ClassBorderColor<<purple>> #8E44AD
hide <<purple>> stereotype
' blue
skinparam ClassBackgroundColor<<blue>> #EBF5FB
skinparam ClassBorderColor<<blue>> #3498DB
hide <<blue>> stereotype
' Green
skinparam ClassBackgroundColor<<green>> #E9F7EF
skinparam ClassBorderColor<<green>> #27AE60
hide <<green>> stereotype
' Grey
skinparam ClassBackgroundColor<<grey>> #EAECEE
skinparam ClassBorderColor<<grey>> #2C3E50
hide <<grey>> stereotype

' == CONTENT ==

legend top
    __Colors legend__ :
    * __External API references__ :
    ** <back:yellow>**calypsonet-terminal-reader-java-api**</back>
    ** <back:pink>**calypsonet-terminal-calypso-java-api**</back>
    ** <back:cyan>**keyple-common-java-api**</back>
    ** <back:orange>**keyple-service-resource-java-lib**</back>
end legend

package "org.eclipse.keyple.card.calypso" as calypso {
    +class "<<<back:cyan>KeypleCardExtension</back>>>\n**final** CalypsoExtensionService" as CalypsoExtensionService {
        --
        +{static} CalypsoExtensionService getInstance ()

        +<back:pink>SearchCommandData</back> createSearchCommandData ()

        +<back:pink>CalypsoCardSelection</back> createCardSelection ()

        +<back:pink>CalypsoSamSelection</back> createSamSelection ()
        +<back:orange>CardResourceProfileExtension</back> createSamResourceProfileExtension (<back:pink>CalypsoSamSelection</back> calypsoSamSelection)

        +<back:pink>CardSecuritySetting</back> createCardSecuritySetting ()
        +<back:pink>CardTransactionManager</back> createCardTransaction (<back:yellow>CardReader</back> cardReader, <back:pink>CalypsoCard</back> calypsoCard, <back:pink>CardSecuritySetting</back> cardSecuritySetting)

        +<back:pink>CardTransactionManager</back> createCardTransactionWithoutSecurity (<back:yellow>CardReader</back> cardReader, <back:pink>CalypsoCard</back> calypsoCard)

        -- **KeypleCardExtension** --
        +String getCommonApiVersion ()
        +String getReaderApiVersion ()
        +String getCardApiVersion ()
    }
}

' Associations

' == LAYOUT ==

' == STYLE ==

package calypso #C_GREY1 {}


@enduml