Keyple C++  0.9.0
Keyple, an Open Source SDK for Ticketing
Public Member Functions | Protected Attributes | List of all members
keyple::calypso::command::sam::AbstractSamCommandBuilder< T > Class Template Referenceabstract

#include <AbstractSamCommandBuilder.h>

Inherits keyple::core::command::AbstractIso7816CommandBuilder.

Public Member Functions

 AbstractSamCommandBuilder (const std::shared_ptr< SeCommand > reference, const std::shared_ptr< ApduRequest > request)
 
virtual ~AbstractSamCommandBuilder ()=default
 
virtual std::shared_ptr< T > createResponseParser (const std::shared_ptr< ApduResponse > apduResponse)=0
 
const std::shared_ptr< SeCommandgetCommandRef () const override
 
- Public Member Functions inherited from keyple::core::command::AbstractIso7816CommandBuilder
 AbstractIso7816CommandBuilder (const std::shared_ptr< SeCommand > commandReference, const std::shared_ptr< ApduRequest > request)
 
 AbstractIso7816CommandBuilder (const std::string &name, const std::shared_ptr< ApduRequest > request)
 
virtual ~AbstractIso7816CommandBuilder ()=default
 
- Public Member Functions inherited from keyple::core::command::AbstractApduCommandBuilder
 AbstractApduCommandBuilder (const std::shared_ptr< SeCommand > commandRef, const std::shared_ptr< ApduRequest > request)
 
 AbstractApduCommandBuilder (const std::string &name, const std::shared_ptr< ApduRequest > request)
 
virtual ~AbstractApduCommandBuilder ()=default
 
virtual void addSubName (const std::string &subName)
 
virtual const std::string & getName () const
 
virtual const std::shared_ptr< ApduRequestgetApduRequest () const
 

Protected Attributes

SamRevision mDefaultRevision = SamRevision::C1
 
- Protected Attributes inherited from keyple::core::command::AbstractApduCommandBuilder
const std::shared_ptr< SeCommandmCommandRef
 
std::shared_ptr< ApduRequestmRequest
 

Additional Inherited Members

- Protected Member Functions inherited from keyple::core::command::AbstractIso7816CommandBuilder
virtual std::shared_ptr< ApduRequestsetApduRequest (const uint8_t cla, const SeCommand &command, const uint8_t p1, const uint8_t p2, const std::vector< uint8_t > &dataIn)
 
virtual std::shared_ptr< ApduRequestsetApduRequest (const uint8_t cla, const SeCommand &command, const uint8_t p1, const uint8_t p2, const uint8_t le)
 
virtual std::shared_ptr< ApduRequestsetApduRequest (const uint8_t cla, const SeCommand &command, const uint8_t p1, const uint8_t p2, const std::vector< uint8_t > &dataIn, const uint8_t le)
 

Detailed Description

template<typename T>
class keyple::calypso::command::sam::AbstractSamCommandBuilder< T >

Superclass for all SAM command builders.

Used directly, this class can serve as low level command builder.

Constructor & Destructor Documentation

◆ AbstractSamCommandBuilder()

template<typename T >
keyple::calypso::command::sam::AbstractSamCommandBuilder< T >::AbstractSamCommandBuilder ( const std::shared_ptr< SeCommand reference,
const std::shared_ptr< ApduRequest request 
)
inline

◆ ~AbstractSamCommandBuilder()

template<typename T >
virtual keyple::calypso::command::sam::AbstractSamCommandBuilder< T >::~AbstractSamCommandBuilder ( )
virtualdefault

Member Function Documentation

◆ createResponseParser()

template<typename T >
virtual std::shared_ptr<T> keyple::calypso::command::sam::AbstractSamCommandBuilder< T >::createResponseParser ( const std::shared_ptr< ApduResponse apduResponse)
pure virtual

Create the response parser matching the builder

Parameters
apduResponsethe response data from the SE
Returns
an keyple::core::command::AbstractApduResponseParser

Implemented in keyple::calypso::command::sam::builder::security::UnlockCmdBuild, keyple::calypso::command::sam::builder::security::SamWriteKeyCmdBuild, keyple::calypso::command::sam::builder::security::SamReadKeyParametersCmdBuild, keyple::calypso::command::sam::builder::security::SamReadCeilingsCmdBuild, keyple::calypso::command::sam::builder::security::DigestAuthenticateCmdBuild, keyple::calypso::command::sam::builder::security::CardGenerateKeyCmdBuild, keyple::calypso::command::sam::builder::security::CardCipherPinCmdBuild, keyple::calypso::command::sam::builder::security::SvPrepareUndebitCmdBuild, keyple::calypso::command::sam::builder::security::SvPrepareLoadCmdBuild, keyple::calypso::command::sam::builder::security::SvPrepareDebitCmdBuild, keyple::calypso::command::sam::builder::security::SvCheckCmdBuild, keyple::calypso::command::sam::builder::security::SelectDiversifierCmdBuild, keyple::calypso::command::sam::builder::security::SamReadEventCounterCmdBuild, keyple::calypso::command::sam::builder::security::SamGetChallengeCmdBuild, keyple::calypso::command::sam::builder::security::GiveRandomCmdBuild, keyple::calypso::command::sam::builder::security::DigestUpdateMultipleCmdBuild, keyple::calypso::command::sam::builder::security::DigestUpdateCmdBuild, keyple::calypso::command::sam::builder::security::DigestInitCmdBuild, and keyple::calypso::command::sam::builder::security::DigestCloseCmdBuild.

◆ getCommandRef()

template<typename T >
const std::shared_ptr<SeCommand> keyple::calypso::command::sam::AbstractSamCommandBuilder< T >::getCommandRef ( ) const
inlineoverridevirtual

Return type should be const std::shared_ptr<CalypsoSamCommand> ... but considered invalid covariant

Reimplemented from keyple::core::command::AbstractApduCommandBuilder.

Member Data Documentation

◆ mDefaultRevision

template<typename T >
SamRevision keyple::calypso::command::sam::AbstractSamCommandBuilder< T >::mDefaultRevision = SamRevision::C1
protected

The documentation for this class was generated from the following file: