Keyple C++  0.9.0
Keyple, an Open Source SDK for Ticketing
Public Member Functions | Public Attributes | List of all members
keyple::calypso::transaction::PoSecuritySettings::PoSecuritySettingsBuilder Class Referencefinal

#include <PoSecuritySettings.h>

Public Member Functions

 PoSecuritySettingsBuilder (std::shared_ptr< SeResource< CalypsoSam >> samResource)
 
PoSecuritySettingsBuildersessionModificationMode (ModificationMode sessionModificationMode)
 
PoSecuritySettingsBuilderratificationMode (const RatificationMode ratificationMode)
 
PoSecuritySettingsBuilderpinTransmissionMode (const PinTransmissionMode pinTransmissionMode)
 
PoSecuritySettingsBuildersessionDefaultKif (const AccessLevel &sessionAccessLevel, const uint8_t kif)
 
PoSecuritySettingsBuildersessionDefaultKvc (const AccessLevel &sessionAccessLevel, const uint8_t kvc)
 
PoSecuritySettingsBuildersessionDefaultKeyRecordNumber (const AccessLevel &sessionAccessLevel, const uint8_t keyRecordNumber)
 
PoSecuritySettingsBuildersessionAuthorizedKvcList (const std::vector< uint8_t > &authorizedKvcList)
 
PoSecuritySettingsBuilderpinCipheringKey (const uint8_t kif, const uint8_t kvc)
 
PoSecuritySettingsBuildersvGetLogReadMode (const LogRead svGetLogReadMode)
 
PoSecuritySettingsBuildersvNegativeBalance (const NegativeBalance svNegativeBalance)
 
std::shared_ptr< PoSecuritySettingsbuild ()
 

Public Attributes

friend PoSecuritySettings
 
ModificationMode mSessionModificationMode
 
RatificationMode mRatificationMode = PoSecuritySettings::mDefaultRatificationMode
 
PinTransmissionMode mPinTransmissionMode = mDefaultPinTransmissionMode
 
std::shared_ptr< KeyReferencemPinCipheringKey = mDefaultPinCipheringKey
 
LogRead mSvGetLogReadMode = mDefaultSvGetLogReadMode
 
NegativeBalance mSvNegativeBalance = mDefaultSvNegativeBalance
 

Detailed Description

Builder pattern

Constructor & Destructor Documentation

◆ PoSecuritySettingsBuilder()

keyple::calypso::transaction::PoSecuritySettingsBuilder::PoSecuritySettingsBuilder ( std::shared_ptr< SeResource< CalypsoSam >>  samResource)

Constructor

Parameters
samResourcethe SAM resource we'll be working with
Needed in any cases.

Member Function Documentation

◆ build()

std::shared_ptr< PoSecuritySettings > keyple::calypso::transaction::PoSecuritySettingsBuilder::build ( )

Build a new

.

Returns
a new instance

◆ pinCipheringKey()

PoSecuritySettingsBuilder & keyple::calypso::transaction::PoSecuritySettingsBuilder::pinCipheringKey ( const uint8_t  kif,
const uint8_t  kvc 
)

Provides the KIF/KVC pair of the PIN ciphering key

Parameters
kifthe KIF of the PIN ciphering key
kvcthe KVC of the PIN ciphering key
Returns
the builder instance

◆ pinTransmissionMode()

PoSecuritySettingsBuilder & keyple::calypso::transaction::PoSecuritySettingsBuilder::pinTransmissionMode ( const PinTransmissionMode  pinTransmissionMode)

Set the PIN Transmission Mode
The default value is ENCRYPTED

Parameters
pinTransmissionModethe desired PIN Transmission Mode
Returns
the builder instance
Since
0.9

◆ ratificationMode()

PoSecuritySettingsBuilder & keyple::calypso::transaction::PoSecuritySettingsBuilder::ratificationMode ( const RatificationMode  ratificationMode)

Set the Ratification Mode
The default value is CLOSE_RATIFIED

Parameters
ratificationModethe desired Ratification Mode
Returns
the builder instance
Since
0.9

◆ sessionAuthorizedKvcList()

PoSecuritySettingsBuilder & keyple::calypso::transaction::PoSecuritySettingsBuilder::sessionAuthorizedKvcList ( const std::vector< uint8_t > &  authorizedKvcList)

Provides a list of authorized KVC

If this method is not called, the list will remain empty and all KVCs will be accepted.

Parameters
authorizedKvcListthe list of authorized KVCs
Returns
the builder instance

◆ sessionDefaultKeyRecordNumber()

PoSecuritySettingsBuilder & keyple::calypso::transaction::PoSecuritySettingsBuilder::sessionDefaultKeyRecordNumber ( const AccessLevel sessionAccessLevel,
const uint8_t  keyRecordNumber 
)

Set the default key record number

Parameters
sessionAccessLevelthe session level
keyRecordNumberthe desired default key record number
Returns
the builder instance
Since
0.9

◆ sessionDefaultKif()

PoSecuritySettingsBuilder & keyple::calypso::transaction::PoSecuritySettingsBuilder::sessionDefaultKif ( const AccessLevel sessionAccessLevel,
const uint8_t  kif 
)

Set the default KIF

Parameters
sessionAccessLevelthe session level
kifthe desired default KIF
Returns
the builder instance
Since
0.9

◆ sessionDefaultKvc()

PoSecuritySettingsBuilder & keyple::calypso::transaction::PoSecuritySettingsBuilder::sessionDefaultKvc ( const AccessLevel sessionAccessLevel,
const uint8_t  kvc 
)

Set the default KVC

Parameters
sessionAccessLevelthe session level
kvcthe desired default KVC
Returns
the builder instance
Since
0.9

◆ sessionModificationMode()

PoSecuritySettingsBuilder & keyple::calypso::transaction::PoSecuritySettingsBuilder::sessionModificationMode ( ModificationMode  sessionModificationMode)

Set the Session Modification Mode
The default value is ATOMIC

Parameters
sessionModificationModethe desired Session Modification Mode
Returns
the builder instance
Since
0.9

◆ svGetLogReadMode()

PoSecuritySettingsBuilder & keyple::calypso::transaction::PoSecuritySettingsBuilder::svGetLogReadMode ( const LogRead  svGetLogReadMode)

Sets the SV Get log read mode to indicate whether only one or both log files are to be read

Parameters
svGetLogReadModethe keyple::calypso::transaction::PoTransaction::SvSettings::LogRead mode
Returns
the builder instance

◆ svNegativeBalance()

PoSecuritySettingsBuilder & keyple::calypso::transaction::PoSecuritySettingsBuilder::svNegativeBalance ( const NegativeBalance  svNegativeBalance)

Sets the SV negative balance mode to indicate whether negative balances are allowed or not

Parameters
svNegativeBalancethe keyple::calypso::transaction::PoTransaction::SvSettings::NegativeBalance mode
Returns
the builder instance

Member Data Documentation

◆ mPinCipheringKey

std::shared_ptr<KeyReference> keyple::calypso::transaction::PoSecuritySettings::PoSecuritySettingsBuilder::mPinCipheringKey = mDefaultPinCipheringKey

◆ mPinTransmissionMode

PinTransmissionMode keyple::calypso::transaction::PoSecuritySettings::PoSecuritySettingsBuilder::mPinTransmissionMode = mDefaultPinTransmissionMode

◆ mRatificationMode

RatificationMode keyple::calypso::transaction::PoSecuritySettings::PoSecuritySettingsBuilder::mRatificationMode = PoSecuritySettings::mDefaultRatificationMode

◆ mSessionModificationMode

ModificationMode keyple::calypso::transaction::PoSecuritySettings::PoSecuritySettingsBuilder::mSessionModificationMode

◆ mSvGetLogReadMode

LogRead keyple::calypso::transaction::PoSecuritySettings::PoSecuritySettingsBuilder::mSvGetLogReadMode = mDefaultSvGetLogReadMode

◆ mSvNegativeBalance

NegativeBalance keyple::calypso::transaction::PoSecuritySettings::PoSecuritySettingsBuilder::mSvNegativeBalance = mDefaultSvNegativeBalance

◆ PoSecuritySettings

friend keyple::calypso::transaction::PoSecuritySettings::PoSecuritySettingsBuilder::PoSecuritySettings

The documentation for this class was generated from the following files:
keyple::calypso::transaction::PoSecuritySettings::mDefaultSessionModificationMode
static const ModificationMode mDefaultSessionModificationMode
Definition: PoSecuritySettings.h:49
keyple::calypso::transaction::PoSecuritySettings::PoSecuritySettingsBuilder::PoSecuritySettings
friend PoSecuritySettings
Definition: PoSecuritySettings.h:69