rippled
Loading...
Searching...
No Matches
SetOracle.h
1//------------------------------------------------------------------------------
2/*
3 This file is part of rippled: https://github.com/ripple/rippled
4 Copyright (c) 2023 Ripple Labs Inc.
5
6 Permission to use, copy, modify, and/or distribute this software for any
7 purpose with or without fee is hereby granted, provided that the above
8 copyright notice and this permission notice appear in all copies.
9
10 THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11 WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12 MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13 ANY SPECIAL , DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16 OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17*/
18//==============================================================================
19
20#ifndef RIPPLE_TX_SETORACLE_H_INCLUDED
21#define RIPPLE_TX_SETORACLE_H_INCLUDED
22
23#include <xrpld/app/tx/detail/Transactor.h>
24
25namespace ripple {
26
36class SetOracle : public Transactor
37{
38public:
40
41 explicit SetOracle(ApplyContext& ctx) : Transactor(ctx)
42 {
43 }
44
45 static NotTEC
46 preflight(PreflightContext const& ctx);
47
48 static TER
49 preclaim(PreclaimContext const& ctx);
50
51 TER
52 doApply() override;
53};
54
56
57} // namespace ripple
58
59#endif // RIPPLE_TX_SETORACLE_H_INCLUDED
State information when applying a tx.
Price Oracle is a system that acts as a bridge between a blockchain network and the external world,...
Definition SetOracle.h:37
static NotTEC preflight(PreflightContext const &ctx)
Definition SetOracle.cpp:40
SetOracle(ApplyContext &ctx)
Definition SetOracle.h:41
TER doApply() override
static TER preclaim(PreclaimContext const &ctx)
Definition SetOracle.cpp:62
static constexpr ConsequencesFactoryType ConsequencesFactory
Definition SetOracle.h:39
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Definition algorithm.h:25
State information when determining if a tx is likely to claim a fee.
Definition Transactor.h:80
State information when preflighting a tx.
Definition Transactor.h:35