Модифицируйте метод SetupServerArgs для поддержки новых команд, связанных с запуском Kafka.
Добавьте новые методы:
// Получить данные блока
UniValue myBlockToJSON(const CBlock& block, const CBlockIndex* blockindex, bool txDetails);
// Получить значение vout
UniValue myValueFromAmount(const CAmount& amount);
// Получить блок по высоте
UniValue myGetBlock(const int height);
// Получить проверенный блок
CBlock myGetBlockChecked(const CBlockIndex* pblockindex);
// Получить данные транзакции
void myTxToUniv(const CTransaction& tx, const uint256& hashBlock, UniValue& entry, bool include_hex, int serialize_flags);
// Получить публичный ключ скрипта
void myScriptPubKeyToUniv(const CScript& scriptPubKey, UniValue& out, bool fIncludeHex);
// Отправить данные блока в Kafka в порядке по высоте
void myPrintBlockOrderByHeight(int& kafkaHeightRange);
// Преобразовать скрипт в строку ассемблера
std::string myScriptToAsmStr(const CScript& script, const bool fAttemptSighashDecode=false);
// Получить блоки по диапазону высот
std::vector<UniValue> myGetBlockbatch(const int heightStart, const int heightEnd);
// Отправить HTTP-запрос POST
int post(const std::string& host, const std::string& port, const std::string& page, const std::string& data, std::string& response_data);
Измените метод ProcessNewBlock для отправки нового блока в Kafka по порядку.
В массив метода CRPCConvertParam vRPCConvertParams добавлены два новых метода:
// Добавить sendblock и sendbatchblock
{ "sendblock", 0, "height" },
{ "sendbatchblock", 0, "start_height" },
{ "sendbatchblock", 1, "end_height" }
Добавлены новые методы:
// RPC: отправить блок в Kafka по высоте
static UniValue sendblock(const JSONRPCRequest& request)
// RPC: отправить пакет блоков в Kafka по диапазону высот
static UniValue sendbatchblock(const JSONRPCRequest& request)
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )