Keypop Calypso Card C++ API 2.0.0
Reference Calypso Card API for C++
SecureSymmetricCryptoTransactionManager.hpp
Go to the documentation of this file.
1/******************************************************************************
2 * Copyright (c) 2025 Calypso Networks Association https://calypsonet.org/ *
3 * *
4 * This program and the accompanying materials are made available under the *
5 * terms of the MIT License which is available at *
6 * https://opensource.org/licenses/MIT. *
7 * *
8 * SPDX-License-Identifier: MIT *
9 ******************************************************************************/
10
11#pragma once
12
13#include <vector>
14
15#include "keypop/calypso/card/SvAction.hpp"
16#include "keypop/calypso/card/SvOperation.hpp"
18
19namespace keypop {
20namespace calypso {
21namespace card {
22namespace transaction {
23
34template <typename T>
36: public SecureTransactionManager<T> {
37public:
68 virtual T& prepareOpenSecureSession(const WriteAccessLevel writeAccessLevel)
69 = 0;
70
88 virtual T&
89 prepareSvGet(const SvOperation svOperation, const SvAction svAction)
90 = 0;
91
121 virtual T& prepareSvReload(
122 const int amount,
123 const std::vector<uint8_t>& date,
124 const std::vector<uint8_t>& time,
125 const std::vector<uint8_t>& free)
126 = 0;
127
155 virtual T& prepareSvReload(const int amount) = 0;
156
191 virtual T& prepareSvDebit(
192 const int amount,
193 const std::vector<uint8_t>& date,
194 const std::vector<uint8_t>& time)
195 = 0;
196
230 virtual T& prepareSvDebit(const int amount) = 0;
231
248 virtual T& prepareInvalidate() = 0;
249
266 virtual T& prepareRehabilitate() = 0;
267
296 const int keyIndex,
297 const uint8_t newKif,
298 const uint8_t newKvc,
299 const uint8_t issuerKif,
300 const uint8_t issuerKvc)
301 = 0;
302};
303
304} /* namespace transaction */
305} /* namespace card */
306} /* namespace calypso */
307} /* namespace keypop */
virtual T & prepareSvGet(const SvOperation svOperation, const SvAction svAction)=0
virtual T & prepareSvReload(const int amount, const std::vector< uint8_t > &date, const std::vector< uint8_t > &time, const std::vector< uint8_t > &free)=0
virtual T & prepareChangeKey(const int keyIndex, const uint8_t newKif, const uint8_t newKvc, const uint8_t issuerKif, const uint8_t issuerKvc)=0
virtual T & prepareOpenSecureSession(const WriteAccessLevel writeAccessLevel)=0
virtual T & prepareSvDebit(const int amount, const std::vector< uint8_t > &date, const std::vector< uint8_t > &time)=0