Keyple C++  0.9.0
Keyple, an Open Source SDK for Ticketing
Classes | Public Member Functions | Public Attributes | Protected Member Functions | List of all members
keyple::calypso::command::po::parser::security::AbstractOpenSessionRespPars Class Reference

#include <AbstractOpenSessionRespPars.h>

Inherits keyple::calypso::command::po::AbstractPoResponseParser.

Inherited by keyple::calypso::command::po::parser::security::OpenSession10RespPars, keyple::calypso::command::po::parser::security::OpenSession24RespPars, keyple::calypso::command::po::parser::security::OpenSession31RespPars, and keyple::calypso::command::po::parser::security::OpenSession32RespPars.

Classes

class  SecureSession
 

Public Member Functions

 AbstractOpenSessionRespPars (std::shared_ptr< ApduResponse > response, AbstractOpenSessionCmdBuild< AbstractOpenSessionRespPars > *builder, const PoRevision revision)
 
virtual ~AbstractOpenSessionRespPars ()=default
 
std::shared_ptr< AbstractOpenSessionRespParscreate (std::shared_ptr< ApduResponse > response, const PoRevision revision)
 
virtual std::shared_ptr< SecureSessiontoSecureSession (const std::vector< uint8_t > &apduResponseData)
 
virtual const std::vector< uint8_t > & getPoChallenge () const
 
virtual int getTransactionCounterValue () const
 
virtual bool wasRatified () const
 
virtual bool isManageSecureSessionAuthorized () const
 
virtual uint8_t getSelectedKif () const
 
virtual uint8_t getSelectedKvc () const
 
virtual const std::vector< uint8_t > & getRecordDataRead () const
 
- Public Member Functions inherited from keyple::calypso::command::po::AbstractPoResponseParser
 AbstractPoResponseParser (std::shared_ptr< ApduResponse > response, AbstractPoCommandBuilder< AbstractPoResponseParser > *builder)
 
 AbstractPoResponseParser (const AbstractPoResponseParser &arp)=default
 
virtual ~AbstractPoResponseParser ()=default
 
virtual AbstractPoCommandBuilder< AbstractPoResponseParser > * getBuilder () const override
 
void checkStatus () const override
 
- Public Member Functions inherited from keyple::core::command::AbstractApduResponseParser
 AbstractApduResponseParser (const std::shared_ptr< ApduResponse > response, AbstractApduCommandBuilder *builder)
 
 AbstractApduResponseParser (const AbstractApduResponseParser &aarp)=default
 
virtual ~AbstractApduResponseParser ()=default
 
void setApduResponse (const std::shared_ptr< ApduResponse > &response)
 
const std::shared_ptr< ApduResponsegetApduResponse () const
 
virtual bool isSuccessful () const
 
std::string getStatusInformation () const
 

Public Attributes

std::shared_ptr< SecureSessionmSecureSession
 

Protected Member Functions

const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable () const override
 
- Protected Member Functions inherited from keyple::calypso::command::po::AbstractPoResponseParser
const KeypleSeCommandException buildCommandException (const std::type_info &exceptionClass, const std::string &message, const std::shared_ptr< SeCommand > commandRef, const int statusCode) const override
 
- Protected Member Functions inherited from keyple::core::command::AbstractApduResponseParser
virtual const std::shared_ptr< SeCommandgetCommandRef () const
 

Additional Inherited Members

- Protected Attributes inherited from keyple::core::command::AbstractApduResponseParser
std::shared_ptr< ApduResponsemResponse
 
AbstractApduCommandBuildermBuilder
 
- Static Protected Attributes inherited from keyple::core::command::AbstractApduResponseParser
static const std::map< int, std::shared_ptr< StatusProperties > > STATUS_TABLE
 

Detailed Description

Open session response parser. See specs: Calypso / page 100 / 9.5.1 - Open secure session

Constructor & Destructor Documentation

◆ AbstractOpenSessionRespPars()

keyple::calypso::command::po::parser::security::AbstractOpenSessionRespPars::AbstractOpenSessionRespPars ( std::shared_ptr< ApduResponse response,
AbstractOpenSessionCmdBuild< AbstractOpenSessionRespPars > *  builder,
const PoRevision  revision 
)

Instantiates a new AbstractOpenSessionRespPars.

Parameters
responsethe response from Open secure session APDU command
builderthe reference to the builder that created this parser
revisionthe revision of the PO

C++ vs. Java: C++ cannot call a derived class member function from a base class constructor. This below code should be copied into all of the derived classes...

const std::vector<uint8_t> dataOut = response->getDataOut(); if (dataOut.size()) mSecureSession = toSecureSession(dataOut);

◆ ~AbstractOpenSessionRespPars()

virtual keyple::calypso::command::po::parser::security::AbstractOpenSessionRespPars::~AbstractOpenSessionRespPars ( )
virtualdefault

Member Function Documentation

◆ create()

std::shared_ptr< AbstractOpenSessionRespPars > keyple::calypso::command::po::parser::security::AbstractOpenSessionRespPars::create ( std::shared_ptr< ApduResponse response,
const PoRevision  revision 
)

◆ getPoChallenge()

const std::vector< uint8_t > & keyple::calypso::command::po::parser::security::AbstractOpenSessionRespPars::getPoChallenge ( ) const
virtual

◆ getRecordDataRead()

const std::vector< uint8_t > & keyple::calypso::command::po::parser::security::AbstractOpenSessionRespPars::getRecordDataRead ( ) const
virtual

◆ getSelectedKif()

uint8_t keyple::calypso::command::po::parser::security::AbstractOpenSessionRespPars::getSelectedKif ( ) const
virtual

◆ getSelectedKvc()

std::uint8_t keyple::calypso::command::po::parser::security::AbstractOpenSessionRespPars::getSelectedKvc ( ) const
virtual

◆ getStatusTable()

const std::map< int, std::shared_ptr< StatusProperties > > & keyple::calypso::command::po::parser::security::AbstractOpenSessionRespPars::getStatusTable ( ) const
overrideprotectedvirtual
Returns
the internal status table

Reimplemented from keyple::core::command::AbstractApduResponseParser.

◆ getTransactionCounterValue()

int keyple::calypso::command::po::parser::security::AbstractOpenSessionRespPars::getTransactionCounterValue ( ) const
virtual

◆ isManageSecureSessionAuthorized()

bool keyple::calypso::command::po::parser::security::AbstractOpenSessionRespPars::isManageSecureSessionAuthorized ( ) const
virtual

◆ toSecureSession()

std::shared_ptr< SecureSession > keyple::calypso::command::po::parser::security::AbstractOpenSessionRespPars::toSecureSession ( const std::vector< uint8_t > &  apduResponseData)
virtual

◆ wasRatified()

bool keyple::calypso::command::po::parser::security::AbstractOpenSessionRespPars::wasRatified ( ) const
virtual

Member Data Documentation

◆ mSecureSession

std::shared_ptr<SecureSession> keyple::calypso::command::po::parser::security::AbstractOpenSessionRespPars::mSecureSession

The secure session


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