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) 2024 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 https://opensource.org/licenses/MIT. *
6 * *
7 * SPDX-License-Identifier: MIT *
8 **************************************************************************************************/
9
10#pragma once
11
12#include <vector>
13
14#include "keypop/calypso/card/SvAction.hpp"
15#include "keypop/calypso/card/SvOperation.hpp"
17
18namespace keypop {
19namespace calypso {
20namespace card {
21namespace transaction {
22
33template <typename T>
35public:
62 virtual T& prepareOpenSecureSession(const WriteAccessLevel writeAccessLevel) = 0;
63
79 virtual T& prepareSvGet(const SvOperation svOperation, const SvAction svAction) = 0;
80
109 virtual T& prepareSvReload(
110 const int amount,
111 const std::vector<uint8_t>& date,
112 const std::vector<uint8_t>& time,
113 const std::vector<uint8_t>& free)
114 = 0;
115
142 virtual T& prepareSvReload(const int amount) = 0;
143
177 virtual T& prepareSvDebit(
178 const int amount, const std::vector<uint8_t>& date, const std::vector<uint8_t>& time)
179 = 0;
180
212 virtual T& prepareSvDebit(const int amount) = 0;
213
229 virtual T& prepareInvalidate() = 0;
230
246 virtual T& prepareRehabilitate() = 0;
247
273 const int keyIndex,
274 const uint8_t newKif,
275 const uint8_t newKvc,
276 const uint8_t issuerKif,
277 const uint8_t issuerKvc)
278 = 0;
279};
280
281} /* namespace transaction */
282} /* namespace card */
283} /* namespace calypso */
284} /* 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