Keyple C++
0.9.0
Keyple, an Open Source SDK for Ticketing
|
#include <SvReloadCmdBuild.h>
Inherits keyple::calypso::command::po::AbstractPoCommandBuilder< SvReloadRespPars >.
Public Member Functions | |
SvReloadCmdBuild (const PoClass &poClass, const PoRevision &poRevision, const int amount, const uint8_t kvc, const std::vector< uint8_t > &date, const std::vector< uint8_t > &time, const std::vector< uint8_t > &free) | |
void | finalizeBuilder (const std::vector< uint8_t > &reloadComplementaryData) |
const std::vector< uint8_t > | getSvReloadData () const |
std::shared_ptr< SvReloadRespPars > | createResponseParser (std::shared_ptr< ApduResponse > apduResponse) override |
bool | isSessionBufferUsed () const override |
![]() | |
AbstractPoCommandBuilder (std::shared_ptr< CalypsoPoCommand > commandRef, std::shared_ptr< ApduRequest > request) | |
virtual | ~AbstractPoCommandBuilder ()=default |
virtual const std::shared_ptr< SeCommand > | getCommandRef () const override |
virtual bool | isSessionBufferUsed () const=0 |
![]() | |
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 |
![]() | |
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::shared_ptr< SeCommand > | getCommandRef () const |
virtual const std::string & | getName () const |
virtual const std::shared_ptr< ApduRequest > | getApduRequest () const |
Additional Inherited Members | |
![]() | |
virtual std::shared_ptr< ApduRequest > | setApduRequest (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< ApduRequest > | setApduRequest (const uint8_t cla, const SeCommand &command, const uint8_t p1, const uint8_t p2, const uint8_t le) |
virtual std::shared_ptr< ApduRequest > | setApduRequest (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) |
![]() | |
const std::shared_ptr< Logger > | mLogger |
![]() | |
const std::shared_ptr< SeCommand > | mCommandRef |
std::shared_ptr< ApduRequest > | mRequest |
The Class SvReloadCmdBuild. This class provides the dedicated constructor to build the SV Reload command.
keyple::calypso::command::po::builder::storedvalue::SvReloadCmdBuild::SvReloadCmdBuild | ( | const PoClass & | poClass, |
const PoRevision & | poRevision, | ||
const int | amount, | ||
const uint8_t | kvc, | ||
const std::vector< uint8_t > & | date, | ||
const std::vector< uint8_t > & | time, | ||
const std::vector< uint8_t > & | free | ||
) |
Instantiates a new SvReloadCmdBuild.
The process is carried out in two steps: first to check and store the PO and application data, then to create the final APDU with the data from the SAM (see finalizeBuilder).
poClass | the PO class |
poRevision | the PO revision |
amount | amount to debit (signed integer from -8388608 to 8388607) |
kvc | debit key KVC (not checked by the PO) |
date | debit date (not checked by the PO) |
time | debit time (not checked by the PO) |
free | 2 free bytes stored in the log but not processed by the PO |
IllegalArgumentException | - if the command is inconsistent |
|
overridevirtual |
Create the response parser.
A check is made to see if the object has been finalized. If not, an exception keyple::common::exception::IllegalStateException is thrown.
apduResponse | the response data from the SE |
Implements keyple::calypso::command::po::AbstractPoCommandBuilder< SvReloadRespPars >.
void keyple::calypso::command::po::builder::storedvalue::SvReloadCmdBuild::finalizeBuilder | ( | const std::vector< uint8_t > & | reloadComplementaryData | ) |
Complete the construction of the APDU to be sent to the PO with the elements received from the SAM:
4-byte SAM id
3-byte challenge
3-byte transaction number
5 or 10 byte signature (hi part)
reloadComplementaryData | the sam id and the data out from the SvPrepareReload SAM command |
const std::vector< uint8_t > keyple::calypso::command::po::builder::storedvalue::SvReloadCmdBuild::getSvReloadData | ( | ) | const |
Gets the SV Reload part of the data to include in the SAM SV Prepare Load command
|
override |