CCF
Loading...
Searching...
No Matches
call_types.h
Go to the documentation of this file.
1// Copyright (c) Microsoft Corporation. All rights reserved.
2// Licensed under the Apache 2.0 License.
3#pragma once
4
6#include "ccf/receipt.h"
9#include "ccf/tx_id.h"
10#include "ccf/tx_status.h"
11#include "kv/kv_types.h"
12#include "node/identity.h"
13#include "node/ledger_secrets.h"
14#include "node_call_types.h"
15
16#include <nlohmann/json.hpp>
17
18namespace ccf
19{
20 struct GetCommit
21 {
22 using In = void;
23
24 struct Out
25 {
27 std::vector<ccf::TxID> view_history;
28 };
29 };
30
32 {
38 };
39
40 struct GetCode
41 {
42 struct Version
43 {
44 std::string digest;
46 };
47
48 struct Out
49 {
50 std::vector<Version> versions = {};
51 };
52 };
53
55 {
56 struct HostData
57 {
58 std::string raw;
59 std::string metadata;
60 };
61
62 struct Out
63 {
64 std::vector<GetSnpHostDataMap::HostData> host_data = {};
65 };
66 };
67
69 {
70 struct Out
71 {
74 std::optional<ccf::View> current_view;
75 std::optional<NodeId> primary_id;
77 nlohmann::json service_data;
78 std::optional<ccf::TxID> current_service_create_txid;
79 };
80 };
81
96
97 struct GetNodes
98 {
99 struct Out
100 {
101 std::vector<GetNode::NodeInfo> nodes = {};
102 };
103 };
104
105 struct GetAPI
106 {
107 using Out = nlohmann::json;
108 };
109
111 {
112 struct In
113 {
114 std::vector<std::uint8_t> receipt = {};
115 };
116
117 struct Out
118 {
119 bool valid = false;
120 };
121 };
122
124 {
125 using In = void;
126
127 struct Out
128 {
129 std::string encrypted_share;
130 };
131 };
132
134 {
135 struct In
136 {
137 std::string share;
138 };
139
140 struct Out
141 {
142 std::string message;
143 };
144 };
145}
Definition pem.h:18
Definition app_interface.h:14
ServiceStatus
Definition service.h:13
TxStatus
Definition tx_status.h:13
CodeStatus
Definition code_status.h:12
NodeStatus
Definition node_info.h:18
uint64_t SeqNo
Definition tx_id.h:36
Definition call_types.h:106
nlohmann::json Out
Definition call_types.h:107
Definition call_types.h:49
std::vector< Version > versions
Definition call_types.h:50
Definition call_types.h:43
ccf::CodeStatus status
Definition call_types.h:45
std::string digest
Definition call_types.h:44
Definition call_types.h:41
Definition call_types.h:25
ccf::TxID transaction_id
Definition call_types.h:26
std::vector< ccf::TxID > view_history
Definition call_types.h:27
Definition call_types.h:21
void In
Definition call_types.h:22
Definition call_types.h:71
nlohmann::json service_data
Definition call_types.h:77
std::optional< NodeId > primary_id
Definition call_types.h:75
std::optional< ccf::TxID > current_service_create_txid
Definition call_types.h:78
size_t recovery_count
Definition call_types.h:76
ServiceStatus service_status
Definition call_types.h:72
std::optional< ccf::View > current_view
Definition call_types.h:74
ccf::crypto::Pem service_certificate
Definition call_types.h:73
Definition call_types.h:69
Definition call_types.h:85
NodeId node_id
Definition call_types.h:86
nlohmann::json node_data
Definition call_types.h:90
NodeStatus status
Definition call_types.h:87
ccf::SeqNo last_written
Definition call_types.h:91
bool primary
Definition call_types.h:88
ccf::NodeInfoNetwork::RpcInterfaces rpc_interfaces
Definition call_types.h:89
Definition call_types.h:83
Definition call_types.h:100
std::vector< GetNode::NodeInfo > nodes
Definition call_types.h:101
Definition call_types.h:98
Definition call_types.h:128
std::string encrypted_share
Definition call_types.h:129
Definition call_types.h:124
void In
Definition call_types.h:125
Definition call_types.h:57
std::string metadata
Definition call_types.h:59
std::string raw
Definition call_types.h:58
Definition call_types.h:63
std::vector< GetSnpHostDataMap::HostData > host_data
Definition call_types.h:64
Definition call_types.h:55
Definition call_types.h:34
TxStatus status
Definition call_types.h:36
ccf::TxID transaction_id
Definition call_types.h:35
Definition call_types.h:32
std::map< RpcInterfaceID, NetInterface > RpcInterfaces
RPC interface mapping.
Definition node_info_network.h:144
Definition call_types.h:136
std::string share
Definition call_types.h:137
Definition call_types.h:141
std::string message
Definition call_types.h:142
Definition call_types.h:134
Definition tx_id.h:44
Definition call_types.h:113
std::vector< std::uint8_t > receipt
Definition call_types.h:114
Definition call_types.h:118
bool valid
Definition call_types.h:119
Definition call_types.h:111