Loading...
Searching...
No Matches
utxo_executor.h
Go to the documentation of this file.
1
/*
2
* Licensed to the Apache Software Foundation (ASF) under one
3
* or more contributor license agreements. See the NOTICE file
4
* distributed with this work for additional information
5
* regarding copyright ownership. The ASF licenses this file
6
* to you under the Apache License, Version 2.0 (the
7
* "License"); you may not use this file except in compliance
8
* with the License. You may obtain a copy of the License at
9
*
10
* http://www.apache.org/licenses/LICENSE-2.0
11
*
12
* Unless required by applicable law or agreed to in writing,
13
* software distributed under the License is distributed on an
14
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
* KIND, either express or implied. See the License for the
16
* specific language governing permissions and limitations
17
* under the License.
18
*/
19
20
#pragma once
21
22
#include "
executor/common/custom_query.h
"
23
#include "
executor/common/transaction_manager.h
"
24
#include "
executor/utxo/manager/transaction.h
"
25
#include "
executor/utxo/manager/wallet.h
"
26
#include "
platform/config/resdb_config_utils.h
"
27
#include "proto/utxo/config.pb.h"
28
29
namespace
resdb
{
30
namespace
utxo {
31
32
class
UTXOExecutor
:
public
TransactionManager
{
33
public
:
34
UTXOExecutor
(
const
Config& config,
Transaction
* transaction,
Wallet
* wallet);
35
~UTXOExecutor
();
36
37
std::unique_ptr<std::string>
ExecuteData
(
const
std::string& request)
override
;
38
39
private
:
40
Transaction
* transaction_;
41
};
42
43
class
QueryExecutor
:
public
CustomQuery
{
44
public
:
45
QueryExecutor
(
Transaction
* transaction,
Wallet
* wallet);
46
virtual
~QueryExecutor
() =
default
;
47
48
virtual
std::unique_ptr<std::string>
Query
(
49
const
std::string& request_str)
override
;
50
51
private
:
52
Transaction
* transaction_;
53
Wallet
* wallet_;
54
};
55
56
}
// namespace utxo
57
}
// namespace resdb
resdb::CustomQuery
Definition
custom_query.h:27
resdb::Query
Definition
query.h:28
resdb::TransactionManager
Definition
transaction_manager.h:35
resdb::utxo::QueryExecutor
Definition
utxo_executor.h:43
resdb::utxo::QueryExecutor::~QueryExecutor
virtual ~QueryExecutor()=default
resdb::utxo::Transaction
Definition
transaction.h:31
resdb::utxo::UTXOExecutor
Definition
utxo_executor.h:32
resdb::utxo::UTXOExecutor::ExecuteData
std::unique_ptr< std::string > ExecuteData(const std::string &request) override
Definition
utxo_executor.cpp:35
resdb::utxo::UTXOExecutor::~UTXOExecutor
~UTXOExecutor()
Definition
utxo_executor.cpp:33
resdb::utxo::Wallet
Definition
wallet.h:27
custom_query.h
resdb
Definition
chain_state.cpp:24
resdb_config_utils.h
transaction.h
transaction_manager.h
wallet.h
executor
utxo
executor
utxo_executor.h
Generated by
1.9.8