Electroneum
Toggle main menu visibility
Loading...
Searching...
No Matches
validators_commands_defs.h
Go to the documentation of this file.
1
// Copyrights(c) 2017-2021, The Electroneum Project
2
//
3
// All rights reserved.
4
//
5
// Redistribution and use in source and binary forms, with or without modification, are
6
// permitted provided that the following conditions are met:
7
//
8
// 1. Redistributions of source code must retain the above copyright notice, this list of
9
// conditions and the following disclaimer.
10
//
11
// 2. Redistributions in binary form must reproduce the above copyright notice, this list
12
// of conditions and the following disclaimer in the documentation and/or other
13
// materials provided with the distribution.
14
//
15
// 3. Neither the name of the copyright holder nor the names of its contributors may be
16
// used to endorse or promote products derived from this software without specific
17
// prior written permission.
18
//
19
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
20
// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
21
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
22
// THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
24
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
26
// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
27
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
//
29
30
#ifndef ELECTRONEUM_VALIDATORS_COMMANDS_DEFS_H
31
#define ELECTRONEUM_VALIDATORS_COMMANDS_DEFS_H
32
33
#include "
include_base_utils.h
"
34
#include "
storages/http_abstract_invoke.h
"
35
36
namespace
electroneum
{
37
namespace
basic
{
38
39
struct
json_obj
{
40
struct
validator
{
41
std::string
validation_public_key
;
42
uint64_t
valid_from_height
;
43
uint64_t
valid_to_height
;
44
std::string
name
;
45
std::string
domain
;
46
std::string
page_link
;
47
48
BEGIN_KV_SERIALIZE_MAP
()
49
KV_SERIALIZE
(
validation_public_key
)
50
KV_SERIALIZE
(
valid_from_height
)
51
KV_SERIALIZE
(
valid_to_height
)
52
KV_SERIALIZE
(
name
)
53
KV_SERIALIZE
(
domain
)
54
KV_SERIALIZE
(
page_link
)
55
END_KV_SERIALIZE_MAP
()
56
};
57
58
std
::vector<
validator
>
validators
;
59
std
::
uint64_t
list_timestamp
;
60
61
BEGIN_KV_SERIALIZE_MAP
()
62
KV_SERIALIZE
(
validators
)
63
KV_SERIALIZE
(
list_timestamp
)
64
END_KV_SERIALIZE_MAP
()
65
};
66
67
struct
v_list_struct_request
{
68
BEGIN_KV_SERIALIZE_MAP
()
69
END_KV_SERIALIZE_MAP
()
70
};
71
72
struct
v_list_struct
{
73
74
std::string
blob
;
75
uint64_t
version
= 0;
76
std::vector<std::string>
signatures
;
77
std::vector<std::string>
pubkeys
;
78
79
BEGIN_KV_SERIALIZE_MAP
()
80
KV_SERIALIZE
(
blob
)
81
KV_SERIALIZE
(
version
)
82
KV_SERIALIZE
(
signatures
)
83
KV_SERIALIZE
(
pubkeys
)
84
END_KV_SERIALIZE_MAP
()
85
};
86
}
87
}
88
89
#endif
//ELECTRONEUM_VALIDATORS_COMMANDS_DEFS_H
http_abstract_invoke.h
include_base_utils.h
KV_SERIALIZE
#define KV_SERIALIZE(varialble)
Definition
keyvalue_serialization.h:104
END_KV_SERIALIZE_MAP
#define END_KV_SERIALIZE_MAP()
Definition
keyvalue_serialization.h:102
BEGIN_KV_SERIALIZE_MAP
#define BEGIN_KV_SERIALIZE_MAP()
Definition
keyvalue_serialization.h:43
electroneum::basic
Definition
validators.cpp:36
electroneum
Definition
validators.cpp:35
std
STL namespace.
uint64_t
unsigned __int64 uint64_t
Definition
stdint.h:136
electroneum::basic::json_obj::validator
Definition
validators_commands_defs.h:40
electroneum::basic::json_obj::validator::validation_public_key
std::string validation_public_key
Definition
validators_commands_defs.h:41
electroneum::basic::json_obj::validator::valid_to_height
uint64_t valid_to_height
Definition
validators_commands_defs.h:43
electroneum::basic::json_obj::validator::valid_from_height
uint64_t valid_from_height
Definition
validators_commands_defs.h:42
electroneum::basic::json_obj::validator::page_link
std::string page_link
Definition
validators_commands_defs.h:46
electroneum::basic::json_obj::validator::domain
std::string domain
Definition
validators_commands_defs.h:45
electroneum::basic::json_obj::validator::name
std::string name
Definition
validators_commands_defs.h:44
electroneum::basic::json_obj
Definition
validators_commands_defs.h:39
electroneum::basic::json_obj::list_timestamp
std::uint64_t list_timestamp
Definition
validators_commands_defs.h:59
electroneum::basic::json_obj::validators
std::vector< validator > validators
Definition
validators_commands_defs.h:58
electroneum::basic::v_list_struct_request
Definition
validators_commands_defs.h:67
electroneum::basic::v_list_struct
Definition
validators_commands_defs.h:72
electroneum::basic::v_list_struct::signatures
std::vector< std::string > signatures
Definition
validators_commands_defs.h:76
electroneum::basic::v_list_struct::version
uint64_t version
Definition
validators_commands_defs.h:75
electroneum::basic::v_list_struct::blob
std::string blob
Definition
validators_commands_defs.h:74
electroneum::basic::v_list_struct::pubkeys
std::vector< std::string > pubkeys
Definition
validators_commands_defs.h:77
src
cryptonote_basic
validators_commands_defs.h
Generated on
for Electroneum by
1.17.0