31 const std::shared_ptr<SessionContext>& s,
80 const std::string& code,
82 const std::vector<nlohmann::json>& details = {})
override
102 body.dump(-1,
' ',
false, nlohmann::json::error_handler_t::replace);
106 ccf::http::headers::CONTENT_TYPE,
107 http::headervalues::contenttype::JSON);
Definition claims_digest.h:10
void set(Digest &&digest_)
Definition claims_digest.h:21
Definition rpc_context_impl.h:22
void * get_user_data() const override
Definition rpc_context_impl.h:48
virtual const std::vector< uint8_t > & get_serialised_request()=0
ccf::PathParams decoded_path_params
Definition rpc_context_impl.h:67
std::optional< RespondOnCommitInfo > respond_on_commit
Definition rpc_context_impl.h:130
HttpVersion get_http_version() const
Definition rpc_context_impl.h:73
RpcContextImpl(const std::shared_ptr< SessionContext > &s, HttpVersion v=HttpVersion::HTTP1)
Definition rpc_context_impl.h:30
void set_response_json(const nlohmann::json &body, ccf::http_status status) override
Definition rpc_context_impl.h:96
bool response_is_pending
Definition rpc_context_impl.h:119
virtual std::vector< uint8_t > serialise_response() const =0
virtual bool should_apply_writes() const =0
bool terminate_session
Definition rpc_context_impl.h:120
void set_claims_digest(ccf::ClaimsDigest::Digest &&digest) override
Definition rpc_context_impl.h:55
void set_error(ccf::ErrorDetails &&error) override
Construct error response, formatted as JSON OData.
Definition rpc_context_impl.h:89
void set_error(ccf::http_status status, const std::string &code, std::string &&msg, const std::vector< nlohmann::json > &details={}) override
Construct error response, formatted as JSON OData.
Definition rpc_context_impl.h:78
const ccf::PathParams & get_request_path_params() override
Definition rpc_context_impl.h:62
std::shared_ptr< void > user_data
Definition rpc_context_impl.h:27
void set_user_data(std::shared_ptr< void > data) override
Definition rpc_context_impl.h:43
HttpVersion http_version
Definition rpc_context_impl.h:25
virtual void reset_response()=0
ccf::PathParams path_params
Definition rpc_context_impl.h:61
const ccf::PathParams & get_decoded_request_path_params() override
Definition rpc_context_impl.h:68
std::shared_ptr< SessionContext > session
Definition rpc_context_impl.h:24
std::shared_ptr< SessionContext > get_session_context() const override
Definition rpc_context_impl.h:37
ccf::ClaimsDigest claims
Definition rpc_context_impl.h:53
ccf::endpoints::ConsensusCommittedEndpointFunction consensus_committed_func
Definition rpc_context_impl.h:111
void set_consensus_committed_function(ccf::endpoints::ConsensusCommittedEndpointFunction func) override
Definition rpc_context_impl.h:113
Describes the currently executing RPC.
Definition rpc_context.h:58
Definition sha256_hash.h:16
virtual void set_response_status(int status)=0
Sets initial status code summarising result of RPC.
virtual void set_response_header(const std::string_view &name, const std::string_view &value)=0
virtual void set_response_body(const std::vector< uint8_t > &body)=0
Sets the main body or payload of the response.
std::function< void(CommittedTxInfo &info)> ConsensusCommittedEndpointFunction
Definition endpoint_context.h:82
Definition app_interface.h:13
std::map< std::string, std::string, std::less<> > PathParams
Definition rpc_context.h:54
llhttp_status http_status
Definition http_status.h:9
HttpVersion
Definition rpc_context_impl.h:12
@ error
Definition tls_session.h:23
Definition odata_error.h:58
Definition odata_error.h:50
Definition odata_error.h:37
Definition rpc_context_impl.h:123
std::string commit_evidence
Definition rpc_context_impl.h:127
ccf::endpoints::ConsensusCommittedEndpointFunction committed_func
Definition rpc_context_impl.h:125
ccf::TxID tx_id
Definition rpc_context_impl.h:124
ccf::crypto::Sha256Hash write_set_digest
Definition rpc_context_impl.h:126
ccf::ClaimsDigest claims_digest
Definition rpc_context_impl.h:128