rippled
Loading...
Searching...
No Matches
AbstractClient.h
1#ifndef XRPL_TEST_ABSTRACTCLIENT_H_INCLUDED
2#define XRPL_TEST_ABSTRACTCLIENT_H_INCLUDED
3
4#include <xrpl/json/json_value.h>
5
6namespace ripple {
7namespace test {
8
9/* Abstract Ripple Client interface.
10
11 This abstracts the transport layer, allowing
12 commands to be submitted to a rippled server.
13*/
15{
16public:
17 virtual ~AbstractClient() = default;
18 AbstractClient() = default;
21 operator=(AbstractClient const&) = delete;
22
34 virtual Json::Value
35 invoke(std::string const& cmd, Json::Value const& params = {}) = 0;
36
38 virtual unsigned
39 version() const = 0;
40};
41
42} // namespace test
43} // namespace ripple
44
45#endif
Represents a JSON value.
Definition json_value.h:130
AbstractClient(AbstractClient const &)=delete
virtual unsigned version() const =0
Get RPC 1.0 or RPC 2.0.
virtual ~AbstractClient()=default
virtual Json::Value invoke(std::string const &cmd, Json::Value const &params={})=0
Submit a command synchronously.
AbstractClient & operator=(AbstractClient const &)=delete
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Definition algorithm.h:6